Docker 常用【容器】命令

这篇具有很好参考价值的文章主要介绍了Docker 常用【容器】命令。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Centos7 下载|安装|配置|卸载 Docker:https://liush.blog.csdn.net/article/details/129664121

Centos7 常用【基础|镜像】命令:https://liush.blog.csdn.net/article/details/129665015

容器常用命令

docker run IMAGE

新建启动容器

docker ps  

查看所有正在运行的容器

exit 

停止并退出容器

ctrl + P + Q  

不停止退出容器

docker start 容器ID或者容器名 

启动容器

docker restart 容器ID或者容器名 

重启容器

docker stop 容器ID或者容器名 

停止容器

docker kill 容器ID或者容器名 

强制停止容器

docker rm 容器ID  

删除已停止的容器

docker logs 容器ID  

查看容器日志

docker top 容器ID 

查看容器内运行的进程

docker exec -it 容器ID /bin/bash 

在容器中打开新的终端,并且可以启动新的进程

docker attach 容器ID  

直接进入容器启动命令的终端,不会启动新的进程

docker cp 需要拷贝的文件或目录 容器名称:容器目录 

拷贝文件到容器指定目录下

docker inspect 容器ID或者容器名 

查看容器细节

一、新建并启动容器

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
    --name="容器新名字" # 为容器指定一个名称;
    -d # 后台运行容器,并返回容器ID,也即启动守护式容器;
    -i # 以交互模式运行容器,通常与 -t 同时使用;
    -t # 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
    -P # 随机端口映射,并将容器内部使用的网络端口映射到我们使用的主机上;
    -p # 指定端口映射,有以下四种格式
          ip:hostPort:containerPort
          ip::containerPort
          hostPort:containerPort # 将containerPort映射到主机上的hostPort端口
          containerPort

    -v 主机目录:容器目录 # 挂载 宿主机的目录挂载到容器的指定目录 

1. 新建容器指定一个名称

docker run --name=testname hello-world

docker 启动容器命令,# Docker,docker,容器,运维

2. 交互模式运行容器并分配一个伪输入终端

① 执行后进入到容器内部,只有简单的linux命令可以使用

docker run -it centos /bin/bash

docker 启动容器命令,# Docker,docker,容器,运维

② 退出并关闭容器 

exit

 docker 启动容器命令,# Docker,docker,容器,运维

 ③ 不关闭并退出容器

ctrl + P + Q

3. 根据容器ID或名字 启动

docker start 容器ID或者容器名 

docker 启动容器命令,# Docker,docker,容器,运维

docker 启动容器命令,# Docker,docker,容器,运维

4. 根据容器ID或名字 重启

docker restart 容器ID或者容器名 

docker 启动容器命令,# Docker,docker,容器,运维

5. 本地内容拷贝到容器目录下

docker cp 需要拷贝的文件或目录 容器名称:容器目录 

docker 启动容器命令,# Docker,docker,容器,运维

docker 启动容器命令,# Docker,docker,容器,运维

6. 创建启动容器映射端口号,访问测试

# 配置容器映射到宿主机中的端口号
docker run -d  --name 容器名  -p 宿主机端口号:容器内的端口号  镜像名称[:tag]
# 绑定宿主机ip+端口号: 只能通过绑定的ip和端口号 访问容器
docker run -d  --name 容器名  -p ip:宿主机端口号:容器内的端口号  镜像名称[:tag]

docker run -d --name mynginx -p 81:80 nginx

docker 启动容器命令,# Docker,docker,容器,运维

curl http://localhost:81

docker 启动容器命令,# Docker,docker,容器,运维

docker 启动容器命令,# Docker,docker,容器,运维

注:如果访问失败,可能是网络问题或者防火墙没关!

配置前docker容器因为需要监听宿主机的端口号,有可能出现ipv4通信失败的问题,解决办法如下:

# 修改配置文件:
vim /usr/lib/sysctl.d/00-system.conf
# 添加内容
net.ipv4.ip_forward=1
# 保存退出 重启网络 

systemctl restart network

# 重启容器

docker restart 容器名

7.  创建容器挂载卷(挂载本地文件到容器内)

创建docker容器时,将本地目录挂载到nginx容器指定目录下,将来可以访问nginx中的资源

docker run -d --name=mynginx -p 81:80 -v /opt/html:/opt/ nginx

docker 启动容器命令,# Docker,docker,容器,运维

cp 拷贝到容器中的文件,容器中的是副本,宿主机和容器互不影响!

挂载后的目录中,宿主机修改后,容器内核宿主机文件一致!

docker 启动容器命令,# Docker,docker,容器,运维

二、查询容器

docker ps [OPTIONS]
    -a # 列出当前所有正在运行的容器+历史上运行过的
    -l # 显示最近创建的容器。
    -n # 显示最近n个创建的容器。   docker ps -n 3
    -q # 静默模式,只显示容器编号。
    --no-trunc # 不截断输出。

docker 启动容器命令,# Docker,docker,容器,运维

三、删除容器

docker rm 容器ID # 删除指定容器
docker rm 容器Name # 根据容器名删除容器

docker rm $(docker ps -a -q) # 删除所有容器,正在运行的容器无法删除
docker rm -f $(docker ps -a -q) # 删除所有容器,包括正在运行的容器
docker ps -a -q | xargs docker rm # 删除所有容器,不包括正在运行的容器

1. 根据容器ID删除 

docker 启动容器命令,# Docker,docker,容器,运维

2. 根据容器名删除

docker 启动容器命令,# Docker,docker,容器,运维

3. 删除所有容器,包括正在运行的容器

docker rm -f $(docker ps -qa)

docker 启动容器命令,# Docker,docker,容器,运维

四、守护式容器命令

执行命令 docker run 容器名 创建并启动容器,然后docker ps -a 进行查看, 会发现容器已经退出。

容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就是会自动退出的。这个是docker的机制问题:容器后台启动后,如果他觉得他没事可做会立即自杀。

1. 台模式启动一个容器用守护式命令 

docker run -d --name mynginx nginx

docker 启动容器命令,# Docker,docker,容器,运维

2. 创建并启动docker容器 脚本

docker run -d --name=mycentos centos /bin/bash -c "while true;do echo hello zzyy;sleep 2;done"

docker 启动容器命令,# Docker,docker,容器,运维

五、查看docker容器日志

以后容器创建或者启动失败,可以通过日志分析错误原因!

1. 查看容器所有日志

docker container logs 容器ID

docker 启动容器命令,# Docker,docker,容器,运维

2. 跟随查看容器日志

docker logs -f -t --tail n 容器ID  # 查看容器日志 
    -t # 是加入时间戳
    -f # 跟随最新的日志打印
    --tail 数字 # 显示最后多少条

docker 启动容器命令,# Docker,docker,容器,运维

ctrl+c 可以退出跟随查看  

六、重新进入docker

docker exec -it 容器ID或名字 /bin/bash  # 在容器中打开新的终端,并且可以启动新的进程

# 打开新的终端进入容器:exit退出容器时,容器不会关闭
docker attach 容器ID  # 直接进入容器启动命令的终端,不会启动新的进程

# 直接进入容器使用容器自己的终端:exit退出容器时,容器会关闭
docker exec -it 容器ID ls -l /tmp # 在容器外执行docker内命令

1. 在容器中打开新的终端,并且可以启动新的进程

docker exec -it 容器ID /bin/bash

docker 启动容器命令,# Docker,docker,容器,运维

docker 启动容器命令,# Docker,docker,容器,运维

2. 直接进入容器启动命令的终端,不会启动新的进程

docker attach 容器ID

docker 启动容器命令,# Docker,docker,容器,运维

docker 启动容器命令,# Docker,docker,容器,运维文章来源地址https://www.toymoban.com/news/detail-628132.html

到了这里,关于Docker 常用【容器】命令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Docker 常用【容器】命令

    Centos7 下载|安装|配置|卸载 Docker:https://liush.blog.csdn.net/article/details/129664121 Centos7 常用【基础|镜像】命令:https://liush.blog.csdn.net/article/details/129665015 容器常用命令 docker run IMAGE 新建启动容器 docker ps   查看所有正在运行的容器 exit  停止并退出容器 ctrl + P + Q   不停止退出容器

    2024年02月14日
    浏览(44)
  • docker常用容器命令

    首先说下容器: 它是指当docker运行镜像时,创建了一个隔离环境,称之为 容器 。  这种方式优点:可以开启多个服务,服务之前是互相隔离的(比如:在一台服务器上可以开启多个mysql,可以是多个不同版本或者多个相同版本,这样如果多个项目依赖不同mysql版本,也可以部

    2024年02月19日
    浏览(70)
  • 【云原生丶Docker】Docker容器常用命令大全

    在 Docker 核心概念理解 一文中,我们知道 Docker容器 其实就是一个轻量级的沙盒,应用运行在不同的容器中从而实现隔离效果。容器的创建和运行是以镜像为基础的,容器可以被创建、销毁、启动和停止等。本文将介绍下容器的这些常用操作命令。 docker run 命令表示新建并运

    2024年02月04日
    浏览(51)
  • docker 容器日志查看常用命令

    查看最新日志: 将 container_name_or_id 替换为容器的名称或容器ID。这将显示容器的最新日志输出。 实时查看日志: 使用 -f 参数,你可以实时跟踪容器的日志输出,类似于 tail -f 命令。 查看指定行数的日志: 使用 --tail 参数,可以指定查看的日志行数。将 number_of_lines 替换为你

    2024年02月05日
    浏览(51)
  • Docker容器常用命令笔记分享

    Docker是一个开源的应用容器引擎,可以让开发者将应用程序及其依赖打包成一个可移植的容器,然后发布到任何支持Docker的机器上,实现应用程序在不同环境中的一致性运行。相比传统的虚拟化技术,Docker具有更轻量级、更快速、更高效的特点。使用Docker可以方便地创建、部

    2024年03月17日
    浏览(51)
  • 查看正在运行docker容器的启动命令

    该命令主要是为了详细展示查看运行时的command参数 使用docker inspect,但是docker inspect打印的是json文件,需要挑选字段查看,容器的参数信息都能从json文件中解析出来。 通过runlike去查看一个容器的docker run启动参数

    2024年02月13日
    浏览(53)
  • docker 常用删除镜像和容器命令记录

    通过如下两个都可以删除镜像: 1 docker rmi [image] 或者: 1 docker image rm [image] 支持的子命令如下: -f, -force : 强制删除镜像,即便有容器引用该镜像; -no-prune : 不要删除未带标签的父镜像;  例子: 1. 想要删除容器,则要先停止所有容器(当然,也可以加-f强制删除,但是不推

    2024年02月12日
    浏览(48)
  • Docker容器常用命令大全:熟练掌握使容器优化更加高效

    🌷🍁 博主 libin9iOak带您 Go to New World.✨🍁 🦄 个人主页——libin9iOak的博客🎐 🐳 《面试题大全》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 🌊 《IDEA开发秘籍》学会IDEA常用操作,工作效率翻倍~💐 🪁🍁 希望本文能够给您带来一定的帮助🌸文章粗浅,敬

    2024年02月16日
    浏览(69)
  • docker 常用命令大全(基础、镜像、容器、数据卷)

    镜像的名称组成: 镜名称一般分两部分组成:[repository]:[tag]。 在没有指定tag时,默认是latest,代表最新版本的镜像 如图: 这里的mysql就是repository,5.7就是tag,合一起就是镜像名称,代表5.7版本的MySQL镜像。 常见的镜像操作命令如图: 从DockerHub中拉取一个nginx镜像并查看 1)

    2024年03月12日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包