我有一个 docker-compose 文件,它初始化 postgres 和 postgres 迁移服务。我想在 gitlab 管道中针对我的 docker-compose baked postgres 服务运行测试,但我无法通过本地主机连接到 pg_db。在我的代码中,我使用 pgx 包。在我的本地机器上,使用 localhost 作为 PGHOST 环境变量没有问题。
所以我的主要问题是我的测试将哪个主机放入 PGHOST 变量以用于 gitlab 管道内的 postgres 连接。
docker-compose.yml
version: "3.3"
services:
pg_db:
container_name: pg_db
image: postgres:13.2-alpine
environment:
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_SSLMODE=${POSTGRES_SSLMODE}
- POSTGRES_HOST_AUTH_METHOD=${POSTGRES_HOST_AUTH_METHOD}
ports:
- ${POSTGRES_PORT}:5432
restart: always
deploy:
resources:
limits:
cpus: '1'
memory: 4G
networks:
- postgres
- backend
#init db
store-init:
image: x:latest
container_name: store-init
environment:
- PGHOST=pg_db
- PGUSER=${POSTGRES_USER}
- PGPASSWORD=${POSTGRES_PASSWORD}
- PGDATABASE=${POSTGRES_DB}
- PGPORT=${POSTGRES_PORT}
restart: on-failure
depends_on:
- pg_db
networks:
- postgres
- backend
networks:
backend:
postgres:
driver: bridge
慕哥6287543
相关分类