1.1 KiB
Docker Compose notes
This integration is for an existing Mastodon deployment. It does not create a Mastodon stack and does not add a new long-running application container.
The host-side script calls commands equivalent to:
docker compose exec -T -e RAILS_ENV=production web bin/rails runner '...'
docker compose exec -T -e RAILS_ENV=production web bin/tootctl email-domain-blocks add ...
The official Mastodon Compose file uses a web service for the Rails application. Other distributions and custom Compose files may use a different service name; set --compose-service accordingly.
Before running the blocker, these two checks should succeed from the Compose directory:
docker compose exec -T web bin/rails runner 'puts EmailDomainBlock.count'
docker compose exec -T web bin/tootctl email-domain-blocks list --help
If the local deployment uses a wrapper, a different Compose project directory, or the old docker-compose binary, adjust --compose-dir and --compose-command. The Python program does not need access to the database container and should not be given database credentials.