databasus for backup, fix mam login issues

This commit is contained in:
2026-01-12 19:26:39 +01:00
parent b71bdcaad6
commit 53070e9667
5 changed files with 40 additions and 11 deletions

View File

@@ -7,6 +7,7 @@
include: include:
- path: - path:
- ${DB_PATH}/adminer/adminer.yml - ${DB_PATH}/adminer/adminer.yml
- ${DB_PATH}/databasus/databasus.yml
- ${DB_PATH}/lldap/lldap.yml - ${DB_PATH}/lldap/lldap.yml
- ${DB_PATH}/mariadb/mariadb.yml - ${DB_PATH}/mariadb/mariadb.yml
- ${DB_PATH}/postgres/postgres.yml - ${DB_PATH}/postgres/postgres.yml

View File

@@ -0,0 +1,19 @@
services:
databasus:
extends:
file: ${TEMPLATES_PATH}
service: default
image: databasus/databasus:v2.21.5
container_name: databasus
ports:
- 8086:4005
networks:
- ip4net
volumes:
- ${DB_PATH}/databasus/data:/databasus-data
labels:
# Traefik
- "traefik.enable=true"
- "traefik.http.routers.databasus.rule=Host(`databasus.${LOCAL_DOMAIN}`)"
- "traefik.http.routers.databasus.entrypoints=https"
- "traefik.http.routers.databasus.tls=true"

View File

@@ -9,7 +9,11 @@ COPY --from=alpine:3.23 /usr/lib/libapk.so* /usr/lib/
USER root USER root
# Install Chromium and necessary dependencies for Puppeteer # Install Chromium and necessary dependencies for Puppeteer
RUN apk add --no-cache \ RUN set -x \
&& apk update \
&& apk upgrade \
&& apk add --no-cache \
udev \
chromium \ chromium \
nss \ nss \
freetype \ freetype \
@@ -23,6 +27,10 @@ RUN apk add --no-cache \
# Set environment variable for Puppeteer to find Chromium # Set environment variable for Puppeteer to find Chromium
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
ENV XDG_CONFIG_HOME=/tmp/.chromium
ENV XDG_CACHE_HOME=/tmp/.chromium
# Install Puppeteer
RUN npm install puppeteer RUN npm install puppeteer
# Install restic and rclone for backups # Install restic and rclone for backups

View File

@@ -28,7 +28,7 @@ services:
- ${SERVICE_PATH}/n8n/data:/home/node/.n8n - ${SERVICE_PATH}/n8n/data:/home/node/.n8n
- ${SERVICE_PATH}/n8n/data/rclone.conf:/home/node/.config/rclone/rclone.conf - ${SERVICE_PATH}/n8n/data/rclone.conf:/home/node/.config/rclone/rclone.conf
- ${PWD}/scripts:/home/node/.n8n/external-scripts - ${PWD}/scripts:/home/node/.n8n/external-scripts
- ${DB_PATH}/postgres/data/backup:/home/node/.n8n/database - ${DB_PATH}/databasus/data/backup:/home/node/.n8n/database
- ${EXTERNAL_STORAGE}/:/home/node/.n8n/data - ${EXTERNAL_STORAGE}/:/home/node/.n8n/data
labels: labels:
# Traefik # Traefik

View File

@@ -3,8 +3,9 @@ const puppeteer = require('puppeteer');
async function loginToMAM(username, password) { async function loginToMAM(username, password) {
try { try {
const browser = await puppeteer.launch({ const browser = await puppeteer.launch({
executablePath: '/usr/bin/chromium-browser',
headless: true, headless: true,
args: ['--no-sandbox', '--disable-setuid-sandbox'] args: ['--no-sandbox', '--disable-setuid-sandbox', '--disable-gpu', 'diable-dev-shm-usage']
}); });
const page = await browser.newPage(); const page = await browser.newPage();
@@ -42,5 +43,5 @@ const username = process.env.MAM_USERNAME;
const password = process.env.MAM_PASSWORD; const password = process.env.MAM_PASSWORD;
loginToMAM(username, password) loginToMAM(username, password)
.then(cookies => ({ result: 'Success', cookies })) .then(cookies => ({ result: 'Success', cookies }))
.catch(err => ({ result: 'Error', error: err.message })); .catch(err => ({ result: 'Error', error: err.message }));