version: '3.4' services: app: build: context: . dockerfile: Dockerfile.dev depends_on: - database - redis - memcached volumes: - .:/app:delegated - gem_cache:/vendor/bundle/ruby/2.5.0/gems env_file: .env environment: RAILS_ENV: development entrypoint: ./script/docker-entrypoint.sh networks: - app-network database: image: postgres:11 environment: POSTGRES_USER: $HACKTOBERFEST_DATABASE_USERNAME POSTGRES_PASSWORD: $HACKTOBERFEST_DATABASE_PASSWORD volumes: - db_data:/var/lib/postgresql/data ports: - "5432:5432" # enables access for RubyMine networks: - app-network redis: image: redis:5.0 volumes: - ./config/redis/redis.conf:/usr/local/etc/redis/redis.conf networks: - app-network command: ["redis-server", "/usr/local/etc/redis/redis.conf"] sidekiq: image: hacktoberfest_app depends_on: - app volumes: - gem_cache:/usr/local/bundle/gems env_file: .env environment: RAILS_ENV: development networks: - app-network entrypoint: ./script/sidekiq-entrypoint.sh webserver: build: context: . dockerfile: Dockerfile-nginx-dev ports: - "80:80" depends_on: - app networks: - app-network memcached: image: memcached:1.6.6-alpine networks: - app-network volumes: db_data: gem_cache: networks: app-network: driver: bridge