databasus for backup, fix mam login issues
This commit is contained in:
@@ -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
|
||||||
|
|||||||
19
project/db/databasus/databasus.yml
Normal file
19
project/db/databasus/databasus.yml
Normal 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"
|
||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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 }));
|
||||||
|
|||||||
Reference in New Issue
Block a user