Docker基础 容器基础命令操作与详解,学docker必须要会的容器命令

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 这篇文章写了我们学习docker必须要会的基础容器命令,文章会给出这些命令的详细解释和每个参数的使用方法,帮助大家更快的掌握这些命令


以下命令是我们学docker必须要闭着眼睛都要会的基础容器命令:

注意:我们需要拥有镜像才可以创建容器,这里我们下载一个centos镜像来测试学习。

docker pull centos #不写标签默认下载最新版镜像

docker run    新建容器并启动:
docker run [可选参数] 镜像名或ID

参数说明

--name="Name" 容器名字 tomcat01 tomcat02,用来区分容器
-d 后台方式运行
-it 使用交互方式运行,进入容器查看内容
-p 指定容器的端口 -p 8080:8080


-p 主机端口:容器端口 (常用) 
-p 容器端口
-p ip:主机端口:容器端口
 容器端口

-P 随机指定端口 大写的P是随机指定端口,小写的p是手动配置端口

测试,启动并进入容器:

[root@localhost ~]# docker run -it centos /bin/bash #以交互式的运行方式启动容器
[root@a2661bc2e2da /]#

启动成功后,主机名会变成镜像ID

[root@a2661bc2e2da /]# ls
bin dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var

推出容器命令:exit

[root@a2661bc2e2da /]# exit
exit
[root@localhost ~]# ls
anaconda-ks.cfg initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面
[root@localhost ~]#

退出容器
exit        #停止并退出容器

使用快捷键Ctrl+p+q        #不停止退出容器

停止并退出容器

[root@a2661bc2e2da /]# exit
exit

退出容器,但不停止容器,容器依旧在后台运行

[root@localhost ~]# docker run -it centos /bin/bash
[root@dd5995bd32c8 /]# [root@localhost ~]# #使用快捷键Ctrl+p+q
[root@localhost ~]#

容器内的目录和容器外的目录互相隔离,互不影响。

docker ps    查看容器
参数 :

不带参数        #列出当前正在运行的容器

-a        #列出当前正在运行的容器+带出历史运行过的容器,就等于列出所有容器

-n=?        #显示最近创建的容器  (?的意思是你想看到最近创建的几个容器,填写数字即可)

-q        #只显示容器编号          可以与-a组合使用,-aq查看所有容器的编号,和镜像命令用法相同

[root@localhost ~]# docker ps #查看正在运行的容器
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

[root@localhost ~]# docker ps -a #查看所有容器
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a2661bc2e2da centos "/bin/bash" 9 minutes ago Exited (0) 4 minutes ago boring_chatelet
654f4f39c05e feb5d9fea6a5 "/hello" 3 days ago Exited (0) 3 days ago compassionate_liskov

[root@localhost ~]# docker ps -n=1 #查看最近创建的一个容器
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a2661bc2e2da centos "/bin/bash" 12 minutes ago Exited (0) 7 minutes ago boring_chatelet

[root@localhost ~]# docker ps -aq #查看所有容器的ID编号
a2661bc2e2da
654f4f39c05e
删除容器

删除单个容器:

docker rm -f 容器名或ID

删除所有容器

docker rm -f $(docker ps -aq) #将所有的容器id传递给删除命令,递归删除

第二种删除全部容器的命令:

docker ps -a -q|xargs docker rm

$() 传递参数给该命令
image.png

测试:

[root@localhost ~]# docker rm -f $(docker ps -aq)
dd5995bd32c8 #删除容器会显示出被删除的容器ID
a2661bc2e2da
654f4f39c05e
[root@localhost ~]#
启动和停止容器的操作:

使用这些命令的基础是需要创建了镜像,没有镜像不能直接start启动

docker start 容器ID #启动一个停止的容器
docker restart 容器ID #重启一个容器
docker stop 容器ID #停止一个容器
docker kill 容器ID #暴力停止容器,直接杀死这个容器,强制停止容器
若docker stop报错了 则可以使用docker kill 强制停止容器

根据之前的 $() 符号,可以衍生到这些命令

启动所有容器

[root@localhost ~]# docker start $(docker ps -aq)
f8f5f28eabee
27833ac6fc62
7f497e338757

停止所有容器

[root@localhost ~]# docker stop $(docker ps -aq)
f8f5f28eabee
27833ac6fc62
7f497e338757

也可以重启所有容器等等操作
$()符号 很常用,很方便
进入容器:
进入容器的前提是启动容器

进入容器命令:

docker attach 容器名;ID

启动一个已经创建好的容器

[root@localhost ~]# docker start f8f5f28eabee
f8f5f28eabee

进入这个启动的容器

[root@localhost ~]# docker attach f8f5f28eabee
[root@f8f5f28eabee /]#

相关文章
|
1月前
|
数据库 Docker 容器
docker容器为啥会开机自启动
通过配置适当的重启策略,Docker容器可以在主机系统重启后自动启动。这对于保持关键服务的高可用性和自动恢复能力非常有用。选择适合的重启策略(如 `always`或 `unless-stopped`),可以确保应用程序在各种情况下保持运行。理解并配置这些策略是确保Docker容器化应用可靠性的关键。
224 93
|
4天前
|
网络协议 API Docker
Docker+consul容器服务的更新与发现
通过本文的介绍,我们详细探讨了如何结合Docker和Consul来实现容器服务的更新与发现。通过Consul的服务注册和发现功能,可以高效地管理和监控容器化服务,确保系统的高可用性和可扩展性。希望本文能帮助您在实际项目中更好地应用Docker和Consul,提高系统的可靠性和管理效率。
37 23
|
4天前
|
Ubuntu API 网络虚拟化
ubuntu22 编译安装docker,和docker容器方式安装 deepseek
本脚本适用于Ubuntu 22.04,主要功能包括编译安装Docker和安装DeepSeek模型。首先通过Apt源配置安装Docker,确保网络稳定(建议使用VPN)。接着下载并配置Docker二进制文件,创建Docker用户组并设置守护进程。随后拉取Debian 12镜像,安装系统必备工具,配置Ollama模型管理器,并最终部署和运行DeepSeek模型,提供API接口进行交互测试。
90 15
|
2月前
|
NoSQL 关系型数据库 MySQL
《docker高级篇(大厂进阶):4.Docker网络》包括:是什么、常用基本命令、能干嘛、网络模式、docker平台架构图解
《docker高级篇(大厂进阶):4.Docker网络》包括:是什么、常用基本命令、能干嘛、网络模式、docker平台架构图解
201 56
《docker高级篇(大厂进阶):4.Docker网络》包括:是什么、常用基本命令、能干嘛、网络模式、docker平台架构图解
|
1月前
|
Ubuntu NoSQL Linux
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
158 6
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
|
2月前
|
搜索推荐 安全 数据安全/隐私保护
7 个最能提高生产力的 Docker 容器
7 个最能提高生产力的 Docker 容器
194 35
|
1月前
|
数据库 Docker 容器
docker容器为啥会开机自启动
通过配置适当的重启策略,Docker容器可以在主机系统重启后自动启动。这对于保持关键服务的高可用性和自动恢复能力非常有用。选择适合的重启策略(如 `always`或 `unless-stopped`),可以确保应用程序在各种情况下保持运行。理解并配置这些策略是确保Docker容器化应用可靠性的关键。
62 17
|
2月前
|
Ubuntu Linux 开发工具
docker 是什么?docker初认识之如何部署docker-优雅草后续将会把产品发布部署至docker容器中-因此会出相关系列文章-优雅草央千澈
Docker 是一个开源的容器化平台,允许开发者将应用程序及其依赖项打包成标准化单元(容器),确保在任何支持 Docker 的操作系统上一致运行。容器共享主机内核,提供轻量级、高效的执行环境。本文介绍如何在 Ubuntu 上安装 Docker,并通过简单步骤验证安装成功。后续文章将探讨使用 Docker 部署开源项目。优雅草央千澈 源、安装 Docker 包、验证安装 - 适用场景:开发、测试、生产环境 通过以上步骤,您可以在 Ubuntu 系统上成功安装并运行 Docker,为后续的应用部署打下基础。
96 8
docker 是什么?docker初认识之如何部署docker-优雅草后续将会把产品发布部署至docker容器中-因此会出相关系列文章-优雅草央千澈
|
1月前
|
运维 Java 虚拟化
《docker基础篇:1.Docker简介》,包括Docker是什么、容器与虚拟机比较、能干嘛、去哪下
《docker基础篇:1.Docker简介》,包括Docker是什么、容器与虚拟机比较、能干嘛、去哪下
117 12
|
2月前
|
存储 Kubernetes 开发者
容器化时代的领航者:Docker 和 Kubernetes 云原生时代的黄金搭档
Docker 是一种开源的应用容器引擎,允许开发者将应用程序及其依赖打包成可移植的镜像,并在任何支持 Docker 的平台上运行。其核心概念包括镜像、容器和仓库。镜像是只读的文件系统,容器是镜像的运行实例,仓库用于存储和分发镜像。Kubernetes(k8s)则是容器集群管理系统,提供自动化部署、扩展和维护等功能,支持服务发现、负载均衡、自动伸缩等特性。两者结合使用,可以实现高效的容器化应用管理和运维。Docker 主要用于单主机上的容器管理,而 Kubernetes 则专注于跨多主机的容器编排与调度。尽管 k8s 逐渐减少了对 Docker 作为容器运行时的支持,但 Doc
172 5
容器化时代的领航者:Docker 和 Kubernetes 云原生时代的黄金搭档