之前一直听说容器可以免去配置环境的麻烦,但是一直没有机会接触,现在刚好有机会可以使用。
镜像、容器、仓库
类比的话:镜像是类(iso),容器是实例(操作系统),仓库类似于git的仓库。
镜像的构建是一层层的继承而来的,镜像和容器都是文件,容器退出的时候容器文件依然存在。除非手动使用-rm指定,才会删除。
加载镜像,进入一个新的容器:docker run image:tag command
实例 摘自:https://yeasy.gitbooks.io/docker_practice/image/pull.html
docker run -it --rm \ ubuntu:18.04 \ bashdocker run 就是运行容器的命令 从镜像中新建一个容器
-it:这是两个参数,一个是 -i:交互式操作,一个是 -t 终端。我们这里打算进入 bash 执行一些命令并查看返回结果,因此我们需要交互式终端。--rm:这个参数是说容器退出后随之将其删除。默认情况下,为了排障需求,退出的容器并不会立即删除,除非手动 docker rm。我们这里只是随便执行个命令,看看结果,不需要排障和保留结果,因此使用 --rm 可以避免浪费空间。ubuntu:18.04:这是指用 ubuntu:18.04 镜像为基础来启动容器。bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 bash。退出: 在容器中exit
进入容器:
docker exec 进入一个已有的容器。 (容器需要已经运行)
dcoker cp 容器的复制
docker ps 列出启动容器 docker ps -a 列出所有容器包括关闭的。
启动之前关闭的容器: docker start container-name ,
需要先启动容器,才能执行docker exec container-name
https://blog.csdn.net/wanglei_storage/article/details/48471753
https://juejin.im/entry/5b19e350e51d45069f5e1d66
https://yeasy.gitbooks.io/docker_practice/basic_concept/container.html
https://blog.csdn.net/u010246789/article/details/53958662