启动与停止
docker pull ubuntu
拉取镜像,如果本地不存在则从仓库下载
docker run helloworld
用来创建一个新的容器并启动它(如果指定的镜像不存在,会自动拉取该镜像)
docker start helloworld
用来启动已经存在且处于停止状态的容器
守护式启动:即后台启动
docker run -d --name ubun1 ubuntu
- -d:指定为后台启动
- –name:为容器重命名
进入后台运行的容器shell:
docker
attach
在此状态下<容器名称或容器ID>
exit
会退出且停止容器docker exec -it <容器名称或容器ID> /bin/bash
在此状态下exit
会退出终端,但不会停止容器
交互式启动:
docker run -i -t ubuntu /bin/bash
启动一个新的ubuntu容器并在容器中运行bash命令
- -i:表示interactive,即启动容器时保持标准输入(stdin)打开,这使得可以输入命令与容器交互
- -t:表示tty,即为容器分配一个伪终端,这使得能看到容器内的输出,并且能进行交互操作。通常与选项-i一起使用,确保能够在容器中交互式地运行命令并看到输出
- /bin/bash:这是容器启动时要执行的命令,指定容器启动后运行
/bin/bash
,即启动bash shell
启动时指定端口映射:
docker run -d -p 5000:8000 training/webapp python app.py
-p 5000:8000
:指定端口映射,将宿主机的端口5000
映射到容器的端口8000
python app.py
:容器启动时要执行的命令
docker stop 93c1
停止指定容器(93c1为该容器的ID前4位)
docker restart 93c1
重启已停止的容器
exit
退出当前容器
docker rm -f 93c1
强制删除容器
docker rmi 镜像名
删除镜像(注意必须事先删除该镜像的容器,即使容器已停止)
导入与导出
docker export ae2e > ubuntu.tar
导出容器到磁盘
cat ./ubuntu.tar | docker import - test/ubuntu:v1
将磁盘文件导入到镜像
test/ubuntu
:命名镜像:v1
:tag,此例中代表版本号
docker commit -m="update" -a="guapi" 93c1 ubuntu-fu:v2
将容器构建为镜像
-m
:指定提交的消息,通常用来描述对容器所做的更改或更新内容-a
:指定作者ubuntu-fu:v2
:指定新创建的镜像的名称和标签
查看容器/镜像
docker images
查看本地存在的镜像
docker search 镜像名
搜索镜像
docker ps
查看当前运行的容器
-a
:查看所有容器
docker logs -f 93c1
查看容器日志
docker port 93c1
查看容器端口信息
docker top 93c1
查看容器正在运行的进程
docker inspect 93c1
查看容器的配置与状态信息