version: '3.3'
services:
- nginx:
- image: nginx:1.17-alpine
- ports:
- - "8540:8540"
- - "8550:8550"
- - "8560:8560"
- 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:
- - lemmy-alpha
- - pictrs
- - lemmy-beta
- - lemmy-gamma
- - iframely
-
- 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:8540
+ - LEMMY_HOSTNAME=lemmy-alpha:8541
- LEMMY_DATABASE_URL=postgres://lemmy:password@postgres_alpha:5432/lemmy
- LEMMY_JWT_SECRET=changeme
- - LEMMY_FRONT_END_DIR=/app/dist
- LEMMY_FEDERATION__ENABLED=true
- LEMMY_FEDERATION__TLS_ENABLED=false
- - LEMMY_FEDERATION__ALLOWED_INSTANCES=lemmy-beta,lemmy-gamma
- - LEMMY_PORT=8540
+ - 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
+ ports:
+ - "8541:8541"
postgres_alpha:
image: postgres:12-alpine
environment:
lemmy-beta:
image: dessalines/lemmy:travis
environment:
- - LEMMY_HOSTNAME=lemmy-beta:8550
+ - LEMMY_HOSTNAME=lemmy-beta:8551
- LEMMY_DATABASE_URL=postgres://lemmy:password@postgres_beta:5432/lemmy
- LEMMY_JWT_SECRET=changeme
- - LEMMY_FRONT_END_DIR=/app/dist
- LEMMY_FEDERATION__ENABLED=true
- LEMMY_FEDERATION__TLS_ENABLED=false
- - LEMMY_FEDERATION__ALLOWED_INSTANCES=lemmy-alpha,lemmy-gamma
- - LEMMY_PORT=8550
+ - 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
+ ports:
+ - "8551:8551"
postgres_beta:
image: postgres:12-alpine
environment:
lemmy-gamma:
image: dessalines/lemmy:travis
environment:
- - LEMMY_HOSTNAME=lemmy-gamma:8560
+ - LEMMY_HOSTNAME=lemmy-gamma:8561
- LEMMY_DATABASE_URL=postgres://lemmy:password@postgres_gamma:5432/lemmy
- LEMMY_JWT_SECRET=changeme
- - LEMMY_FRONT_END_DIR=/app/dist
- LEMMY_FEDERATION__ENABLED=true
- LEMMY_FEDERATION__TLS_ENABLED=false
- - LEMMY_FEDERATION__ALLOWED_INSTANCES=lemmy-alpha,lemmy-beta
- - LEMMY_PORT=8560
+ - 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
+ ports:
+ - "8561:8561"
postgres_gamma:
image: postgres:12-alpine
environment:
volumes:
- ./volumes/postgres_gamma:/var/lib/postgresql/data
- iframely:
- image: dogbin/iframely:latest
+ # 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
+ ports:
+ - "8571:8571"
+ 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
+ ports:
+ - "8581:8581"
+ postgres_epsilon:
+ image: postgres:12-alpine
+ environment:
+ - POSTGRES_USER=lemmy
+ - POSTGRES_PASSWORD=password
+ - POSTGRES_DB=lemmy
volumes:
- - ../iframely.config.local.js:/iframely/config.local.js:ro
- restart: always
+ - ./volumes/postgres_epsilon:/var/lib/postgresql/data