networks: external_network: internal_network: internal: true services: forgejo: image: data.forgejo.org/oci/alpine:latest volumes: - ./forgejo/certs/:/usr/local/share/ca-certificates/ - ./forgejo/init/:/init/ - ./forgejo/etc/lighttpd.conf:/etc/lighttpd.conf restart: unless-stopped entrypoint: "sh /init/init.sh" networks: - external_network - internal_network forgejo-app: profiles: - forgejo_container # built from https://code.forgejo.org/federation/build-mastodon/src/branch/main/debian-containerfile image: data.forgejo.org/federation/debian:trixie-cacerts tmpfs: - /data volumes: - ./forgejo-app/init/:/init/ - ./forgejo-app/config/:/config/ - ./resources/certs/:/usr/local/share/ca-certificates/ - "${FORGEJO_PATH}:/usr/local/bin/forgejo" ports: - 3003:3003 entrypoint: "sh /init/init.sh" networks: - external_network - internal_network postgres: image: data.forgejo.org/oci/postgres:14 tmpfs: - /var/lib/postgresql/data environment: POSTGRES_USER: postgres POSTGRES_DB: postgres POSTGRES_PASSWORD: postgres POSTGRES_HOST_AUTH_METHOD: trust networks: - internal_network redis: image: data.forgejo.org/oci/redis:7.2 tmpfs: - /var/lib/redis/ networks: - internal_network mastodon-app: # built from https://code.forgejo.org/federation/build-mastodon/src/branch/main/mastodon-containerfile image: data.forgejo.org/federation/mastodon:v4.5-test volumes: - ./resources/certs:/usr/local/share/ca-certificates/ - ./mastodon-app/init/:/init/ environment: &mastodon_env DB_HOST: postgres DB_USER: postgres DB_PASS: postgres REDIS_HOST: redis PORT: 4000 LOCAL_DOMAIN: ${MASTODON_HOST}:4000 ALTERNATE_DOMAINS: ${MASTODON_HOST},localhost EMAIL_DOMAIN_ALLOWLIST: localhost AUTHORIZED_FETCH: "true" ALLOWED_PRIVATE_ADDRESSES: 0.0.0.0/0,::/0 SECRET_KEY_BASE: bc1bdb4d3d57a2c292a8f145d5d3c921 ACTIVE_RECORD_ENCRYPTION_DETERMINISTIC_KEY: fkSxKD2bF396kdQbrP1EJ7WbU7ZgNokR ACTIVE_RECORD_ENCRYPTION_KEY_DERIVATION_SALT: r0hvVmzBVsjxC7AMlwhOzmtc36ZCOS1E ACTIVE_RECORD_ENCRYPTION_PRIMARY_KEY: PhdFyyfy5xJ7WVd2lWBpcPScRQHzRTNr ports: - "4000:4000" entrypoint: "sh /init/init.sh" networks: - external_network - internal_network mastodon-sidekiq: # built from https://code.forgejo.org/federation/build-mastodon/src/branch/main/mastodon-containerfile image: data.forgejo.org/federation/mastodon:v4.5-test volumes: - ./resources/certs:/usr/local/share/ca-certificates/ - ./mastodon-sidekiq/init/:/init/ restart: unless-stopped environment: *mastodon_env entrypoint: "sh /init/init.sh" networks: - internal_network