commit 7463b506ccabd0dade2b5973038ac442a1728ec3 Author: 3wc <3wc@doesthisthing.work> Date: Thu Aug 19 17:56:58 2021 +0200 Initial import 📅 diff --git a/.env.sample b/.env.sample new file mode 100644 index 0000000..b3eca7b --- /dev/null +++ b/.env.sample @@ -0,0 +1,12 @@ +TYPE=mobilizon + +DOMAIN=mobilizon.example.com + +## Domain aliases +#EXTRA_DOMAINS=', `www.{{ .Name }}.example.com`' +LETS_ENCRYPT_ENV=production + +# Instance configuration +MOBILIZON_INSTANCE_REGISTRATIONS_OPEN=false +MOBILIZON_INSTANCE_NAME=My Mobilizon Instance +MOBILIZON_INSTANCE_HOST=mobilizon.lan diff --git a/compose.yml b/compose.yml new file mode 100644 index 0000000..c3b3f8a --- /dev/null +++ b/compose.yml @@ -0,0 +1,73 @@ +--- +version: "3.8" + +services: + app: + image: framasoft/mobilizon + environment: + - MOBILIZON_INSTANCE_NAME + - MOBILIZON_INSTANCE_HOST=$DOMAIN + - MOBILIZON_INSTANCE_PORT=4000 + - MOBILIZON_INSTANCE_EMAIL + - MOBILIZON_INSTANCE_LISTEN_IP=0.0.0.0 + - MOBILIZON_REPLY_EMAIL + - MOBILIZON_ADMIN_EMAIL + - MOBILIZON_INSTANCE_REGISTRATIONS_OPEN + - MOBILIZON_DATABASE_USERNAME=mobilizon + - MOBILIZON_DATABASE_PASSWORD=mobilizon + - MOBILIZON_DATABASE_DBNAME=mobilizon + - MOBILIZON_DATABASE_HOST=db + - MOBILIZON_INSTANCE_SECRET_KEY_BASE + - MOBILIZON_INSTANCE_SECRET_KEY + - MOBILIZON_SMTP_SERVER + - MOBILIZON_SMTP_HOSTNAME + - MOBILIZON_SMTP_PORT + - MOBILIZON_SMTP_SSL + - MOBILIZON_SMTP_USERNAME + - MOBILIZON_SMTP_PASSWORD + volumes: + - "uploads:/var/lib/mobilizon/uploads" + # - ${PWD}/config.exs:/etc/mobilizon/config.exs:ro + # - ${PWD}/GeoLite2-City.mmdb:/var/lib/mobilizon/geo_db/GeoLite2-City.mmdb + networks: + - proxy + - backend + deploy: + restart_policy: + condition: on-failure + labels: + - "traefik.enable=true" + - "traefik.http.services.${STACK_NAME}.loadbalancer.server.port=4000" + - "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`${EXTRA_DOMAINS})" + - "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}" + # healthcheck: + # test: ["CMD", "curl", "-f", "http://localhost"] + # interval: 30s + # timeout: 10s + # retries: 10 + # start_period: 1m + + db: + networks: + - backend + image: postgis/postgis:13-3.1 + volumes: + - "db:/var/lib/postgresql/data" + environment: + - POSTGRES_USER=mobilizon + - POSTGRES_PASSWORD=mobilizon + - POSTGRES_DB=mobilizon + +volumes: + uploads: + db: + +networks: + proxy: + external: true + backend: