version: '2' services: db: restart: always image: postgres:alpine ### Uncomment to enable DB persistance # volumes: # - ./postgres:/var/lib/postgresql/data redis: restart: always image: redis:alpine ### Uncomment to enable REDIS persistance # volumes: # - ./redis:/data app: build: . image: gargron/mastodon web: extends: service: app restart: always env_file: .env.production command: bundle exec rails s -p 3000 -b '0.0.0.0' ports: - "3000:3000" depends_on: - db - redis volumes: - ./public/assets:/mastodon/public/assets - ./public/packs:/mastodon/public/packs - ./public/system:/mastodon/public/system streaming: extends: service: app restart: always env_file: .env.production command: npm run start ports: - "4000:4000" depends_on: - db - redis sidekiq: extends: service: app restart: always env_file: .env.production command: bundle exec sidekiq -q default -q mailers -q pull -q push depends_on: - db - redis volumes: - ./public/system:/mastodon/public/system