Docker安装(Docker Engine安装)
一、Docker Engine和Desktop区别
Docker Engine
- 核心组件:Docker Engine是Docker的核心运行时引擎,负责构建、运行和管理容器。它包括守护进程(dockerd)、API和命令行工具客户端(docker)。
- 适用环境:Docker Engine适用于没有图形界面的设备,如服务器或虚拟机。它通过命令行界面进行操作,适合需要高度定制化和高性能的生产环境。
- 特点:Docker Engine提供灵活的API和工具集,支持高级功能如自定义网络配置和安全设置,适合对性能和安全性要求较高的场景。支持常见的Linux平台(未直接提供Mac、Window版)
Docker Desktop
- 桌面应用:Docker Desktop是一个桌面应用程序,提供了图形界面,支持三类平台:Mac、Windows、带图形界面的Linux,为用户提供了直观地管理容器。
- 集成特性:它除了包含Docker Engine外,还集成了以下功能:
- Docker Engine
- Docker CLI client
- Docker Scout (additional subscription may apply)
- Docker Build
- Docker Extensions
- Docker Compose
- Docker Content Trust
- Kubernetes
- Credential Helper
总结下:
Docker Engine是核心,提供命令方式,适合生产服务器环境(也称为Docker CE)。
Docker Desktop不仅包含Engine还集成有其他功能,提供图形操作界面。
二、安装Docker
我们以CentOS 7.9 64bit为例,安装Docker Engine。
其官方说明文档链接:https://docs.docker.com/engine/
注意:对于CentOS 8或者CentOS 9使用dnf包管理器,对于CentOS使用yum包管理器。dnf与yum两者命令参数大致类似。
1、安装docker如下:
# 移除Linux上可能存在的旧版本docker
sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine# 配置docker的yum源。因官方提供https://download.docker.com/linux/centos/docker-ce.repo的比较慢,因此配置为国内阿里源
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo# (二选一)安装最新docker软件
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin# (二选一)安装某个指定版本docker软件(先列出,再选择版本安装)
yum list docker-ce --showduplicates | sort -r
sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io docker-buildx-plugin docker-compose-plugin# 安装后,查看docker版本号
docker version
注意:以上安装docker时,会自动创建名为“docker”的Linux组。
2、启动docker
# 设置:随Linux开机而自动启动docker
sudo systemctl enable docker# 启动docker(若在上步enable命令最后增加“ --now”,则无需再执行以下start)
sudo systemctl start docker
3、启动docker后,通过docker info查看信息

三、配置Docker Image国内镜像源
Docker默认的镜像源是DockerHub,访问较慢。因此我们配置国内镜像源。
1、在/etc/docker/daemon.json文件(若不存该文件则新建),增加以下内容(其中国内源URL可能失效则自行搜索寻找):
{"registry-mirrors": ["https://docker.m.daocloud.io","https://docker.rainbond.cc","https://docker.1panelproxy.com"]
}
2、重启docker守护进程,使配置的国内镜像源生效。
# 重启Docker守护进程
sudo systemctl daemon-reload
sudo systemctl restart docker
3、重启docker后,通过docker info查看信息。可以看到最后的Registry Mirrors信息

4、执行“sudo docker run hello-world”下载image并运行。正常结果如下,可以看到提示本地没有该image则从网上pull镜像,最后运行容器,显示“Hello from Docker!”。

自此,Docker在Linux上安装成功!
四、赋权非root用户
默认只能root用户才能执行docker命令,为了让Linux上普通用户也能执行,可把指定用户加入至“docker”组中,这样该用户也可以执行docker命令了。
sudo usermod -aG docker 用户名
附:内网离线方式
- 安装
以上安装docker是联机在线方式,不适合内网。 对于内网离线,可以手工下载rpm包并拷贝进内网Linux服务器,然后通过yum安装本地rpm包方式进行安装。
具体可参加官网:https://docs.docker.com/engine/install/centos/#install-from-a-package
- image获取
以上docker run或者docker pull是联机在线方式,不适合内网。 对于内网离线,可以分两步:
①先在外网获取image后,然后通过以下命令导出保存为tar文件
docker save -o myimage.tar IMAGE_NAME:TAG
②将tar文件拷贝进内网Linux服务器,然后本地从tar文件加载作为image
docker load -i /path/myimage.tar
相关文章:
Docker安装(Docker Engine安装)
一、Docker Engine和Desktop区别 Docker Engine 核心组件:Docker Engine是Docker的核心运行时引擎,负责构建、运行和管理容器。它包括守护进程(dockerd)、API和命令行工具客户端(docker)。适用环境&#…...
数组的深度监听deep
场景:组件提供的emit事件可能被占用,在不能使用事件提交的情况下,就要上watch数组监听了,但是是发现只有在数组的长度发生变化的时候才会触发监听,这怎么行。。。。。 对于对象数组的深度监听,如果没有正确…...
点击锁定按钮,锁定按钮要变成解锁按钮,然后状态要从待绑定变成 已锁定(升级版)
文章目录 1、updateInviteCodeStatus2、handleLock3、InviteCodeController4、InviteCodeService5、CrudRepository 点击锁定按钮,锁定按钮要变成解锁按钮,然后状态要从待绑定变成 已锁定:https://blog.csdn.net/m0_65152767/article/details…...
UniApp 性能优化策略
一、引言 在当今数字化时代,移动应用的性能成为影响用户留存与满意度的关键因素。UniApp 作为一款热门的跨平台开发框架,以一套代码适配多端的特性极大提升了开发效率,但同时也面临着性能优化的挑战。优化 UniApp 性能,不仅能够让…...
【Linux报告】实训六 重置超级用户密码
实训六 重置超级用户密码 2018编写-今日公布 【练习一】忘记root密码 步骤一:开启或重启系统,并且要在五秒之内按任何键; 步骤二:按任意键,停止进入系统,按【e】键,跳转新页面,再…...
smolagents:一个用于构建代理的简单库
HF推出 smolagents,一个非常简单的库,它能够解锁语言模型的代理功能。以下是它的简要介绍: from smolagents import CodeAgent, DuckDuckGoSearchTool, HfApiModelagent CodeAgent(tools[DuckDuckGoSearchTool()], modelHfApiModel())agent…...
通过Dockerfile来实现项目可以指定读取不同环境的yml包
通过Dockerfile来实现项目可以指定读取不同环境的yml包 1. 挂载目录2. DockerFile3. 运行脚本deploy.sh4. 运行查看日志进入容器 5. 接口测试修改application-dev.yml 6. 优化Dockerfile7. 部分参数解释8. 优化不同环境下的日志也不同调整 Dockerfile修改部署脚本 deploy.sh重新…...
云手机 —— 手机矩阵的 “超级外挂
如何打造手机矩阵 打造手机矩阵主要包括以下几个步骤: 1.确定目标与需求:首先,明确打造手机矩阵的目的和需求,是为了进行电商运营、自媒体推广、任务管理还是其他目的。这将决定后续的手机数量、操作系统选择以及应用安装等。 2.选择手机与操作系统:根据…...
OpenCV的TickMeter计时类
OpenCV的TickMeter计时类 1. TickMeter是一个计时的类1.1 计算耗时1.2 计算循环的平均耗时和FPS1.3 function 2. 案例 1. TickMeter是一个计时的类 https://docs.opencv.org/4.x/d9/d6f/classcv_1_1TickMeter.html#details 1.1 计算耗时 TickMeter tm;tm.start();// do some…...
蓝桥杯JAVA刷题--001
文章目录 题目需求2.代码3.总结 题目需求 2.代码 class Solution {public String convertDateToBinary(String date) {if (date null || date.length() ! 10 || date.charAt(4) ! - || date.charAt(7) ! -) {throw new IllegalArgumentException("输入的日期格式不正确&…...
免费又开源:企业级物联网平台的新选择 ThingsPanel
在开源领域,选择合适的开源协议是开发者和企业能否充分利用平台的关键。ThingsPanel,作为一个专注于物联网的开源平台,近日将协议从 AGPLv3 改为更开放的 Apache 2.0。这一改变对开发者和用户意味着什么? 为什么协议要从 AGPLv3 转…...
鸿蒙开发:文本合成语音
前言 Android开发的同学都知道,在Android当中,实现一段文字合成语音播放,可以使用系统提供的对象TextToSpeech来很快的实现,如果不用系统自带的,也可以使用三方提供的,比如讯飞的语音合成等等,总…...
雷军:科技传奇的逐梦之旅
亲爱的小伙伴们😘,在求知的漫漫旅途中,若你对深度学习的奥秘、Java 与 Python 的奇妙世界,亦或是读研论文的撰写攻略有所探寻🧐,那不妨给我一个小小的关注吧🥰。我会精心筹备,在未来…...
LeetCode - 初级算法 数组(删除排序数组中的重复项)
免责声明:本文来源于个人知识与公开资料,仅用于学术交流。 删除排序数组中的重复项 这篇文章讨论如何从一个非严格递增的数组 nums 中删除重复的元素,使每个元素只出现一次,并返回新数组的长度。因为数组是排序的,只要是相同的肯定是挨着的,所以我们需要遍历所有数组,然…...
2024年度培训运维总结
目前带的弟子跟我实战训练运维的总就业率基本可以稳定在 100% 左右(因为我不带小白和没学历和大龄,悟性低都筛掉了还能找我说明条件够了) 以下是弟子私教训练营的最新就业数据(2024年12月25日): 面试辅导…...
java重装小结
一、Java安装 安装路径 https://www.oracle.com/java/technologies/javase/javas e8-archive-downloads.html 具体类型可参考: Java安装配置-CSDN博客 我在这一步主要碰到的问题就是访问官网报404错误,可参考: 在oracle官网下载资源显示…...
ubuntu20.04 中文输入法安装
中文输入法安装指南 在 Ubuntu 20.04 上安装中文输入法,您可以按照以下步骤操作: 打开终端。安装 fcitx 输入法框架和中文输入法模块:sudo apt update sudo apt install fcitx fcitx-pinyin安装中文语言支持:sudo apt install l…...
SQL常用语句(基础)大全
SQL语句的类型 1.DDL 1.库2.表 2.DML 1.插入数据 insert inot2.删除数据 delete / truncate3.修改数据 update set 3.DQL 1.无条件查询2.查询 什么开始 到什么结束3.指定条件查询 1.单个条件 ro in2.多个条件 and4.查询不为NULL值 is not null ,为NULL值 is null5.模糊查询 li…...
计算和可视化相对湿度结果
了解如何确定 CFD 模型中的相对湿度。 了解相对湿度 大气是干燥空气和水蒸气的混合物,每一种的压力之和等于蒸气压。相对湿度是指空气中的水分量与空气在特定温度下可以容纳的最大水分量之比。它通常以百分比表示。它的范围从 0(干燥空气)到…...
uniapp-vue3(下)
关联链接:uniapp-vue3(上) 文章目录 七、咸虾米壁纸项目实战7.1.咸虾米壁纸项目概述7.2.项目初始化公共目录和设计稿尺寸测量工具7.3.banner海报swiper轮播器7.4.使用swiper的纵向轮播做公告区域7.5.每日推荐滑动scroll-view布局7.6.组件具名…...
SILERGY矽力杰 SY81103ABT NA DC-DC电源芯片
特性 内部MOSFET低导通电阻:顶部80m2,底部40mO 宽输入电压范围:4.5V~18V 最高输出电流3A 1.5%0.6V参考电压 精确的EN阈值 SY81103和SY81103C采用脉冲频率调制(PFM)模式运行 SY81103E和SY81103B的强制连续导通模式(FCCM)操作 内部软启动限制浪涌电流 支持预偏置输出的…...
智能文档处理新范式:Umi-OCR双层PDF功能让家庭与学生文档管理效率倍增
智能文档处理新范式:Umi-OCR双层PDF功能让家庭与学生文档管理效率倍增 【免费下载链接】Umi-OCR OCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片,PDF文档识别,排除水印/页眉页脚,扫描/生成二维…...
OpenClaw镜像体验:在星图GPU平台快速试用SecGPT-14B安全分析
OpenClaw镜像体验:在星图GPU平台快速试用SecGPT-14B安全分析 1. 为什么选择云平台体验OpenClaw 第一次接触OpenClaw时,我被它的自动化能力吸引,但本地安装过程让我望而却步。作为一个经常需要评估各种AI工具的安全工程师,我发现…...
如何通过智能提取技术实现B站视频内容转化?解密高效提取的技术民主化方案
如何通过智能提取技术实现B站视频内容转化?解密高效提取的技术民主化方案 【免费下载链接】bili2text Bilibili视频转文字,一步到位,输入链接即可使用 项目地址: https://gitcode.com/gh_mirrors/bi/bili2text 在信息爆炸的数字时代&a…...
Domain Randomization不只是“乱调参数”:一份给自动驾驶感知开发的避坑指南
Domain Randomization不只是“乱调参数”:一份给自动驾驶感知开发的避坑指南 在自动驾驶感知算法的开发过程中,仿真环境训练已经成为不可或缺的一环。许多团队在Carla或LGSVL等仿真平台上投入大量精力进行模型训练,却在真实路测时遭遇性能断崖…...
支持RTX 30/40系显卡:PyTorch-2.x-Universal-Dev-v1.0镜像GPU验证指南
支持RTX 30/40系显卡:PyTorch-2.x-Universal-Dev-v1.0镜像GPU验证指南 1. 引言:为什么需要验证GPU环境 在深度学习项目开发中,GPU加速是提升模型训练效率的关键因素。特别是对于RTX 30/40系列显卡用户,正确配置CUDA环境与PyTorc…...
《常见三维CAD模型表示法》
表示法核心思想 / 定义数据结构 / 关键特点优点缺点CAD中的应用场景常见软件 / 文件格式B-rep (边界表示)通过精确记录物体的边界(顶点、边、面)及其拓扑关系(邻接、归属)来定义实体包含几何信息(点坐标、曲线方程、曲…...
数字人形象哪里找?lite-avatar形象库150+角色免费使用体验
数字人形象哪里找?lite-avatar形象库150角色免费使用体验 1. 数字人形象获取的痛点与解决方案 在开发数字人应用时,寻找合适的数字人形象往往是第一个拦路虎。传统方式需要自己收集数据、训练模型,这个过程既耗时又耗力,对很多开…...
从单片机到Linux驱动的技术成长与转型
1. 从单片机到Linux驱动的技术成长之路 刚毕业那会儿,我和大多数电子工程专业的同学一样,怀揣着对技术的无限憧憬。记得大四校招时,我固执地只投递了几家知名大厂的嵌入式开发岗位,甚至在面试时直接报出了远超应届生水平的薪资期望…...
零基础封神!10行代码写渗透专用爬虫,一键扫遍靶场敏感资产
零基础封神!10行代码写渗透专用爬虫,一键扫遍靶场敏感资产 上一篇我们一起打破了认知壁垒,焊死了合规红线,用3行代码跑通了第一个渗透型爬虫。 很多粉丝后台私信我说,第一次跑通代码,看到命令行里打印出靶场…...
