version: '3.3' services: nginx: image: nginx:1.17-alpine ports: - "8541:8541" - "8551:8551" - "8561:8561" - "8571:8571" - "8581:8581" volumes: # Hack to make this work from both docker/federation/ and docker/federation-test/ - ../federation/nginx.conf:/etc/nginx/nginx.conf restart: on-failure depends_on: - pictrs - iframely - lemmy-alpha - lemmy-beta - lemmy-gamma - lemmy-delta - lemmy-epsilon pictrs: restart: always image: asonix/pictrs:v0.1.13-r0 user: 991:991 volumes: - ./volumes/pictrs_alpha:/mnt lemmy-alpha: image: dessalines/lemmy:travis environment: - LEMMY_HOSTNAME=lemmy-alpha:8541 - LEMMY_DATABASE_URL=postgres://lemmy:password@postgres_alpha:5432/lemmy - LEMMY_JWT_SECRET=changeme - LEMMY_FEDERATION__ENABLED=true - LEMMY_FEDERATION__TLS_ENABLED=false - LEMMY_FEDERATION__ALLOWED_INSTANCES=lemmy-beta,lemmy-gamma,lemmy-delta,lemmy-epsilon - LEMMY_PORT=8541 - LEMMY_SETUP__ADMIN_USERNAME=lemmy_alpha - LEMMY_SETUP__ADMIN_PASSWORD=lemmy - LEMMY_SETUP__SITE_NAME=lemmy-alpha - LEMMY_RATE_LIMIT__POST=99999 - LEMMY_RATE_LIMIT__REGISTER=99999 - LEMMY_CAPTCHA__ENABLED=false - RUST_BACKTRACE=1 - RUST_LOG=debug depends_on: - postgres_alpha postgres_alpha: image: postgres:12-alpine environment: - POSTGRES_USER=lemmy - POSTGRES_PASSWORD=password - POSTGRES_DB=lemmy volumes: - ./volumes/postgres_alpha:/var/lib/postgresql/data lemmy-beta: image: dessalines/lemmy:travis environment: - LEMMY_HOSTNAME=lemmy-beta:8551 - LEMMY_DATABASE_URL=postgres://lemmy:password@postgres_beta:5432/lemmy - LEMMY_JWT_SECRET=changeme - LEMMY_FEDERATION__ENABLED=true - LEMMY_FEDERATION__TLS_ENABLED=false - LEMMY_FEDERATION__ALLOWED_INSTANCES=lemmy-alpha,lemmy-gamma,lemmy-delta,lemmy-epsilon - LEMMY_PORT=8551 - LEMMY_SETUP__ADMIN_USERNAME=lemmy_beta - LEMMY_SETUP__ADMIN_PASSWORD=lemmy - LEMMY_SETUP__SITE_NAME=lemmy-beta - LEMMY_RATE_LIMIT__POST=99999 - LEMMY_RATE_LIMIT__REGISTER=99999 - LEMMY_CAPTCHA__ENABLED=false - RUST_BACKTRACE=1 - RUST_LOG=debug depends_on: - postgres_beta postgres_beta: image: postgres:12-alpine environment: - POSTGRES_USER=lemmy - POSTGRES_PASSWORD=password - POSTGRES_DB=lemmy volumes: - ./volumes/postgres_beta:/var/lib/postgresql/data lemmy-gamma: image: dessalines/lemmy:travis environment: - LEMMY_HOSTNAME=lemmy-gamma:8561 - LEMMY_DATABASE_URL=postgres://lemmy:password@postgres_gamma:5432/lemmy - LEMMY_JWT_SECRET=changeme - LEMMY_FEDERATION__ENABLED=true - LEMMY_FEDERATION__TLS_ENABLED=false - LEMMY_FEDERATION__ALLOWED_INSTANCES=lemmy-alpha,lemmy-beta,lemmy-delta,lemmy-epsilon - LEMMY_PORT=8561 - LEMMY_SETUP__ADMIN_USERNAME=lemmy_gamma - LEMMY_SETUP__ADMIN_PASSWORD=lemmy - LEMMY_SETUP__SITE_NAME=lemmy-gamma - LEMMY_RATE_LIMIT__POST=99999 - LEMMY_RATE_LIMIT__REGISTER=99999 - LEMMY_CAPTCHA__ENABLED=false - RUST_BACKTRACE=1 - RUST_LOG=debug depends_on: - postgres_gamma postgres_gamma: image: postgres:12-alpine environment: - POSTGRES_USER=lemmy - POSTGRES_PASSWORD=password - POSTGRES_DB=lemmy volumes: - ./volumes/postgres_gamma:/var/lib/postgresql/data # An instance with only an allowlist for beta lemmy-delta: image: dessalines/lemmy:travis environment: - LEMMY_HOSTNAME=lemmy-delta:8571 - LEMMY_DATABASE_URL=postgres://lemmy:password@postgres_delta:5432/lemmy - LEMMY_JWT_SECRET=changeme - LEMMY_FEDERATION__ENABLED=true - LEMMY_FEDERATION__TLS_ENABLED=false - LEMMY_FEDERATION__ALLOWED_INSTANCES=lemmy-beta - LEMMY_PORT=8571 - LEMMY_SETUP__ADMIN_USERNAME=lemmy_delta - LEMMY_SETUP__ADMIN_PASSWORD=lemmy - LEMMY_SETUP__SITE_NAME=lemmy-delta - LEMMY_RATE_LIMIT__POST=99999 - LEMMY_RATE_LIMIT__REGISTER=99999 - LEMMY_CAPTCHA__ENABLED=false - RUST_BACKTRACE=1 - RUST_LOG=debug depends_on: - postgres_delta postgres_delta: image: postgres:12-alpine environment: - POSTGRES_USER=lemmy - POSTGRES_PASSWORD=password - POSTGRES_DB=lemmy volumes: - ./volumes/postgres_delta:/var/lib/postgresql/data # An instance who has a blocklist, with lemmy-alpha blocked lemmy-epsilon: image: dessalines/lemmy:travis environment: - LEMMY_HOSTNAME=lemmy-epsilon:8581 - LEMMY_DATABASE_URL=postgres://lemmy:password@postgres_epsilon:5432/lemmy - LEMMY_JWT_SECRET=changeme - LEMMY_FEDERATION__ENABLED=true - LEMMY_FEDERATION__TLS_ENABLED=false - LEMMY_FEDERATION__BLOCKED_INSTANCES=lemmy-alpha - LEMMY_PORT=8581 - LEMMY_SETUP__ADMIN_USERNAME=lemmy_epsilon - LEMMY_SETUP__ADMIN_PASSWORD=lemmy - LEMMY_SETUP__SITE_NAME=lemmy-epsilon - LEMMY_RATE_LIMIT__POST=99999 - LEMMY_RATE_LIMIT__REGISTER=99999 - LEMMY_CAPTCHA__ENABLED=false - RUST_BACKTRACE=1 - RUST_LOG=debug depends_on: - postgres_epsilon postgres_epsilon: image: postgres:12-alpine environment: - POSTGRES_USER=lemmy - POSTGRES_PASSWORD=password - POSTGRES_DB=lemmy volumes: - ./volumes/postgres_epsilon:/var/lib/postgresql/data iframely: image: dogbin/iframely:latest volumes: - ../iframely.config.local.js:/iframely/config.local.js:ro restart: always