forked from hexbear-collective/lemmy-hexbear
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
116 lines
3.1 KiB
116 lines
3.1 KiB
version: '3.3'
|
|
|
|
services:
|
|
hexbear-frontend:
|
|
image: registry.chapo.chat/hexbear-frontend:prod
|
|
container_name: lemmy-dev-fe
|
|
ports:
|
|
- "127.0.0.1:4444:4444"
|
|
environment:
|
|
- PG_CONN_URL=postgres://lemmy:${LEMMYPROD_POSTGRES_PW}@postgres-prod:5433/lemmy
|
|
depends_on:
|
|
- postgres
|
|
|
|
lemmy:
|
|
image: registry.chapo.chat/hexbear:prod-latest
|
|
container_name: lemmy-prod
|
|
ports:
|
|
- "127.0.0.1:8546:8546"
|
|
restart: always
|
|
environment:
|
|
- RUST_LOG=error
|
|
- ACTIX_THREADPOOL=256
|
|
- LEMMY_DATABASE__PASSWORD=${LEMMYPROD_POSTGRES_PW}
|
|
- LEMMY_DATABASE__HOST=postgres-prod
|
|
- LEMMY_DATABASE__PORT=5433
|
|
- LEMMY_DATABASE__POOL_SIZE=75
|
|
- LEMMY_HOSTNAME=${LEMMYPROD_LEMMY_HOSTNAME}
|
|
- LEMMY_PORT=8546
|
|
- LEMMY_EMAIL__SMTP_SERVER=mail.chapo.chat
|
|
- [email protected]
|
|
- [email protected]
|
|
- LEMMY_EMAIL__SMTP_PASSWORD=${LEMMYPROD_SMTP_PASSWORD}
|
|
- LEMMY_EMAIL__USE_TLS=true
|
|
- LEMMY_RATE_LIMIT__MESSAGE=60
|
|
- LEMMY_RATE_LIMIT__MESSAGE_PER_SECOND=30
|
|
- LEMMY_RATE_LIMIT__POST=12
|
|
- LEMMY_RATE_LIMIT__POST_PER_SECOND=600
|
|
- LEMMY_RATE_LIMIT__REGISTER=1
|
|
- LEMMY_RATE_LIMIT__REGISTER_PER_SECOND=30
|
|
- LEMMY_JWT_SECRET=${LEMMYPROD_JWT_SECRET}
|
|
- LEMMY_CAPTCHA__ENABLED=true
|
|
- LEMMY_CAPTCHA__PROVIDER=hcaptcha
|
|
- LEMMY_CAPTHCA__HCAPTCHA_SECRET_KEY=${LEMMYPROD_HCAPTCHA_SECRET_KEY}
|
|
- LEMMY_CAPTCHA__HCAPTCHA_SITE_KEY=${LEMMYPROD_HCAPTCHA_SITE_KEY}
|
|
volumes:
|
|
- ./lemmy.hjson:/config/config.hjson:ro
|
|
- frontend:/app/dist
|
|
depends_on:
|
|
- postgres
|
|
- pictrs
|
|
- iframely
|
|
- hexbear-frontend
|
|
|
|
|
|
|
|
postgres:
|
|
image: postgres:12-alpine
|
|
container_name: postgres-prod
|
|
environment:
|
|
- POSTGRES_USER=lemmy
|
|
- POSTGRES_PASSWORD=${LEMMYPROD_POSTGRES_PW}
|
|
- POSTGRES_DB=lemmy
|
|
ports:
|
|
- "127.0.0.1:5433:5433"
|
|
volumes:
|
|
- ./volumes/postgres:/var/lib/postgresql/data
|
|
command: -p 5433
|
|
restart: always
|
|
|
|
pictrs:
|
|
image: asonix/pictrs:v0.1.13-r0
|
|
container_name: pictrs-prod
|
|
user: 991:991
|
|
environment:
|
|
- PICTRS_FORMAT=jpg
|
|
- PICTRS_FILTER_WHITELIST=thumbnail
|
|
ports:
|
|
- "127.0.0.1:8547:8080"
|
|
volumes:
|
|
- ./volumes/pictrs:/mnt
|
|
restart: always
|
|
|
|
iframely:
|
|
image: jolt/iframely:v1.6.1
|
|
ports:
|
|
- "127.0.0.1:8062:80"
|
|
volumes:
|
|
- ./iframely.config.local.js:/iframely/config.local.js:ro
|
|
restart: always
|
|
|
|
purgebot:
|
|
image: registry.gitlab.com/chapo-sandbox/purgebot:latest-prod
|
|
container_name: purgebot-prod
|
|
restart: always
|
|
environment:
|
|
- POSTGRES_HOST=postgres-prod
|
|
- POSTGRES_PORT=5433
|
|
volumes:
|
|
- /opt/app/lemmy-prod/volumes/pictrs:/pictrs
|
|
secrets:
|
|
- discord_token
|
|
- cloudflare_token
|
|
- postgres_pw
|
|
depends_on:
|
|
- postgres
|
|
|
|
secrets:
|
|
discord_token:
|
|
file: /opt/app/lemmy-prod/secrets/discord_token.txt
|
|
cloudflare_token:
|
|
file: /opt/app/lemmy-prod/secrets/cloudflare_token.txt
|
|
postgres_pw:
|
|
file: /opt/app/lemmy-prod/secrets/postgres_pw
|
|
|
|
volumes:
|
|
frontend:
|