python - django.db.utils.OperationalError:无法将主机名“db”转换为地址:名称或服务未知
问题描述
运行代码时会出现这种情况,docker-compose exec web python manage.py makemigrations 用户。
下面是我的 docker-compose.yml 代码。
version: '3.8'
services:
web:
build: .
command: python /code/manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- 8000:8000
depends_on:
- db
db:
image: postgres:11
volumes:
- postgres_data:/var/lib/postgresql/data/
environment:
POSTGRES_DB: postgres
POSTGRES_USER: postgres
POSTGRES_PASSWORD: testpassword
volumes:
postgres_data:
下面是我的 Dockerfile 代码:
# Pull base image
FROM python:3.8
# Set environment variables
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
# Set work directory
WORKDIR /code
# Install dependencies
COPY Pipfile Pipfile.lock /code/
RUN pip install pipenv && pipenv install --system
# Copy project
COPY . /code/
在命令中运行“docker compose up”后,我收到以下消息,错误:对于数据库无法为服务数据库创建容器:重复的安装点:/var/lib/postgresql/data 错误:在启动项目时遇到错误。
解决方案
推荐阅读
- java - 实例上的方法引用 - 为什么不直接调用方法(因为它如何在不同的上下文中执行)?
- javascript - jQuery从字符串中获取价格
- apache-spark - Spark - 在这种情况下,何时发生重新分区?
- bash - 如何使用 shell 脚本(.sh 文件)执行 web 路由
- r - R ggplot 排序百分比堆积条形图
- mapkit - 仅在部分 MKMap 内容上使用 MKOverlay `canReplaceMapContent`
- reactjs - React API 调用,使用 QuickBase 的新 RESTful API 渲染数据
- iphone - Wireshark 可以在 iPhone 断开连接且 SIM 卡未插入的情况下检测数据流量
- python - 在python中给定负数时使程序计数
- regex - 正则表达式仅匹配无或一