明确容器和镜像的概念;
更明确的区分容器和镜像; 补充运行容器的命令. Signed-off-by: ithink.chan <chenyang@autoai.com>
This commit is contained in:
parent
cfc5762e8f
commit
812ca8066f
|
@ -27,27 +27,38 @@ pkill X
|
||||||
|
|
||||||
## 基本使用
|
## 基本使用
|
||||||
|
|
||||||
|
Docker 的主要管理对象是镜像和容器,镜像是静态对象,保存了分层的用户数据;而容器是动态对象,可以看作镜像的运行状态,容器主要包容了 root fs。二者的关系如同程序文件与进程的关系。必须使用镜像来创建容器,一旦 Docker 加载并运行了谋镜像,就为之创建一个与之对应的容器,容器至少有 stop 和 run 两个状态。使用 run 命令通过镜像创建容器后,该容器处于 run 状态,使用 exit 命令脱离容器后,容器处于 stop 状态。可以使用 start 命令将处于 stop 状态的容器再次运行起来。
|
||||||
|
|
||||||
|
如果每次都使用 run 命令从同一个镜像创建容器,会发现两个容器是完全一样的,因为他们都有相同的起始点。容器使用后,会保存当前的使用状态,但如果希望将其当前状态保存成镜像,可以使用 commit 命令。
|
||||||
|
|
||||||
|
* image name 为 \<repository\>:\<tag\> 这种形式。 *
|
||||||
|
|
||||||
|
以下是使用 Docker 的一些基础命令:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
# 从 https://hub.docker.com 拉取镜像
|
# 从 https://hub.docker.com 拉取镜像
|
||||||
docker pull ubuntu:18.04
|
docker pull ubuntu:18.04
|
||||||
# 运行谋容器
|
# 运行谋镜像并为之创建容器
|
||||||
docker run <name/id>
|
docker run <image name/id>
|
||||||
# 运行谋容器,并将宿主机的/test目录挂载到容器的/soft目录
|
# 运行谋镜像,为之创建容器,将宿主机端口影射到容器端口,并将宿主机的谋目录挂载到容器的对应目录下
|
||||||
docker run -it -v /test:/soft <name/id> /bin/bash
|
docker run -it -p <host ip:port><container port> -v <host dir>:<container dir> <image name/id> /bin/bash
|
||||||
# 查看正在运行的容器
|
# 查看正在运行的容器
|
||||||
docker ps
|
docker ps
|
||||||
# 进入正在运行的容器
|
# 提交针对谋容器的修改,将其保存为镜像
|
||||||
docker exec -it <tag name/id> bash
|
docker commit <container id> <repository>:<tag>
|
||||||
# 提交针对谋容器的修改
|
# 退出容器:在容器的 shell 中直接
|
||||||
docker commit <id> <image name>:<tag>
|
|
||||||
# 退出容器
|
|
||||||
exit
|
exit
|
||||||
|
# 运行谋已存在的容器
|
||||||
|
docker start <container id>
|
||||||
|
docker attach <container id>
|
||||||
|
# 在谋已运行的容器中执行命令
|
||||||
|
docker exec -it <container name/id> <cmd and args>
|
||||||
# 迁移镜像
|
# 迁移镜像
|
||||||
docker save -o <tar file> <image name/id>
|
docker save -o <tar file> <image name/id>
|
||||||
docker load -i <tar file>
|
docker load -i <tar file>
|
||||||
# 迁移容器
|
# 迁移容器
|
||||||
docker export -o <tar file> <container name/id>
|
docker export -o <tar file> <container name/id>
|
||||||
docker import <tar file> <image name>:<tag>
|
docker import <tar file> <repository>:<tag>
|
||||||
```
|
```
|
||||||
|
|
||||||
### 容器操作
|
### 容器操作
|
||||||
|
@ -66,7 +77,6 @@ docker container rm <container id>
|
||||||
### 镜像操作
|
### 镜像操作
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
# image name 为 repository:tag
|
|
||||||
# 获得镜像信息
|
# 获得镜像信息
|
||||||
docker image ls -a
|
docker image ls -a
|
||||||
# 获得镜像id
|
# 获得镜像id
|
||||||
|
|
Loading…
Reference in New Issue