Python 服务';网络';生成失败,协议错误
我试图在docker容器中使用postgresql。然而,我得到了一个错误 无法生成服务“web”:命令“/bin/sh-c apk add” --更新--无缓存--virtual.tmp build deps gcc libc dev linux headers postgresql dev musl dev zlib zlib dev'返回一个 非零代码:4 我得到了其他相关问题,如错误:mpfr3-3.1.5-r1:协议错误 这是一个问题的截图,也可能是相互关联的 这是密码 DockerfilePython 服务';网络';生成失败,协议错误,python,django,docker,docker-compose,dockerfile,Python,Django,Docker,Docker Compose,Dockerfile,我试图在docker容器中使用postgresql。然而,我得到了一个错误 无法生成服务“web”:命令“/bin/sh-c apk add” --更新--无缓存--virtual.tmp build deps gcc libc dev linux headers postgresql dev musl dev zlib zlib dev'返回一个 非零代码:4 我得到了其他相关问题,如错误:mpfr3-3.1.5-r1:协议错误 这是一个问题的截图,也可能是相互关联的 这是密码 Docker
FROM python:3.7-alpine
ENV PYTHONUNBUFFERED 1
ENV PYTHONDONTWRITEBYTECODE 1
# set working directory which will be inside ubuntu
WORKDIR /code
#### Install a dependency ####
# Copies new files and resources to the image's filesystems
RUN pip3 install pipenv
COPY Pipfile Pipfile.lock /code/
RUN apk add --update --no-cache postgresql-client jpeg-dev
RUN apk add --update --no-cache --virtual .tmp-build-deps \
gcc libc-dev linux-headers postgresql-dev musl-dev zlib zlib-dev
RUN pipenv install --system
RUN apk del .tmp-build-deps
COPY . /code/
RUN adduser -D user
USER user
docker-compose.yml
version: "3.7"
services:
db:
image: postgres:12-alpine
environment:
- POSTGRES_DB=database
- POSTGRES_USER=admin
- POSTGRES_PASSWORD=admin123
web:
build: .
command: >
sh -c "python /code/manage.py wait_for_db &&
python /code/manage.py runserver 0.0.0.0:8000"
environment:
- DB_HOST=db
- DB_NAME=database
- DB_USER=admin
- DB_PASS=admin123
volumes:
- .:/code
# lets us map our port 8000 to the port 8000 in the Docker container
ports:
- 8000:8000
# it says that we should run the db first before running our web services
depends_on:
- db
听起来好像找不到存储库。在运行
apk Add
命令之前添加此行
RUN echo "http://dl-cdn.alpinelinux.org/alpine/v3.7/main" >> /etc/apk/repositories
编辑:还有,你在你的
docker compose.yml中指向上面的Dockerfile
的什么地方。两者都在同一条道路上。我需要指出它吗?我仍然得到相同的问题我现在得到这个问题/bin/sh:1:无法创建/etc/apk/repositories:Directory noexistent
您需要将web应用程序的构建上下文指向您为其制作的图像,并且解决了目录问题,但我不理解构建上下文部分。你能通过编辑你的答案来展示它吗?