From 2af7ff3ebeca8924f05d3973a0e4ec1ef54b3e22 Mon Sep 17 00:00:00 2001 From: 3wc <3wc.git@doesthisthing.work> Date: Tue, 2 Mar 2021 18:35:33 +0200 Subject: [PATCH] Initial config --- .env.sample | 3 +++ compose.yml | 56 +++++++++++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 55 insertions(+), 4 deletions(-) diff --git a/.env.sample b/.env.sample index e6adb50..24c3d81 100644 --- a/.env.sample +++ b/.env.sample @@ -4,3 +4,6 @@ DOMAIN=projectsend.example.com ## Domain aliases #EXTRA_DOMAINS=', `www.projectsend.example.com`' LETS_ENCRYPT_ENV=production + +SECRET_DB_PASSWORD_VERSION=v1 +SECRET_DB_ROOT_PASSWORD_VERSION=v1 diff --git a/compose.yml b/compose.yml index 662a96c..aafe52a 100644 --- a/compose.yml +++ b/compose.yml @@ -3,9 +3,26 @@ version: "3.8" services: app: - image: nginx:1.19.2 + #image: terrestris/projectsend:r1295 + image: linuxserver/projectsend:version-r1070 networks: - proxy + - internal + #secrets: + # - db_password + environment: + - TZ=Europe/London + - MAX_UPLOAD=5000 + - MAX_FILESIZE=5000 + #- DB_DRIVER=mysql + #- DB_HOST=db:3306 + #- DB_NAME=projectsend + #- DB_USER=projectsend + #- DB_PASSWORD_FILE=/run/secrets/db_password + #- SITE_LANG=English + volumes: + - projectsend_data:/data + - projectsend_config:/config deploy: restart_policy: condition: on-failure @@ -16,9 +33,9 @@ services: - "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure" - "traefik.http.routers.${STACK_NAME}.tls.certresolver=${LETS_ENCRYPT_ENV}" ## Redirect from EXTRA_DOMAINS to DOMAIN - #- "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect" - #- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLForceHost=true" - #- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLHost=${DOMAIN}" + - "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect" + - "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLForceHost=true" + - "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLHost=${DOMAIN}" healthcheck: test: ["CMD", "curl", "-f", "http://localhost"] interval: 30s @@ -26,6 +43,37 @@ services: retries: 10 start_period: 1m + db: + image: "mariadb:10.5" + command: | + mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci + environment: + - MYSQL_DATABASE=projectsend + - MYSQL_USER=projectsend + - MYSQL_PASSWORD_FILE=/run/secrets/db_password + - MYSQL_ROOT_PASSWORD_FILE=/run/secrets/db_root_password + secrets: + - db_password + - db_root_password + volumes: + - "mariadb:/var/lib/mysql" + networks: + - internal + networks: + internal: proxy: external: true + +secrets: + db_password: + name: ${STACK_NAME}_db_password_${SECRET_DB_PASSWORD_VERSION} + external: true + db_root_password: + name: ${STACK_NAME}_db_root_password_${SECRET_DB_ROOT_PASSWORD_VERSION} + external: true + +volumes: + mariadb: + projectsend_data: + projectsend_config: