Docker 常用命令和Dockerfile
Docker 简介
官方的解释为:Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
我理解:一个轻量级的虚拟机。
安装
参照官网 https://docs.docker.com/install/
Docker 常用命令
-
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
OPTIONS 说明
-d 后台运行
-it 前台运行
--rm 退出删除容器
--name 容器名称,例如:--name test
-e 设置环境变量, 例如:-e PASSWORD="password"
-v 设置volume映射关系, 例如:-v /data:/data
-p 设置端口映射关系,[宿主机端口]:[容器端口],例如:-p 8080:8080 -
docker rm [CONTAINER]
删除容器,可指定name, 或id -
docker rm -f $(docker ps -aq)
强制删除所有容器 -
docker images
查看所有镜像 -
docker exec -it [CONTAINER] [COMMAND]
在指定容器中运行指定命令 -
docker build .
根据当前路径下的Dockerfile
生成image, 可以跟-f
指定Dockerfile
路径,和-t
指定image 名字
Dockerfile 使用示例及说明
FROM python:3.6 # 基础镜像,
ENV LANG C.UTF-8 # 设置环境变量, 也可以运行时 指定 -e
COPY pip.conf /root/.pip/pip.conf # 复制文件到路径中
ADD requirements.txt ./ # 同COPY相似,可自动进行解压操作
RUN pip install --upgrade pip && pip install -r requirements.txt # 运行的命令,构建依赖
WORKDIR /root/code # 设置工作路径,既默认路径
EXPOSE 80 443 # 指定暴露的端口,也可以运行时指定 -p
CMD ["python","manage.py","runserver"] # 容器运行时的默认指令