1. 关于Docker store
Docker store里有好多大家做好的镜像,所以你在使用之前可以先到Docker store官网(https://store.docker.com/)找一下有没有满足你需求的镜像,如果有的话可以直接pull下来,这样的话就可以省去你自己创建镜像的时间。比如我想要用一个配置好tensorflow的镜像,就直接在docker store搜索“tensorflow”,找到你想要的那个(一般我就要下载量最多的那个):
然后直接在本地终端里运行下图右侧的pull指令(一般需要sudo),这样你就在本地得到了对应的镜像:
sudo docker pull tensorflow/tensorflow
2. docker image
本节介绍image相关的命令。
2.1 小试牛刀
运行以下指令下载一个ubuntu镜像:
sudo docker pull ubuntu:16.04
使用“sudo docker images”可以查看当前本地有那些镜像:
sudo docker images
结果如下,可以看到我们刚刚下载的ubuntu:16.04在第一个:
创建一个容器:
sudo docker run -ti --name first ubuntu:16.04 bash
run命令用来创建一个镜像的实例,即一个容器。
-ti 指定了使用交互模式(interactive mode),这样的话我们可以进去到容器中操作;
–name 指定了这个容器的名字,如果没有设定容器的名字,docker会随机指派一个名字;
ubuntu:16.04是镜像的名字:标签对(name:tag pair)
注意:此处必须指定16.04,因为你可以在前一个图片看到我们有两个ubuntu,如果不指定的话默认是从ubuntu:latest创建容器。
最后的bash制定了进入到交互环境后运行bash shell终端
执行后结果如下图(进入之后我执行了一条ls -l的指令),exit可以退出容器:
使用下面一条指令可以查看当前有哪些容器,可以看到我们名字为first的容器:
sudo docker ps -a
(-a 参数是列出所有容器)
2.2 其他命令
- 删除镜像
sudo docker rmi ubuntu:16.04
- 删除容器
sudo docker rm [name_of_container]
- 查看镜像或者容器的详细信息
sudo docker inspect [name_of_image_or_container]
- 查看镜像的操作记录
sudo docker history [name_of_image]
- 查看容器的最近一个进程
sudo docker top name_of_container
- 停止一个正在运行的容器
sudo docker stop name_of_container
- 重启一个stop的容器
sudo docker restart name_of_container
- 查看一个容器的状态
sudo docker stats name_of_container
- 暂停一个容器进程
sudo docker pause name_of_container
- 取消暂停
sudo docker unpause name_off_container
- 终止一个容器
sudo docker kill name_of_container
下图展示了一个容器的生命周期:
3. 总结
以上就是Docker的基本用法。后面的教程将会介绍更多的用法。