docker基础知识
Table of Contents
Docker基础
容器(Container)是通过镜像(image)创建的。容器是在原先的image之上新加了一层,这一层是可读可写的,镜像只是可读的。 在面向对象的编程语言中,有类跟对象的概念。类是抽象的,对象是类的具体实现。Image跟Container可以类比面向对象中的类跟对象,Image就相当于抽象的类,Container就相当于具体实例化的对象。 Image跟Container的职责区别:Image负责APP的存储和分发,Container负责运行APP。
镜像(image)
Docker 把应用程序及其依赖,打包在 image 文件里面,通过这个文件生成 Docker 容器。image 文件可以看作是容器的模板。
-
拉取仓库代码到本地
docker image pull library/hello-world
docker官方提供的默认在library中,可以省略library
docker image pull hello-world
-
查看所有镜像文件
docker image list
-
从image文件中生成一个正在运行的容器实例
docker container run xxxx
-
手动终止运行的容器
docker container kill xxxx
-
以交互模式运行容器 (后边可以跟需要打开的shell)
docker container run -it xxxx (bin/bash)
容器
更多命令参考 👉🏻 (官方文档)
-
列出本机正在运行的容器
docker container list
-
列出本机所有容器,包括终止运行的容器
docker container ls -all
-
启动终止的容器
docker container start <container id>
-
重启正在运行的容器
docker container restart <container id>
-
停止正在运行的容器
docker container stop <container id>
-
删除容器文件(终止运行的容器文件,依然会占据硬盘空间)
docker container rm <container id>
-
获取容器的运行的输出
docker container logs <container id>
-
进入容器
使用attach命令进入容器后,如果从这个stdin中exit,会导致容器的停止。使用exec容器则不会停止
docker container attach <container id>
docker container exec -it <container id> (bash)
-
清理掉所有处于终止状态的容器
docker container prune
-
复制主机文件到docker中
docker container cp 主机文件 docker地址