Docker、Image、Container
简而言之,Docker提供了一个平台,Image(镜像)可以为一个封装好的程序、操作系统,并且支持在其中安装其他程序, Container(容器)是镜像的实例。
Docker常用命令
最近几天由于工作需要,了解了一下Docker,主要使用的命令如下:
- Ubuntu 在线部署Docker:
sudo apt-get install docker
- 查找所需Image:
# sudo docker search [Image-Name]
# 实例:
sudo docker search alpine
会返回一系列符合查找项要求的镜像文件,根据需要进行下载。
- 下拉已有Image(镜像):
# sudo docker pull [Image-Name]
# 实例
sudo docker pull alpine
- 查看已有Image(镜像):
sudo docker images
- 删除镜像:
# sudo docker rmi [image-ID]
# 实例
sudo docker rmi 11cd0b38bc3c
# 11cd0b38bc3c即为前面查看的alpine镜像的id,故删除镜像alpine
- 创建并运行Container
# 即为运行一个Image
sudo docker run [image]
- 创建并运行container进入其bash控制台:
# sudo docker run -it [image]
# 实例
sudo docker run -it alpine
- 在container中修改后提交为新的镜像:
# 查看当前运行的container
sudo docker ps
# 选择在其中进行修改的container 的id
# sudo docker commit [container-id] [new-image-name]
# 实例
sudo docker commit e321c2f39535 new-image
- 用安装在Image中的软件包运行本地的程序实例:
# 以运行python程序为例,其他的同理
sudo docker run -v /path_to_dir_of_hello.py:/usr/myapp python-docker /usr/myapp/hello.py
# 用Image中的Mcr运行本地的Matlab独立可执行程序
sudo docker run -v /path_to_dir_of_exe:/usr/myapp mcr-image /usr/myapp/run_exe.sh /path_of_mcr_in_mcr-image/v94 [参数1] [参数2]
# 注:/usr/myapp/为mcr-image的container中的路径
以上。