version: '3' networks: development: test: volumes: db_data: gem_cache: shared_data: services: solo_customer_template_redis: image: redis:4.0-alpine command: redis-server networks: - development - test volumes: - shared_data:/var/shared/redis solo_customer_template_db: image: postgres:14.2-alpine container_name: solo_customer_template_db volumes: - db_data:/var/lib/postgresql/data - shared_data:/var/shared networks: - development - test environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: password ports: - 5099:5432 solo_customer_template_app: build: context: . dockerfile: Dockerfile.dev container_name: solo_customer_template_app volumes: - .:/var/app - shared_data:/var/shared - gem_cache:/usr/local/bundle/gems networks: - development ports: - 3000:3000 stdin_open: true tty: true env_file: .env.development entrypoint: dev-entrypoint.sh command: ['bin/dev'] environment: RAILS_ENV: development depends_on: - solo_customer_template_db solo_customer_template_test: image: solo_customer_template_solo_customer_template_app container_name: solo_customer_template_test volumes: - .:/var/app - shared_data:/var/shared - gem_cache:/usr/local/bundle/gems networks: - test ports: - 3001:3000 stdin_open: true tty: true env_file: .env.test entrypoint: test-entrypoint.sh command: ["rails", "-v"] environment: RAILS_ENV: test depends_on: - solo_customer_template_db