Centos7 常用【容器】命令
迪丽瓦拉
2025-05-31 04:09:52
0

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

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

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

docker run -it centos /bin/bash

② 退出并关闭容器 

exit

 

 ③ 不关闭并退出容器

ctrl + P + Q

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

docker start 容器ID或者容器名 

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

docker restart 容器ID或者容器名 

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

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

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

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

curl http://localhost:81

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

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

三、删除容器

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删除 

2. 根据容器名删除

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

docker rm -f $(docker ps -qa)

四、守护式容器命令

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

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

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

docker run -d --name mynginx nginx

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

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

五、查看docker容器日志

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

1. 查看容器所有日志

docker container logs 容器ID

2. 跟随查看容器日志

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

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

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

docker attach 容器ID

相关内容

热门资讯

linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
C++ 机房预约系统(六):学... 8、 学生模块 8.1 学生子菜单、登录和注销 实现步骤: 在Student.cpp的...
A.机器学习入门算法(三):基... 机器学习算法(三):K近邻(k-nearest neigh...
数字温湿度传感器DHT11模块... 模块实例https://blog.csdn.net/qq_38393591/article/deta...
有限元三角形单元的等效节点力 文章目录前言一、重新复习一下有限元三角形单元的理论1、三角形单元的形函数(Nÿ...
Redis 所有支持的数据结构... Redis 是一种开源的基于键值对存储的 NoSQL 数据库,支持多种数据结构。以下是...
win下pytorch安装—c... 安装目录一、cuda安装1.1、cuda版本选择1.2、下载安装二、cudnn安装三、pytorch...
MySQL基础-多表查询 文章目录MySQL基础-多表查询一、案例及引入1、基础概念2、笛卡尔积的理解二、多表查询的分类1、等...
keil调试专题篇 调试的前提是需要连接调试器比如STLINK。 然后点击菜单或者快捷图标均可进入调试模式。 如果前面...
MATLAB | 全网最详细网... 一篇超超超长,超超超全面网络图绘制教程,本篇基本能讲清楚所有绘制要点&#...
IHome主页 - 让你的浏览... 随着互联网的发展,人们越来越离不开浏览器了。每天上班、学习、娱乐,浏览器...
TCP 协议 一、TCP 协议概念 TCP即传输控制协议(Transmission Control ...
营业执照的经营范围有哪些 营业执照的经营范围有哪些 经营范围是指企业可以从事的生产经营与服务项目,是进行公司注册...
C++ 可变体(variant... 一、可变体(variant) 基础用法 Union的问题: 无法知道当前使用的类型是什...
血压计语音芯片,电子医疗设备声... 语音电子血压计是带有语音提示功能的电子血压计,测量前至测量结果全程语音播报࿰...
MySQL OCP888题解0... 文章目录1、原题1.1、英文原题1.2、答案2、题目解析2.1、题干解析2.2、选项解析3、知识点3...
【2023-Pytorch-检... (肆十二想说的一些话)Yolo这个系列我们已经更新了大概一年的时间,现在基本的流程也走走通了,包含数...
实战项目:保险行业用户分类 这里写目录标题1、项目介绍1.1 行业背景1.2 数据介绍2、代码实现导入数据探索数据处理列标签名异...
记录--我在前端干工地(thr... 这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前段时间接触了Th...
43 openEuler搭建A... 文章目录43 openEuler搭建Apache服务器-配置文件说明和管理模块43.1 配置文件说明...