我是Docker的新手,目前正在学习Django。
运行以下命令时是否必须处于虚拟环境中 命令?
我看过docker基本视频,上面说它将每个应用程序都保存为图像。但是这些图像保存在哪里?。
此行是否将当前计算机设为根目录或dockers Image' WORKDIR / usr / src / app'
ADD在Dockerfile中放置在RUN之前。
$ sudo docker-compose build
但是我遇到了这些错误。
ERROR: Service 'app' failed to build: ADD failed: stat /var/lib/docker/tmp/docker-builder912263941/config/requirements.txt: no such file or directory
Dockerfile
FROM python:3
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
mysql-client default-libmysqlclient-dev
WORKDIR /usr/src/app
ADD config/requirements.txt ./
RUN pip3 install --upgrade pip; \
pip3 install -r requirements.txt
RUN django-admin startproject myproject .;\
mv ./myproject ./origproject
docker-compose.yml
version: '2'
services:
db:
image: 'mysql:5.7'
app:
build: .
command: python3 manage.py runserver 0.0.0.0:8000
volumes:
- './project:/usr/src/app/myproject'
- './media:/usr/src/app/media'
- './static:/usr/src/app/static'
- './templates:/usr/src/app/templates'
- './apps/external:/usr/src/app/external'
- './apps/myapp1:/usr/src/app/myapp1'
- './apps/myapp2:/usr/src/app/myapp2'
ports:
- '8000:8000'
links:
- db
requirements.txt
Pillow~=5.2.0
mysqlclient~=1.3.0
Django~=2.1.0
答案 0 :(得分:1)
运行以下命令时是否必须处于虚拟环境中 命令?
否,docker构建环境与主机隔离。主机上的任何virtualenv都会在构建上下文和生成的映像中被忽略。
我看过docker基本视频,上面说它可以保存每个应用程序 作为图像。但是这些图像保存在哪里?。
图像存储在/var/lib/docker
中的某个位置,但并不意味着需要手动浏览。您可以使用docker push <image:tag>
将图片发送到某个地方,也可以使用docker save <image:tag> -o <image>.tar
将图片保存
此行是否将当前PC设为根目录或dockers镜像'WORKDIR> / usr / src / app'
该行更改了图像上的当前工作目录。
ERROR: Service 'app' failed to build: ADD failed: stat /var/lib/docker/tmp/docker-builder912263941/config/requirements.txt: no such file or directory
此错误表示运行构建的当前目录中没有config/requirements.txt
。正确调整Dockerfile上的路径。
答案 1 :(得分:-1)
$ docker-compose up -d
这将下载必要的 Docker 镜像并为 Web 服务创建一个容器。