Docker 常用命令总结
1、查看已有容器:
// 查看正在运行的容器
docker ps
// 查看所有的容器,包括停止运行的容器
docker ps -a
2、查看已有镜像:
docker images
3、下载新镜像:
docker pull <镜像名>
// 示例
// 下载 ubuntu 16.04 版本的镜像文件
docker pull ubuntu:16.04
// 下载最新版的Ubuntu
docker pull ubuntu
4、根据镜像启动一个新容器:
docker run -it <镜像名> /bin/bash
//示例
docker run -it ubuntu:16.04 /bin/bash
其中,-it
参数表示开启交互式容器。
5、退出容器:
exit
6、启动已退出的容器:
docker start <容器 ID>
可以通过 docker ps
查看所有容器,其中 CONTAINER ID
就是容器 ID。
7、进入一个已有容器:
docker exec -it <容器 ID> /bin/bash
8、关闭一个容器:
docker stop <容器 ID>
9、删除一个容器:
// 删除容器之前,先要对容器 stop
docker rm <容器 ID 或者容器名>
10、删除一个镜像:
// 删除镜像之前,要停止运行该镜像之上的所有容器
docker rmi <镜像 ID 或者 镜像名>
11、查看容器的运行日志:
docker logs <容器 ID>
12、使用 Dockerfile
构建镜像
docker build -t <新镜像名> .
// 示例
docker build -t appwizard:1.0 .
// 当 dockerfile 不止一个,使用 -f 指定dockerfile
// 示例
docker build -f <dockerfile 名> -t <新镜像名> .
13、使用 --restart=always
让容器一直运行, 使用 -p
指定映射端口
// 示例
docker run -d --name=app --restart=always -p 8081:8080 appwizard:1.0
说明:
-d
表示在后台运行容器--name=app
表示容器的名字为 app--restart=always
表示容器自启,一直运行-p 8081:8080
表示将容器内部 8080 端口映射到宿主机的 8081 端口
14、挂载volume
// 示例
docker run -it --name app --link redis-master:db -v ~/projects/data:/data django /bin/bash
通过 --link
选项来建立容器间的连接,这里 app 容器跟 redis-master 建立连接,db 是 redis-master 的别名。
-v
表示挂载目录,这里将宿主机的~/projects/data
目录挂载到容器内的/data
目录。
为什么要挂载目录呢?为了方便传文件到容器内部,只要将文件放到宿主机指定目录,容器内部也就有了。
未完待续。。。