有人能帮我解决这个问题吗。为什么我会出现这个错误?我在.env主机和链接中有数据库,在docker中也有网络组成文件。我不想弄清楚这个问题是从哪里提出的。这是我的档案。
version: "3.9"
volumes:
dbdata:
networks:
django:
driver: bridge
services:
web:
build:
context: .
volumes:
- .:/home/django
ports:
- "8000:8000"
command: gunicorn Django.wsgi:application --bind 0.0.0.0:8000
container_name: django_web
restart: always
env_file: .env
depends_on:
- db
links:
- db:db
networks:
- django
db:
image: postgres
volumes:
- dbdata:/var/lib/postgresql
environment:
- POSTGRES_DB=${DB_NAME}
- POSTGRES_USER=${DB_USER}
- POSTGRES_PASSWORD=${DB_PASSWORD}
ports:
- 5430:5432
networks:
- django
container_name: django_db
这是我的.env和数据库设置
DB_USER=admin
DB_NAME=test
DB_PASSWORD=admin
DB_HOST=db
DB_PORT=5432
DB_SCHEMA=public
CONN_MAX_AGE=60
问题是当您使用时:
docker compose up --build
正如docker撰写的文件所描述的:
标志 | |
---|---|
--在启动容器之前构建图像 |
我认为问题在于你的.env声明如下:
DB_HOST=db
但是你的docker撰写的文件是这样写的:
container_name: django_db
在我看来,这些应该是一样的。