当前位置:   article > 正文

Docker容器管理命令_docker inspect能查看到容器指定字段

docker inspect能查看到容器指定字段

docker容器管理命令

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

容器管理命令说明
docker run -it(d) 镜像名称:标签 启动命令创建启动并进入一个容器,后台容器使用参数 d
docker ps查看容器 -a 所有容器,包含未启动的,-q 只显示id
docker rm 容器ID-f 强制删除,支持命令重入
docker start|stop|restart 容器id启动、停止、重启容器
docker cp 本机文件路径 容器id:容器内路径把本机文件拷贝到容器内(上传)
docker cp 容器id:容器内路径 本机文件路径把容器内文件拷贝到本机(下载)
docker inspect 容器ID查看容器的详细信息
docker attach 容器id进入容器的默认进程,退出后容器会关闭
docker attach 容器id [ctrl+p, ctrl+q]进入容器以后,退出容器而不关闭容器的方法
docker exec -it 容器id 启动命令进入容器新的进程,退出后容器不会关闭
docker port 容器名查看容器映射的端口
docker top 容器名查看容器中运行的进程信息,支持 ps 命令参数

创建容器

在这里插入图片描述


-p 容器绑定外部IP和端口

# 将容器的80/tcp绑定到宿主机的0.0.0.0:4000端口
docker run -d -p 4000:80 容器名

# 将容器的80/tcp和80/udp端口绑定到宿主机的127.0.0.1:4000端口
docker run -d -p 127.0.0.1:4000:80 -p 127.0.0.1:4000:80/udp 容器名

# 映射端口段
## udp端口段
docker run -p 7000-8000:7000-8000 7000-8000:7000-8000/udp
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

-e 设置容器中的环境变量

# 容器运行一个远程浏览器
## -e 指定容器内的环境变量
docker run --name firefox -d -p 5800:5800 -e "LANG=zh_CN.UTF-8" --restart always jlesage/firefox
  • 1
  • 2
  • 3

创建容器示例:

## -d= --detach
## -t= tty
## -i= input
## -p 8080:8080/udp  # 映射udp端口
## docker run --name 容器名 -dti 镜像名:镜像tag
docker run --name tomcat8080 -dit -p 8080:8080 -p 8080:8080/udp --restart=always -v /dta/webapps/test:/usr/local/tomcat/webapps/test:ro tomcat
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
docker运行指定容器名容器名-d:守护进程;-t: tty伪终端;-i: 允许交互(输入)-p:将宿主机端口映射到容器端口宿主机端口:容器端口允许容器开机自启将(宿主机目录)挂载到(容器目录)宿主机目录:容器目录只读
dockerrun-nametomcat-dti-p8080:8080–restart=always-v/dta/webapps/test:/usr/local/tomcat/webapps/test:ro

进入容器Attach和exec

参考: 容器中超易混淆 Attach 和 Exec 的异同

attach连接的是console进程,如果是个服务进程,什么都看不到。
attachlogs原理是一样的,不能在attach执行脚本
在这里插入图片描述


暂停容器

在这里插入图片描述


删除容器

# 删除容器
docker rm 容器名

# 强制删除容器
docker rm -f 容器名

# 删除所有的容器,包括停止的和运行的
docker rm -f $(docker ps -qa)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

创建容器并在停止时销毁容器

当容器停止运行时,自动删除该容器释放资源

# 创建一个5秒钟后自动停止的容器
docker run --rm --name c1 -ti centos sleep 5

# 5秒钟后查看该容器,已经找不到了
docker ps
  • 1
  • 2
  • 3
  • 4
  • 5

删除所有退出状态的容器

# 删除所有退出状态的容器(包括非docker容器)
docker container prune
  • 1
  • 2

在这里插入图片描述


查看容器

# 列出所有容器(包括非docker启动的容器)
docker container ls
  • 1
  • 2

查看容器的详细信息

# 查看容器的详细信息
docker inspect 容器名
  • 1
  • 2

查看容器信息的指定字段

docker ps -q| xargs docker inspect --format '{{.State.pid}}' 
  • 1
  • 2

在这里插入图片描述
在这里插入图片描述


查看容器执行的完整命令

https://blog.csdn.net/omaidb/article/details/126077851


查看容器日志

https://blog.csdn.net/omaidb/article/details/125600453

# 查看容器日志
docker logs 容器名

# 持续查看容器日志
docker logs -f 容器名
  • 1
  • 2
  • 3
  • 4
  • 5

查看已退出容器的日志

https://blog.csdn.net/omaidb/article/details/125600453


查看容器指定日期的日志

# 查看容器 指定日期的日志
docker logs -t --since="2020-05-XX" 容器id > /tmp/$file.txt
  • 1
  • 2

修改容器名

docker run --name可以指定容器名.使用docker rename可以修改容器名

# 修改容器名
docker rename 旧容器名 新容器名
  • 1
  • 2

指定容器实例的主机名

在这里插入图片描述

# 创建docker容器实例时指定主机名
## -h 指定容器内的主机名
docker run -it --name 容器名 -h 容器实例主机名 镜像名
  • 1
  • 2
  • 3

容器特权privileged

在这里插入图片描述


定位容器的pid

## docker ps -q: 获取所有的容器id,
## 再通过xargs管道,将这些容器id转交给docker inspect命令进行处理,通过-f '{{.State.Pid}} {{.Config.Hostname}}'参数,只打印出来容器当前的pid和容器id
docker ps -q | xargs docker inspect -f '{{.State.Pid}} {{.Config.Hostname}}' | grep $pid
  • 1
  • 2
  • 3

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/305547?site
推荐阅读
相关标签
  

闽ICP备14008679号