services: web: # we use our own synth-soc fork image: ghcr.io/melontini/mastodon:nightly restart: always env_file: - .env.secrets - .env command: bundle exec puma -C config/puma.rb networks: - masto - ip6net - db healthcheck: test: ['CMD-SHELL',"curl -s --noproxy localhost localhost:3000/health | grep -q 'OK' || exit 1"] ports: - "127.0.0.1:46098:3000" depends_on: redis: condition: service_healthy volumes: - ./public/system:/mastodon/public/system streaming: image: ghcr.io/melontini/mastodon-streaming:nightly restart: always env_file: - .env.secrets - .env command: node ./streaming/index.js networks: - masto - ip6net - db healthcheck: test: ['CMD-SHELL', "curl -s --noproxy localhost localhost:4000/api/v1/streaming/health | grep -q 'OK' || exit 1"] ports: - "127.0.0.1:58834:4000" depends_on: redis: condition: service_healthy sidekiq: image: ghcr.io/melontini/mastodon:nightly restart: always env_file: - .env.secrets - .env command: bundle exec sidekiq depends_on: redis: condition: service_healthy networks: - masto - ip6net - db volumes: - ./public/system:/mastodon/public/system healthcheck: test: ['CMD-SHELL', "ps aux | grep '[s]idekiq\ 7' || false"] redis: restart: always image: redis:alpine networks: - masto volumes: - ./redis:/data healthcheck: test: "redis-cli ping" interval: 5s retries: 20 # tor is a wip - consider setting up later ## Uncomment to enable federation with tor instances along with adding the following ENV variables ## http_hidden_proxy=http://privoxy:8118 ## ALLOW_ACCESS_TO_HIDDEN_SERVICE=true # tor: # image: sirboops/tor # networks: # - external_network # - internal_network # # privoxy: # image: sirboops/privoxy # volumes: # - ./priv-config:/opt/config # networks: # - external_network # - internal_network networks: db: name: postgres_db external: true ip6net: name: ip6net external: true masto: