docker-compose.yml 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. services:
  2. app:
  3. container_name: torqvoice
  4. build:
  5. context: ..
  6. dockerfile: .devcontainer/Dockerfile
  7. volumes:
  8. - ..:/workspace:cached
  9. env_file:
  10. - ../.env
  11. command: sleep infinity
  12. ports:
  13. - 3000:3000
  14. depends_on:
  15. db:
  16. condition: service_healthy
  17. db:
  18. container_name: torqvoice-db
  19. image: postgres:16-alpine
  20. restart: unless-stopped
  21. volumes:
  22. - postgres-data:/var/lib/postgresql/data
  23. environment:
  24. POSTGRES_USER: torqvoice
  25. POSTGRES_PASSWORD: torqvoice
  26. POSTGRES_DB: torqvoice
  27. ports:
  28. - "5432:5432"
  29. healthcheck:
  30. test: ["CMD-SHELL", "pg_isready -U torqvoice"]
  31. interval: 5s
  32. timeout: 5s
  33. retries: 5
  34. pgadmin:
  35. image: dpage/pgadmin4:latest
  36. container_name: torqvoice-pgadmin
  37. restart: unless-stopped
  38. environment:
  39. PGADMIN_DEFAULT_EMAIL: pgadmin@pgadmin.com
  40. PGADMIN_DEFAULT_PASSWORD: pgadmin
  41. PGADMIN_SERVER_JSON_FILE: /pgadmin4/servers.json
  42. PGADMIN_CONFIG_MASTER_PASSWORD_REQUIRED: "False"
  43. PGPASS_FILE: /pgpass
  44. ports:
  45. - "8080:80"
  46. depends_on:
  47. - db
  48. volumes:
  49. - pgadmin-data:/var/lib/pgadmin
  50. - ./pgadmin4/servers.json:/pgadmin4/servers.json:ro
  51. - ./pgpass:/pgpass:ro
  52. volumes:
  53. postgres-data:
  54. pgadmin-data: