diff --git a/README.md b/README.md index b6bc26f..58db2e6 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,16 @@ -# discourse +# Discourse -${REPO_DESCRIPTION} +A platform for community discussion -* **Category**: +* **Category**: Apps * **Status**: -* **Image**: [`discourse`](https://hub.docker.com/r/discourse/discourse) -* **Healthcheck**: -* **Backups**: -* **Email**: -* **Tests**: -* **SSO**: +* **Image**: [`bitnami/discourse`](https://hub.docker.com/r/bitname/discourse) +* **Healthcheck**: yes +* **Backups**: no +* **Email**: yes +* **Tests**: no +* **SSO**: no ## Basic usage diff --git a/compose.smtpauth.yml b/compose.smtpauth.yml new file mode 100644 index 0000000..8b23f8d --- /dev/null +++ b/compose.smtpauth.yml @@ -0,0 +1,20 @@ +--- +version: "3.8" + +services: + app: + environment: + - DISCOURSE_SMTP_PASSWORD_FILE=/var/run/secrets/smtp_password + secrets: + - smtp_password + + sidekiq: + environment: + - DISCOURSE_SMTP_PASSWORD_FILE=/var/run/secrets/smtp_password + secrets: + - smtp_password + +secrets: + smtp_password: + external: true + name: ${STACK_NAME}_smtp_password_${SECRET_SMTP_PASSWORD_VERSION} diff --git a/compose.yml b/compose.yml index 4c71796..97939fb 100644 --- a/compose.yml +++ b/compose.yml @@ -14,10 +14,18 @@ services: - DISCOURSE_DATABASE_HOST=db - DISCOURSE_DATABASE_USER=discourse - DISCOURSE_DATABASE_NAME=discourse + - DISCOURSE_DATABASE_PASSWORD_FILE=/run/secrets/db_password - DISCOURSE_REDIS_HOST=redis - DISCOURSE_REDIS_PORT_NUMBER=6379 + - DISCOURSE_SMTP_HOST + - DISCOURSE_SMTP_PORT + - DISCOURSE_SMTP_USER + - DISCOURSE_SMTP_PROTOCOL + - DISCOURSE_SMTP_AUTH volumes: - 'discourse_data:/bitnami/discourse' + secrets: + - db_password depends_on: - db - redis @@ -34,23 +42,26 @@ services: #- "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 - # timeout: 10s - # retries: 10 - # start_period: 1m + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:3000"] + interval: 30s + timeout: 10s + retries: 10 + start_period: 1m db: image: postgres:11-alpine networks: - internal + secrets: + - db_password volumes: - 'postgresql_data:/var/lib/postgresql/data' environment: - POSTGRES_HOST_AUTH_METHOD=trust - POSTGRES_USER=discourse - POSTGRES_DB=discourse + - POSTGRES_PASSWORD_FILE=/run/secrets/db_password redis: image: redis:6.0-alpine @@ -68,6 +79,8 @@ services: volumes: - 'sidekiq_data:/bitnami/discourse' command: /opt/bitnami/scripts/discourse-sidekiq/run.sh + secrets: + - db_password environment: - ALLOW_EMPTY_PASSWORD=yes - DISCOURSE_HOST=${DOMAIN} @@ -77,6 +90,17 @@ services: - DISCOURSE_DATABASE_NAME=discourse - DISCOURSE_REDIS_HOST=redis - DISCOURSE_REDIS_PORT_NUMBER=6379 + - DISCOURSE_DATABASE_PASSWORD_FILE=/run/secrets/db_password + - DISCOURSE_SMTP_HOST + - DISCOURSE_SMTP_PORT + - DISCOURSE_SMTP_USER + - DISCOURSE_SMTP_PROTOCOL + - DISCOURSE_SMTP_AUTH + +secrets: + db_password: + external: true + name: ${STACK_NAME}_db_password_${SECRET_DB_PASSWORD_VERSION} volumes: postgresql_data: