1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- services:
- app:
- working_dir: /workspaces/mastodon/
- build:
- context: ..
- dockerfile: .devcontainer/Dockerfile
- volumes:
- - ..:/workspaces/mastodon:cached
- environment:
- RAILS_ENV: development
- NODE_ENV: development
- BIND: 0.0.0.0
- REDIS_HOST: redis
- REDIS_PORT: '6379'
- DB_HOST: db
- DB_USER: postgres
- DB_PASS: postgres
- DB_PORT: '5432'
- ES_ENABLED: 'true'
- ES_HOST: es
- ES_PORT: '9200'
- LIBRE_TRANSLATE_ENDPOINT: http://libretranslate:5000
- # Overrides default command so things don't shut down after the process ends.
- command: sleep infinity
- ports:
- - '127.0.0.1:3000:3000'
- - '127.0.0.1:3035:3035'
- - '127.0.0.1:4000:4000'
- networks:
- - external_network
- - internal_network
- db:
- image: postgres:14-alpine
- restart: unless-stopped
- volumes:
- - postgres-data:/var/lib/postgresql/data
- environment:
- POSTGRES_USER: postgres
- POSTGRES_DB: postgres
- POSTGRES_PASSWORD: postgres
- POSTGRES_HOST_AUTH_METHOD: trust
- networks:
- - internal_network
- redis:
- image: redis:7-alpine
- restart: unless-stopped
- volumes:
- - redis-data:/data
- networks:
- - internal_network
- es:
- image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2
- restart: unless-stopped
- environment:
- ES_JAVA_OPTS: -Xms512m -Xmx512m
- cluster.name: es-mastodon
- discovery.type: single-node
- bootstrap.memory_lock: 'true'
- volumes:
- - es-data:/usr/share/elasticsearch/data
- networks:
- - internal_network
- ulimits:
- memlock:
- soft: -1
- hard: -1
- libretranslate:
- image: libretranslate/libretranslate:v1.6.2
- restart: unless-stopped
- volumes:
- - lt-data:/home/libretranslate/.local
- networks:
- - external_network
- - internal_network
- volumes:
- postgres-data:
- redis-data:
- es-data:
- lt-data:
- networks:
- external_network:
- internal_network:
- internal: true
|