启动与停止
docker pull ubuntu 拉取镜像,如果本地不存在则从仓库下载
docker run helloworld 用来创建一个新的容器并启动它(如果指定的镜像不存在,会自动拉取该镜像)
docker start helloworld 用来启动已经存在且处于停止状态的容器
守护式启动:即后台启动
docker run -d --name ubun1 ubuntu
- -d:指定为后台启动
- –name:为容器重命名
进入后台运行的容器shell:
dockerattach在此状态下<容器名称或容器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映射到容器的端口8000python 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 查看容器的配置与状态信息