Skip to content

Instantly share code, notes, and snippets.

@biske
Created December 1, 2020 11:48
Show Gist options
  • Save biske/1dedec6d503a1deb38f2ab412c3e3f71 to your computer and use it in GitHub Desktop.
Save biske/1dedec6d503a1deb38f2ab412c3e3f71 to your computer and use it in GitHub Desktop.
version: '3.7'
services:
db:
image: postgres:10.1-alpine
environment:
POSTGRES_USER: 'postgres'
POSTGRES_PASSWORD: 'postgres'
volumes:
- pg_data:/var/lib/postgresql/data
ports:
- "5431:5432"
networks:
- database
api:
build: .
ports:
- "3000:3000"
depends_on:
- db
- elasticsearch
- redis
volumes:
- .:/usr/src/app
command: sh -c "rm -f tmp/pids/server.pid && bin/rails s -p 3000 -b '0.0.0.0'"
environment:
RAILS_ENV: development
REDIS_URL: 'redis://redis:6379/0'
URL_HOST: 'localhost:3000'
ELASTICSEARCH_URL: 'elasticsearch'
TWILIO_ACCOUNT_SID: ''
TWILIO_AUTH_TOKEN: ''
TWILIO_PHONE_NUMBER: ''
GOOGLE_API_KEY: ''
UI_ORIGIN: 'http://localhost:8080'
UNSPLASH_ACCESS_KEY: ''
UNSPLASH_SECRET_KEY: ''
DEFAULT_TRIPS_IMAGE_URL: 'https://source.unsplash.com/1600x900/?trip'
networks:
- database
- elasticsearch
- redis
stdin_open: true
tty: true
sidekiq:
build: .
depends_on:
- redis
- db
- elasticsearch
volumes:
- .:/usr/src/app
command: sh -c "bundle exec sidekiq --queue elasticsearch --verbose"
environment:
RAILS_ENV: development
REDIS_URL: 'redis://redis:6379/0'
ELASTICSEARCH_URL: 'elasticsearch'
TWILIO_ACCOUNT_SID: ''
TWILIO_AUTH_TOKEN: ''
TWILIO_PHONE_NUMBER: ''
GOOGLE_API_KEY: 'GOOGLE_API_KEY'
UI_ORIGIN: 'http://localhost:8080'
networks:
- database
- elasticsearch
- redis
redis:
image: redis:6.0.3-alpine
ports:
- "6379:6379" # TODO: Check if exposing container port only works
volumes:
- redis_data:/var/lib/redis
networks:
- redis
kibana:
image: kibana:7.7.0
ports:
- 5601:5601
environment:
SERVER_NAME: kibana
ELASTICSEARCH_HOSTS: http://elasticsearch:9200
networks:
- elasticsearch
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.7.0
environment:
- discovery.type=single-node
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- elasticsearch_data:/usr/share/elasticsearch/data
ports:
- 9200:9200
networks:
- elasticsearch
volumes:
pg_data:
redis_data:
elasticsearch_data:
networks:
elasticsearch:
database:
redis:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment