容器命令

简介: 介绍Docker容器常用命令,涵盖创建、启动、端口映射、日志查看、文件拷贝及数据卷挂载等操作,详解交互式与守护式容器运行模式、exec与attach区别、commit提交镜像、容器继承数据卷等核心知识点,助力掌握容器生命周期管理。

05-容器命令
新建启动容器
常用的参数:
--name:为容器指定一个名称
-d:后台运行容器并返回容器ID,也即启动守护式容器
-i:以交互模式(interactive)运行容器,通常与-t同时使用
-t:为容器重新分配一个伪输入终端(tty),通常与-i同时使用。也即启动交互式容器(前台有伪终端,等待交互)
-e:为容器添加环境变量
-P:随机端口映射。将容器内暴露的所有端口映射到宿主机随机端口
-p:指定端口映射
-p指定端口映射的几种不同形式:
-p hostPort:containerPort:端口映射,例如-p 8080:80
-p ip:hostPort:containerPort:配置监听地址,例如 -p 10.0.0.1:8080:80
-p ip::containerPort:随机分配端口,例如 -p 10.0.0.1::80
-p hostPort1:containerPort1 -p hostPort2:containerPort2:指定多个端口映射,例如-p 8080:80 -p 8888:3306
启动交互式容器
以交互方式启动ubuntu镜像
退出交互模式:
方式1:
方式2:使用快捷键ctrl + P + Q
方式1 退出后,容器会停止;
方式2 退出后容器依然正在运行。
启动守护式容器
大部分情况下,我们系统docker容器服务时在后台运行的,可以通过-d指定容器的后台运行模式:
注意事项:
如果使用docker run -d ubuntu尝试启动守护式的ubuntu,会发现容器启动后就自动退出了。
因为Docker容器如果在后台运行,就必须要有一个前台进程。容器运行的命令如果不是那些一直挂起的命令(例如top、tail),就会自动退出。
列出正在运行的容器
列出所有正在运行的容器:
常用参数:
-a:列出当前所有正在运行的容器+历史上运行过的容器
-l:显示最近创建的容器
-n:显示最近n个创建的容器
-q:静默模式,只显示容器编号
容器其他启停操作
启动已经停止的容器
重启容器
停止容器
强制停止容器
删除容器
删除已经停止的容器:
删除容器是 docker rm,删除镜像是 docker rmi,注意区分。
强制删除正在运行的容器:
一次删除多个容器实例:
查看容器日志
查看容器内运行的进程
查看容器内部细节
进入正在运行的容器
进入正在运行的容器,并以命令行交互:
重新进入:
docker exec 和 docker attach 区别:
attach直接进入容器启动命令的终端,不会启动新的进程,用exit退出会导致容器的停止
exec是在容器中打开新的终端,并且可以启动新的进程,用exit退出不会导致容器的停止
如果有多个终端,都对同一个容器执行了 docker attach,就会出现类似投屏显示的效果。一个终端中输入输出的内容,在其他终端上也会同步的显示。
容器和宿主机文件拷贝
容器内文件拷贝到宿主机:
宿主机文件拷贝到容器中:
导入和导出容器
export:导出容器的内容流作为一个tar归档文件(对应import命令);
import:从tar包中的内容创建一个新的文件系统再导入为镜像(对应export命令);
示例:
将容器生成新镜像
docker commit提交容器副本使之成为一个新的镜像。
docker 启动一个镜像容器后, 可以在里面执行一些命令操作,然后使用docker commit将新的这个容器快照生成一个镜像。
Docker挂载主机目录,可能会出现报错:cannot open directory .: Perission denied。
解决方案:在命令中加入参数 --privileged=true。
CentOS7安全模块比之前系统版本加强,不安全的会先禁止,目录挂载的情况被默认为不安全的行为,在SELinux里面挂载目录被禁止掉了。如果要开启,一般使用 --privileged=true,扩大容器的权限解决挂载没有权限的问题。也即使用该参数,容器内的root才拥有真正的root权限,否则容器内的root只是外部的一个普通用户权限。
容器数据卷
卷就是目录或文件,存在于一个或多个容器中,由docker挂载到容器,但不属于联合文件系统,因此能够绕过UnionFS,提供一些用于持续存储或共享数据。
特性:卷设计的目的就是数据的持久化,完全独立于容器的生存周期,因此Docker不会在容器删除时删除其挂载的数据卷。
特点:
数据卷可以在容器之间共享或重用数据
卷中的更改可以直接实施生效
数据卷中的更改不会包含在镜像的更新中
数据卷的生命周期一直持续到没有容器使用它为止
运行一个带有容器卷存储功能的容器实例:
Shell
运行代码
复制代码
1
docker run -it --privileged=true -v 宿主机绝对路径目录:容器内目录[rw | ro] 镜像名
可以使用docker inspect查看容器绑定的数据卷。
权限:
rw:读写
ro:只读。如果宿主机写入内容,可以同步给容器内,容器内可以读取。
容器卷的继承:
Shell
运行代码
复制代码
1
2
3
4
5

启动一个容器

docker run -it --privileged=true /tmp/test:/tmp/docker --name u1 ubuntu /bin/bash

使用 --volumes-from 继承 u1的容器卷映射配置

docker run -it --privileged=true --volumes-from u1 --name u2 ubuntu

相关文章
|
Ubuntu
ubuntu 22.04 阿里源
ubuntu 22.04 阿里源
15491 0
|
3月前
|
存储 Java 索引
单/双链表代码实现
本文详解单/双链表的代码实现,涵盖增删查改操作。重点解析三大技巧:1)同时持有头尾节点引用以优化插入删除效率;2)使用虚拟头尾节点简化边界处理;3)避免内存泄漏的良好编程习惯。适合掌握链表基础后深入学习。
|
3月前
|
存储 算法 Java
链表(链式存储)基本原理
链表是一种通过指针串联节点的线性结构,无需连续内存,支持高效增删。单链表仅有next指针,双链表增加prev指针以支持双向遍历。相比数组,链表插入删除灵活,无扩容负担,但不支持随机访问,查找需从头遍历。实际开发中常用双链表,配合虚拟头结点简化操作。
|
3月前
|
JSON Shell Linux
Registry搭建
本文介绍如何搭建Docker私有镜像仓库(Registry)。通过拉取官方Registry镜像并运行,配置insecure-registries支持HTTP,重启Docker服务后,可为镜像打标签并推送到私仓,再通过curl验证镜像目录,最后实现私仓的拉取与使用,完成私有化管理。
|
3月前
|
存储 算法 搜索推荐
线性结构检索:从数组和链表的原理初窥检索本质
本节深入解析数组与链表的存储特性及其对检索效率的影响。数组支持随机访问,适合二分查找,检索效率为O(log n);链表虽检索较慢,但插入删除高效,适用于频繁动态调整场景。通过改造链表结构,如结合数组提升检索性能,揭示了数据组织方式对检索的核心作用,帮助理解“快速缩小查询范围”这一检索本质。
|
3月前
|
存储 数据采集 搜索推荐
状态检索:如何快速判断一个用户是否存在?
本文探讨如何高效判断用户是否存在,对比有序数组、二分查找树和哈希表后,引出更优方案:位图与布隆过滤器。位图以bit为单位存储,大幅节省空间;布隆过滤器通过多哈希函数降低冲突概率,虽有一定误判率,但查询效率达O(1),适用于注册去重、爬虫去重等场景,是提升系统性能的关键技术。
|
3月前
|
Java Maven 数据安全/隐私保护
Nexus仓库
Nexus是一款开源仓库管理工具,支持Maven、NPM、Docker等格式。本文介绍其在Linux与Docker环境下的安装配置,包括JDK部署、OSS版下载、仓库创建、用户权限管理及密码重置方法,并涵盖私服搭建、持久化存储、资源上传与匿名访问设置,助力企业高效构建私有仓库体系。
|
3月前
|
关系型数据库 MySQL Shell
Docker
本文介绍Docker下载加速的两种方法:一是使用网易数帆、阿里云等镜像仓库,如`hub.c.163.com/library/mysql`;二是配置阿里云专属加速器地址至`/etc/docker/daemon.json`,提升官方镜像拉取速度。同时支持在`daemon.json`中设置HTTP/HTTPS代理,适用于科学上网环境。配置后重启Docker服务即可生效,显著提升镜像下载效率。(239字)
|
3月前
|
存储 缓存 搜索推荐
特别加餐丨倒排检索加速(二):如何对联合查询进行加速?
本文深入探讨联合查询的加速方法,针对倒排索引中复杂查询场景,系统介绍四种工业级优化技术:调整次序法通过优化求交/并集顺序降低计算代价;快速多路归并法利用跳表提升多列表合并效率;预先组合法提前计算高频查询结果;缓存法则借助LRU机制动态存储热点组合,显著提升检索性能。
|
3月前
|
存储 搜索推荐 算法
特别加餐 | 倒排检索加速(一):工业界如何利用跳表、哈希表、位图进行加速?
本文深入解析工业界如何利用跳表、哈希表和位图加速倒排索引的交集运算。通过跳表实现快速跳跃查找,哈希表提升小集合匹配效率,位图及Roaring Bitmap优化存储与计算,结合实际场景分析各类技术的适用条件与性能权衡,揭示搜索引擎背后的高效检索原理。(238字)

热门文章

最新文章