forked from coop-cloud/mobilizon
chore: publish 0.1.0+4.1.0 release
This commit is contained in:
63
.env.sample
63
.env.sample
@ -6,7 +6,62 @@ DOMAIN=mobilizon.example.com
|
|||||||
#EXTRA_DOMAINS=', `www.{{ .Name }}.example.com`'
|
#EXTRA_DOMAINS=', `www.{{ .Name }}.example.com`'
|
||||||
LETS_ENCRYPT_ENV=production
|
LETS_ENCRYPT_ENV=production
|
||||||
|
|
||||||
# Instance configuration
|
COMPOSE_FILE="compose.yml"
|
||||||
MOBILIZON_INSTANCE_REGISTRATIONS_OPEN=false
|
|
||||||
MOBILIZON_INSTANCE_NAME="My Mobilizon Instance"
|
# –––––––––––––––– REQUIRED ––––––––––––––––
|
||||||
MOBILIZON_INSTANCE_HOST=mobilizon.lan
|
|
||||||
|
SECRET_DB_PASSWORD_VERSION=v1
|
||||||
|
SECRET_SMTP_PASSWORD_VERSION=v1
|
||||||
|
SECRET_SECRET_KEY_VERSION=v1 # length=64
|
||||||
|
SECRET_SECRET_KEY_BASE_VERSION=v1 # length=64
|
||||||
|
|
||||||
|
######################################################
|
||||||
|
# Instance configuration #
|
||||||
|
######################################################
|
||||||
|
|
||||||
|
# The name for your instance
|
||||||
|
MOBILIZON_INSTANCE_NAME=My Mobilizon Instance
|
||||||
|
|
||||||
|
# Whether registrations are opened or closed. Can be changed in the admin settings UI as well.
|
||||||
|
# Make sure to moderate actively your instance if registrations are opened.
|
||||||
|
MOBILIZON_INSTANCE_REGISTRATIONS_OPEN=true
|
||||||
|
|
||||||
|
# From which email will the emails be sent
|
||||||
|
MOBILIZON_INSTANCE_EMAIL=noreply@example.com
|
||||||
|
|
||||||
|
# To which email with the replies be sent
|
||||||
|
MOBILIZON_REPLY_EMAIL=noreply@example.com
|
||||||
|
|
||||||
|
# The loglevel setting.
|
||||||
|
# You can find accepted values here: https://hexdocs.pm/logger/Logger.html#module-levels
|
||||||
|
# Defaults to error
|
||||||
|
MOBILIZON_LOGLEVEL=error
|
||||||
|
|
||||||
|
######################################################
|
||||||
|
# Email settings #
|
||||||
|
######################################################
|
||||||
|
|
||||||
|
# The SMTP server
|
||||||
|
# Defaults to localhost
|
||||||
|
MOBILIZON_SMTP_SERVER=localhost
|
||||||
|
|
||||||
|
# The SMTP port
|
||||||
|
# Usual values: 25, 465, 587
|
||||||
|
# If using a local mail server, make sure the appropriate port is exposed in the docker-compose configuration as well
|
||||||
|
# Defaults to 25
|
||||||
|
MOBILIZON_SMTP_PORT=25
|
||||||
|
|
||||||
|
# The SMTP username
|
||||||
|
# Defaults to nil
|
||||||
|
MOBILIZON_SMTP_USERNAME=noreply@example.com
|
||||||
|
|
||||||
|
# Whether to use SSL for SMTP.
|
||||||
|
# Boolean
|
||||||
|
# Defaults to false
|
||||||
|
MOBILIZON_SMTP_SSL=false
|
||||||
|
|
||||||
|
# Whether to use TLS for SMTP.
|
||||||
|
# Allowed values: always (TLS), never (Clear) and if_available (STARTTLS)
|
||||||
|
# Make sure to match the port value as well
|
||||||
|
# Defaults to "if_available"
|
||||||
|
MOBILIZON_SMTP_TLS=if_available
|
||||||
|
70
compose.yml
70
compose.yml
@ -3,32 +3,44 @@ version: "3.8"
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
app:
|
app:
|
||||||
image: framasoft/mobilizon
|
image: framasoft/mobilizon:4.1.0
|
||||||
environment:
|
environment:
|
||||||
- MOBILIZON_INSTANCE_NAME
|
- MOBILIZON_INSTANCE_NAME
|
||||||
- MOBILIZON_INSTANCE_HOST=$DOMAIN
|
- MOBILIZON_INSTANCE_HOST=https://$DOMAIN
|
||||||
- MOBILIZON_INSTANCE_PORT=4000
|
- MOBILIZON_INSTANCE_LISTEN_IP
|
||||||
|
- MOBILIZON_INSTANCE_PORT
|
||||||
- MOBILIZON_INSTANCE_EMAIL
|
- MOBILIZON_INSTANCE_EMAIL
|
||||||
- MOBILIZON_INSTANCE_LISTEN_IP=0.0.0.0
|
|
||||||
- MOBILIZON_REPLY_EMAIL
|
- MOBILIZON_REPLY_EMAIL
|
||||||
- MOBILIZON_ADMIN_EMAIL
|
|
||||||
- MOBILIZON_INSTANCE_REGISTRATIONS_OPEN
|
- MOBILIZON_INSTANCE_REGISTRATIONS_OPEN
|
||||||
- MOBILIZON_DATABASE_USERNAME=mobilizon
|
- MOBILIZON_DATABASE_USERNAME=mobilizon
|
||||||
- MOBILIZON_DATABASE_PASSWORD=mobilizon
|
|
||||||
- MOBILIZON_DATABASE_DBNAME=mobilizon
|
- MOBILIZON_DATABASE_DBNAME=mobilizon
|
||||||
- MOBILIZON_DATABASE_HOST=db
|
- MOBILIZON_DATABASE_HOST=db
|
||||||
- MOBILIZON_INSTANCE_SECRET_KEY_BASE
|
- MOBILIZON_DATABASE_PORT
|
||||||
- MOBILIZON_INSTANCE_SECRET_KEY
|
- MOBILIZON_DATABASE_SSL
|
||||||
|
- MOBILIZON_LOGLEVEL
|
||||||
- MOBILIZON_SMTP_SERVER
|
- MOBILIZON_SMTP_SERVER
|
||||||
- MOBILIZON_SMTP_HOSTNAME
|
|
||||||
- MOBILIZON_SMTP_PORT
|
- MOBILIZON_SMTP_PORT
|
||||||
- MOBILIZON_SMTP_SSL
|
- MOBILIZON_SMTP_SSL
|
||||||
|
- MOBILIZON_SMTP_TLS
|
||||||
- MOBILIZON_SMTP_USERNAME
|
- MOBILIZON_SMTP_USERNAME
|
||||||
- MOBILIZON_SMTP_PASSWORD
|
- MOBILIZON_UPLOADS
|
||||||
|
- MOBILIZON_UPLOADS_EXPORTS
|
||||||
|
- MOBILIZON_TIMEZONES_DIR
|
||||||
|
- MOBILIZON_TZDATA_DIR
|
||||||
|
secrets:
|
||||||
|
- secret_key_base
|
||||||
|
- secret_key
|
||||||
|
- smtp_password
|
||||||
|
- db_password
|
||||||
volumes:
|
volumes:
|
||||||
- "uploads:/var/lib/mobilizon/uploads"
|
- "uploads:/var/lib/mobilizon/uploads"
|
||||||
# - ${PWD}/config.exs:/etc/mobilizon/config.exs:ro
|
# - ${PWD}/config.exs:/etc/mobilizon/config.exs:ro
|
||||||
# - ${PWD}/GeoLite2-City.mmdb:/var/lib/mobilizon/geo_db/GeoLite2-City.mmdb
|
entrypoint: /custom-entrypoint.sh
|
||||||
|
# entrypoint: ["/bin/sh", "-c", "sleep 10000000000000000"]
|
||||||
|
configs:
|
||||||
|
- source: app_entrypoint
|
||||||
|
target: /custom-entrypoint.sh
|
||||||
|
mode: 0555
|
||||||
networks:
|
networks:
|
||||||
- proxy
|
- proxy
|
||||||
- backend
|
- backend
|
||||||
@ -41,6 +53,7 @@ services:
|
|||||||
- "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`${EXTRA_DOMAINS})"
|
- "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`${EXTRA_DOMAINS})"
|
||||||
- "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure"
|
- "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure"
|
||||||
- "traefik.http.routers.${STACK_NAME}.tls.certresolver=${LETS_ENCRYPT_ENV}"
|
- "traefik.http.routers.${STACK_NAME}.tls.certresolver=${LETS_ENCRYPT_ENV}"
|
||||||
|
- "coop-cloud.${STACK_NAME}.version=0.1.0+4.1.0"
|
||||||
## Redirect from EXTRA_DOMAINS to DOMAIN
|
## Redirect from EXTRA_DOMAINS to DOMAIN
|
||||||
#- "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect"
|
#- "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.SSLForceHost=true"
|
||||||
@ -53,15 +66,22 @@ services:
|
|||||||
# start_period: 1m
|
# start_period: 1m
|
||||||
|
|
||||||
db:
|
db:
|
||||||
|
deploy:
|
||||||
|
labels:
|
||||||
|
backupbot.backup: "true"
|
||||||
|
backupbot.backup.pre-hook: "PGPASSWORD=$$(cat /run/secrets/db_password) pg_dump -U postgres $${POSTGRES_DB} > /var/lib/postgresql/data/backup.sql"
|
||||||
|
backupbot.backup.post-hook: "rm -rf /var/lib/postgresql/data/backup.sql"
|
||||||
networks:
|
networks:
|
||||||
- backend
|
- backend
|
||||||
image: postgis/postgis:13-3.1
|
secrets:
|
||||||
|
- db_password
|
||||||
|
image: postgis/postgis:15-3.4
|
||||||
volumes:
|
volumes:
|
||||||
- "db:/var/lib/postgresql/data"
|
- "db:/var/lib/postgresql/data"
|
||||||
environment:
|
environment:
|
||||||
- POSTGRES_USER=mobilizon
|
POSTGRES_DB: mobilizon
|
||||||
- POSTGRES_PASSWORD=mobilizon
|
POSTGRES_USER: mobilizon
|
||||||
- POSTGRES_DB=mobilizon
|
POSTGRES_PASSWORD_FILE: /run/secrets/db_password
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
uploads:
|
uploads:
|
||||||
@ -71,3 +91,23 @@ networks:
|
|||||||
proxy:
|
proxy:
|
||||||
external: true
|
external: true
|
||||||
backend:
|
backend:
|
||||||
|
|
||||||
|
secrets:
|
||||||
|
db_password:
|
||||||
|
external: true
|
||||||
|
name: ${STACK_NAME}_db_password_${SECRET_DB_PASSWORD_VERSION}
|
||||||
|
secret_key:
|
||||||
|
external: true
|
||||||
|
name: ${STACK_NAME}_secret_key_${SECRET_SECRET_KEY_VERSION}
|
||||||
|
secret_key_base:
|
||||||
|
external: true
|
||||||
|
name: ${STACK_NAME}_secret_key_base_${SECRET_SECRET_KEY_BASE_VERSION}
|
||||||
|
smtp_password:
|
||||||
|
external: true
|
||||||
|
name: ${STACK_NAME}_smtp_password_${SECRET_SMTP_PASSWORD_VERSION}
|
||||||
|
|
||||||
|
configs:
|
||||||
|
app_entrypoint:
|
||||||
|
name: ${STACK_NAME}_app_entrypoint_${APP_ENTRYPOINT_VERSION}
|
||||||
|
file: entrypoint.sh.tmpl
|
||||||
|
template_driver: golang
|
Reference in New Issue
Block a user