基本命令
## 列出 docker 命令
docker
docker container --help
## 显示 Docker 版本和信息
docker --version
docker version
docker info
## 运行Docker 镜像
docker run hello-world
## 列出 Docker 镜像
docker image ls
## 列出Docker容器(运行,全部,全部处于安静模式)
docker container ls
docker container ls --all
docker container ls -aq
docker build -t imagename . # 使用当前目录下的 Dockerfile 创建镜像
docker run -p 4000:80 imagename # 运行镜像,并映射端口4000到80
docker run -d -p 4000:80 friendlyhello # 后台运行
docker container ls # 列出所有正在运行的容器
docker container ls -a # 列出所有容器
docker container stop <hash> # 停止指定的容器
docker container kill <hash> # 强制关闭指定的容器
docker container rm <hash> # 删除指定的容器
docker container rm $(docker container ls -a -q) # 删除所有容器
docker image ls -a # 列出本机上的所有镜像
docker image rm <image id> # 删除指定的镜像
docker image rm $(docker image ls -a -q) # 删除所有镜像
docker login # 登录存储库 注册表
docker tag <image> username/repository:tag # 标记上传到存储库 注册表
docker push username/repository:tag # 推送到存储库 注册表
docker run username/repository:tag # 从 存储库 注册表 运行
测试Docker版本
- 运行
docker --version
查看您拥有的Docker版本:
$ sudo docker --version
Docker version 17.12.0-ce, build c97c6d6
- 运行
docker info
或docker version
查看有关docker的详细信息:
$ sudo docker info
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 17.12.0-ce
Storage Driver: overlay2
...
- 要避免权限错误(以及使用
sudo
),请创建docker组并添加您的用户:
- 创建docker组。
$ sudo groupadd docker
- 将您的用户添加到该docker组。
$ sudo usermod -aG docker $USER
使用 Dockerfile 定义容器
Dockerfile 文件定义容器内的环境。对环境中的资源进行虚拟化,该环境与系统的其他部分隔离,并具体说明要“复制”哪些文件到那个环境。在执行此操作之后,您可以预期 Dockerfile 在此处定义构建的应用程序,在其它的任何位置构建都完全相同。
# Dockerfile
# 使用官方 Python 运行时作为父镜像
FROM python:3.6
# 将工作目录设置为 /app
WORKDIR /app
# 将当前目录内容复制到容器中 /app
COPY . /app
# 安装 requirements.txt 中指定的所需包
RUN pip install --trusted-host pypi.python.org -r requirements.txt
# 使 80 端口对外开放
EXPOSE 80
# 设置代理服务器&#