Docker 容器部署
docker基础
系统命令
docker info # 查看系统信息和docker镜像信息
sudo systemctl start docker # 启动docker
yum remove docker-ce docker-ce-cil containerd.io # 卸载docker依赖包
rm -rf /var/lib/docker # 删除docker资源
镜像命令
docker images # 查看镜像 -a 显示所有镜像 -q 只显示id -aq 显示所有id
docker run [镜像名] # 启动镜像
docker rmi -f [镜像id] # 强制删除镜像
docker rmi -f $(docker images -aq) # 强制删除所有镜像
docker search [镜像名]# 搜索镜像
docker pull [镜像名]:[版本] #去docker hub下载镜像
容器命令
启动容器
docker run [镜像名]
--name "name" #用来区分容器名
-d [镜像名] #在后台运行,如果docker检测到没有前台应用,会自动停止容器
-it [镜像名] #以交互形式使用容器,可以读取容器内容
-P #ip:主机端口:容器端口
#主机端口:容器端口
#容器端口
-p 随机指定端口
退出容器
exit # 退出正在交互的容器
ctrl + p + q #容器退回到后台运行
删除容器
docker rm [容器id] # 删除指定容器
docker rm -f $(docker ps -aq) # 删除所有容器
启动和停止容器
docker start [容器id] # 启动,和run的区别是start必须是用run创建过的容器
docker restart [容器id] # 重启
docker stop [容器id] # 停止
docker kill [容器id] # 强制停止
查看运行中的容器
docker ps # 查看运行中的容器
-a # 查看运行中及最近打开的容器
-q # 只显示容器id
-n=3 #只显示最近运行的3个容器
查看容器日志
使用docker logs查看容器日志,以下在centos容器中输出 hello world,并通过日志获取
# 在后台运行centos容器,并每隔5s输出hello world
docker run -d centos /bin/sh -c "while true;do echo hello world;sleep 5;done"
# 查看运行中的容器,看容器是否启动成功
docker ps
# 再在上一步把当前运行中的容器id作为参数传入命令进行输出日志
docker logs -tf --tail 5 [容器id]
运行结果:
查看容器进程
docker top [容器id]
UID PID PPID C STIME TTY TIME CMD
root 47944 47927 0 23:45 ? 00:00:00 /bin/sh -c while true;do echo hello world;sleep 5;done
root 48288 47944 0 23:53 ? 00:00:00 /usr/bin/coreutils --coreutils-prog-shebang=sleep /usr/bin/