2/5 taken out of #1269 This patch adds the setup and teardown of Mastodon for use in the end-to-end tests Co-Authored-By: zam <mirco.zachmann@meissa.de> Co-Authored-By: erik <erik.seiert@meissa-gmbh.de> Co-Authored-By: Michael Jerger <michael.jerger@meissa-gmbh.de> Reviewed-on: https://code.forgejo.org/forgejo/end-to-end/pulls/1274 Reviewed-by: earl-warren <earl-warren@noreply.code.forgejo.org> Reviewed-by: Beowulf <beowulf@noreply.code.forgejo.org> Co-authored-by: famfo <famfo@famfo.xyz> Co-committed-by: famfo <famfo@famfo.xyz>
95 lines
3.3 KiB
YAML
95 lines
3.3 KiB
YAML
networks:
|
|
external_network:
|
|
internal_network:
|
|
internal: true
|
|
|
|
services:
|
|
forgejo:
|
|
image: code.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: code.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: code.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: code.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: code.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: code.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
|