本文目录
0、docker简介
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版),我们用社区版就可以了。
Docker 官网:https://www.docker.com
Github Docker 源码:https://github.com/docker/docker-ce
1、镜像 IMAGE
1.1、查看镜像列表
docker images
1.2、拉取镜像
docker pull httpd
1.3、删除镜像
$ docker rmi hello-world
1.4、构建镜像
1、从已经创建的容器中更新镜像,并且提交这个镜像
2、使用 Dockerfile 指令来创建一个新的镜像
注:dockerfile的编写方法参考:https://www.runoob.com/docker/docker-dockerfile.html
2、容器 CONTAINER
2.1、启动容器的方法
docker run -it buildrpm /bin/bash
参数说明:
-i: 交互式操作。
-t: 终端。
ubuntu: ubuntu 镜像。
/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。
2.2、拷贝本地文件到容器内
docker cp 本地路径 容器长ID:容器路径
2.3、退出容器
exit 或者CTRL+D
2.4、查看容器状态
docker ps
2.5、停止容器
docker stop CONTAINER_ID
2.6、启动已停止的容器
docker start CONTAINER_ID
2.7、重启已停止的容器
docker restart CONTAINER_ID
2.8、进入容器的方法
针对进入后台的容器(注:加了 -d 参数默认不会进入容器,想要进入容器需要使用指令 docker exec),
1、docker attach CONTAINER_ID
2、docker exec -it gracious_villani /bin/bash
注意事项:
1、采用docker attach命令,如果从这个容器退出,会导致容器的停止。
2、 如果从这个容器退出,容器不会停止,这就是为什么推荐大家使用 docker exec 的原因。
2.9、导出和导入容器
$ docker export CONTAINER_ID > ubuntu.tar // 导出容器
$ cat docker/ubuntu.tar | docker import - test/ubuntu:v1 // 导入容器快照
2.10、删除容器
docker rm -rf CONTAINER_ID
下面的命令可以清理掉所有处于终止状态的容器。
$ docker container prune
THE END!
本博文只能阅读,谢绝转载,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 2963033731@qq.com