目录
docker exec和docker run
docker部署
1/保存现有容器为一个新的镜像
2/保存镜像为文件
3/将镜像文件复制到其他电脑
4/加载镜像文件
5/运行容器
启动容器
创建容器名字
创建容器并挂载
docker ps
更改挂载路径
正文
docker exec和docker run
- 相同点:
都可以用于启动Docker容器。
- 不同点:
docker run命令用于创建并启动一个新的Docker容器,可以在启动容器时指定容器名称、镜像名称、端口映射、挂载数据卷等参数。docker run只能用于启动新容器,不能用于操作已经运行的容器。
docker exec命令用于在已经运行的Docker容器中启动一个新的进程,可以在运行时指定要执行的命令或程序。docker exec只能用于操作已经运行的容器,不能用于启动新的容器。
因此,总的来说,docker run用于创建和启动新的Docker容器,而docker exec用于在已经运行的Docker容器中执行进程或命令。
#decker exec #进入容器后开启一个新的终端,可以在里面操作(常用)
#docker attach #进入容器正在执行的终端,不会启动新的进程!
docker部署
以下是将现有容器打包为Docker镜像并部署到其他电脑的步骤:
1/保存现有容器为一个新的镜像
在现有容器上运行docker commit命令,将容器的当前状态保存为一个新的镜像。例如,假设现有容器的名称为mycontainer,可以运行以下命令将其保存为新的镜像:
docker commit mycontainer myimage:tag
其中,myimage表示新的镜像名称,tag表示镜像标签。
2/保存镜像为文件
运行docker save命令将镜像保存为一个文件。例如,假设新的镜像名称为myimage,可以运行以下命令将其保存为文件:
docker save myimage > myimage.tar
其中,myimage表示要保存的镜像名称,myimage.tar表示保存的文件名。
3/将镜像文件复制到其他电脑
将保存的镜像文件复制到要部署镜像的其他电脑上。
4/加载镜像文件
在其他电脑上运行docker load命令将镜像文件加载为一个镜像。例如,可以运行以下命令在其他电脑上加载镜像文件:
docker load < myimage.tar
5/运行容器
在其他电脑上使用docker run命令运行新的镜像,并创建一个容器。例如,可以运行以下命令在其他电脑上运行新的镜像:
docker run -d -p 8080:80 myimage:tag
其中,-d选项表示在后台运行容器,-p选项表示将容器内部的端口映射到宿主机上的端口,8080表示宿主机上的端口,80表示容器内部的端口,myimage:tag表示要运行的镜像名称和标签。