McFly
Décembre 14, 2023, 9:59
1
Bonjour à tous,
J’aimerais savoir si un de vous a un docker compose fonctionnel de Mastodon, car j’ai passé l’après midi complète et la soirée a essayer d’installer mon instance sans succès.
J’ai essayé avec le docker compose officiel et celui de linux server, mais rien n’y fait, ca ne veut pas marcher.
Pour l’un c’est le role postgress qui n’existe pas, et pour l’autre la commande pour generer le premier user ne marche pas erreur avec ruby.
Si besoin je pourrais partager les dockers compose demain.
Merci d’avance
Hello !
Tu trouveras peut-être ton bonheur ici :
1 « J'aime »
McFly
Décembre 15, 2023, 9:59
3
Merci je vais regarder ca.
Bonjour, as tu trouvé ?
J’ai cela sur ma propre installation
McFly
Décembre 19, 2023, 5:34
5
Bonsoir,
J’ai pas eu le temps de regarder encore eu le.temps de tester mais le.fixhier proposé au dessus semble etre identique a ce que j’essaie de lancer.
Mais faut que je regarde en détails
Merci en tout cas
1 « J'aime »
McFly
Décembre 19, 2023, 8:19
6
Bonsoir,
ben je viens d’essayer mais j’ai toujours le meme probleme.
La seul difference avec le mien est la ligne de commande du container web :
command: bundle exec puma -C config/puma.rb # Docker compose Officiel
command: bash -c "rm -f /mastodon/tmp/pids/server.pid; bundle exec rails s -p 3000" # Celui proposé
Les containerus Redis et Streaming sont OK.
Sur le containeur db :
2023-12-19 20:07:12.941 UTC [74] FATAL: role "postgres" does not exist
2023-12-19 20:07:42.660 UTC [76] FATAL: role "mastodon" does not exist
Les containeurs Web et Sidekis tournent en boucle
Voici mon compose
version: '3'
services:
db:
restart: always
image: postgres:14-alpine
shm_size: 256mb
networks:
- mastodon
healthcheck:
test: ['CMD', 'pg_isready', '-U', 'postgres']
volumes:
- ./postgres14:/var/lib/postgresql/data
environment:
- POSTGRES_DB=$DB_NAME
- POSTGRES_USER=$DB_USER
- POSTGRES_PASSWORD=$DB_PASS
redis:
restart: always
image: redis:7-alpine
networks:
- mastodon
healthcheck:
test: ['CMD', 'redis-cli', 'ping']
volumes:
- ./redis:/data
# es:
# restart: always
# image: docker.elastic.co/elasticsearch/elasticsearch:7.17.4
# environment:
# - "ES_JAVA_OPTS=-Xms512m -Xmx512m -Des.enforce.bootstrap.checks=true"
# - "xpack.license.self_generated.type=basic"
# - "xpack.security.enabled=false"
# - "xpack.watcher.enabled=false"
# - "xpack.graph.enabled=false"
# - "xpack.ml.enabled=false"
# - "bootstrap.memory_lock=true"
# - "cluster.name=es-mastodon"
# - "discovery.type=single-node"
# - "thread_pool.write.queue_size=1000"
# networks:
# - external_network
# - internal_network
# healthcheck:
# test: ["CMD-SHELL", "curl --silent --fail localhost:9200/_cluster/health || exit 1"]
# volumes:
# - ./elasticsearch:/usr/share/elasticsearch/data
# ulimits:
# memlock:
# soft: -1
# hard: -1
# nofile:
# soft: 65536
# hard: 65536
# ports:
# - '127.0.0.1:9200:9200'
web:
build: .
image: ghcr.io/mastodon/mastodon:v4.2.0
restart: always
env_file: .env.production
# command: bundle exec puma -C config/puma.rb
command: bash -c "rm -f /mastodon/tmp/pids/server.pid; bundle exec rails s -p 3000"
networks:
- npm
- mastodon
healthcheck:
# prettier-ignore
test: ['CMD-SHELL', 'wget -q --spider --proxy=off localhost:3000/health || exit 1']
# ports:
# - '127.0.0.1:3000:3000'
depends_on:
- db
- redis
# - es
volumes:
- ./public/system:/mastodon/public/system
streaming:
build: .
image: ghcr.io/mastodon/mastodon:v4.2.0
restart: always
env_file: .env.production
command: node ./streaming
networks:
- npm
- mastodon
healthcheck:
# prettier-ignore
test: ['CMD-SHELL', 'wget -q --spider --proxy=off localhost:4000/api/v1/streaming/health || exit 1']
# ports:
# - '127.0.0.1:4000:4000'
depends_on:
- db
- redis
sidekiq:
build: .
image: ghcr.io/mastodon/mastodon:v4.2.0
restart: always
env_file: .env.production
command: bundle exec sidekiq
depends_on:
- db
- redis
networks:
- npm
- mastodon
volumes:
- ./public/system:/mastodon/public/system
healthcheck:
test: ['CMD-SHELL', "ps aux | grep '[s]idekiq\ 6' || false"]
## 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:
npm:
name: npm
mastodon:
name: mastodon