|
|
|
# 常用命令
|
|
|
|
|
|
|
|
## 查看版本
|
|
|
|
|
|
|
|
```shell
|
|
|
|
docker version
|
|
|
|
```
|
|
|
|
|
|
|
|
## 从Docker文件构建镜像
|
|
|
|
|
|
|
|
```shell
|
|
|
|
docker build -t image-name docker-file-location
|
|
|
|
```
|
|
|
|
|
|
|
|
*-t*:它用于指定使用提供的名称来标记Docker映像。
|
|
|
|
|
|
|
|
## 运行镜像/创建容器
|
|
|
|
|
|
|
|
```shell
|
|
|
|
docker run -d image-name
|
|
|
|
```
|
|
|
|
|
|
|
|
*-d*:用于创建守护程序进程
|
|
|
|
|
|
|
|
## 查看可用的镜像
|
|
|
|
|
|
|
|
```shell
|
|
|
|
docker images
|
|
|
|
```
|
|
|
|
|
|
|
|
## 查看运行容器
|
|
|
|
|
|
|
|
```shell
|
|
|
|
docker ps -l //显示最新的可用容器
|
|
|
|
docker ps -a //显示所有可用的容器
|
|
|
|
```
|
|
|
|
|
|
|
|
## 运行与停止容器
|
|
|
|
|
|
|
|
```shell
|
|
|
|
docker start container_id
|
|
|
|
docker stop container_id
|
|
|
|
docker restart container_id
|
|
|
|
```
|
|
|
|
|
|
|
|
## 进入容器
|
|
|
|
|
|
|
|
```shell
|
|
|
|
docker exec -it container-id bash
|
|
|
|
```
|
|
|
|
|
|
|
|
## 删除容器
|
|
|
|
|
|
|
|
```shell
|
|
|
|
docker rm -f container_id //删除指定容器
|
|
|
|
docker rm $(docker ps -a -q) //删除所有容器
|
|
|
|
```
|
|
|
|
|
|
|
|
## 删除镜像
|
|
|
|
|
|
|
|
```shell
|
|
|
|
docker rmi image-name //删除指定镜像
|
|
|
|
docker rmi $(docker images -q) //删除所有镜像
|
|
|
|
docker rmi -r $(docker images -q) //强制删除所有镜像
|
|
|
|
```
|
|
|
|
|
|
|
|
## 修改容器端口映射
|
|
|
|
|
|
|
|
- 停止容器
|
|
|
|
|
|
|
|
- 查找容器ID
|
|
|
|
|
|
|
|
```shell
|
|
|
|
docker inspect nginx-alpine
|
|
|
|
```
|
|
|
|
|
|
|
|
容器ID为:004d95fb40fd811128a5fb6c6c6ae8fab51e234779f92e5a91d0d84e0a80cb1c
|
|
|
|
|
|
|
|
- 进入容器目录
|
|
|
|
|
|
|
|
```
|
|
|
|
cd cd /home/docker/containers/004d95fb40fd811128a5fb6c6c6ae8fab51e234779f92e5a91d0d84e0a80cb1c
|
|
|
|
```
|
|
|
|
|
|
|
|
- 修改容器配置
|
|
|
|
|
|
|
|
```shell
|
|
|
|
vim hostconfig.json
|
|
|
|
```
|
|
|
|
|
|
|
|
其中`PortBindings`属性即为容器端口映射配置
|
|
|
|
|
|
|
|
- 修改后重启容器
|
|
|
|
|
|
|
|
## 容器与宿主机文件拷贝
|
|
|
|
|
|
|
|
- 容器 → 宿主机
|
|
|
|
|
|
|
|
```shell
|
|
|
|
docker cp <容器名/ID>:<容器文件路径> <宿主机文件夹路径>
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- 宿主机 → 容器
|
|
|
|
|
|
|
|
```she
|
|
|
|
docker cp <宿主机文件路径> <容器名/ID>:<容器文件夹路径>
|
|
|
|
```
|
|
|
|
|
|
|
|
## 将容器打包为镜像
|
|
|
|
|
|
|
|
```shell
|
|
|
|
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
|
|
|
|
```
|
|
|
|
|
|
|
|
| Option | 功能 |
|
|
|
|
| :----- | :----------------------------- |
|
|
|
|
| -a | 指定新镜像作者 |
|
|
|
|
| -c | 使用 Dockerfile 指令来创建镜像 |
|
|
|
|
| -m | 提交生成镜像的说明信息 |
|
|
|
|
| -p | 在 commit 时,将容器暂停 |
|
|
|
|
|
|
|
|
# 其他
|
|
|
|
|
|
|
|
## docker container update
|
|
|
|
|
|
|
|
更新一个或多个容器的配置
|
|
|
|
|
|
|
|
```shell
|
|
|
|
docker container update [OPTIONS] CONTAINER [CONTAINER...]
|
|
|
|
```
|
|
|
|
|
|
|
|
| 名称,简写 | 默认值 | 描述 |
|
|
|
|
| -------------------- | ------ | ------------------------------------------------------------ |
|
|
|
|
| --blkio-weight | 0 | 阻塞IO(相对权重),介于`10`和`1000`之间,或`0`禁用(默认为`0`) |
|
|
|
|
| --cpu-period | 0 | 限制CPU CFS(完全公平的调度程序)周期 |
|
|
|
|
| --restart | | 重新启动在容器退出时应用的策略 |
|
|
|
|
| --memory, -m | | 内存限制 |
|
|
|
|
| --kernel-memory | | 内核内存限制 |
|
|
|
|
| --memory-swap | | 交换限制等于内存加交换:’`-1`‘以启用无限制的交换 |
|
|
|
|
| --memory-reservation | | 内存软限制 |
|
|
|
|
|