当前位置: 首页 > news >正文

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 核心组件&#xff1a;Docker Engine是Docker的核心运行时引擎&#xff0c;负责构建、运行和管理容器。它包括守护进程&#xff08;dockerd&#xff09;、API和命令行工具客户端&#xff08;docker&#xff09;。适用环境&#…...

数组的深度监听deep

场景&#xff1a;组件提供的emit事件可能被占用&#xff0c;在不能使用事件提交的情况下&#xff0c;就要上watch数组监听了&#xff0c;但是是发现只有在数组的长度发生变化的时候才会触发监听&#xff0c;这怎么行。。。。。 对于对象数组的深度监听&#xff0c;如果没有正确…...

点击锁定按钮,锁定按钮要变成解锁按钮,然后状态要从待绑定变成 已锁定(升级版)

文章目录 1、updateInviteCodeStatus2、handleLock3、InviteCodeController4、InviteCodeService5、CrudRepository 点击锁定按钮&#xff0c;锁定按钮要变成解锁按钮&#xff0c;然后状态要从待绑定变成 已锁定&#xff1a;https://blog.csdn.net/m0_65152767/article/details…...

UniApp 性能优化策略

一、引言 在当今数字化时代&#xff0c;移动应用的性能成为影响用户留存与满意度的关键因素。UniApp 作为一款热门的跨平台开发框架&#xff0c;以一套代码适配多端的特性极大提升了开发效率&#xff0c;但同时也面临着性能优化的挑战。优化 UniApp 性能&#xff0c;不仅能够让…...

【Linux报告】实训六 重置超级用户密码

实训六 重置超级用户密码 2018编写-今日公布 【练习一】忘记root密码 步骤一&#xff1a;开启或重启系统&#xff0c;并且要在五秒之内按任何键&#xff1b; 步骤二&#xff1a;按任意键&#xff0c;停止进入系统&#xff0c;按【e】键&#xff0c;跳转新页面&#xff0c;再…...

smolagents:一个用于构建代理的简单库

HF推出 smolagents&#xff0c;一个非常简单的库&#xff0c;它能够解锁语言模型的代理功能。以下是它的简要介绍&#xff1a; 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.确定目标与需求:首先&#xff0c;明确打造手机矩阵的目的和需求&#xff0c;是为了进行电商运营、自媒体推广、任务管理还是其他目的。这将决定后续的手机数量、操作系统选择以及应用安装等。 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

在开源领域&#xff0c;选择合适的开源协议是开发者和企业能否充分利用平台的关键。ThingsPanel&#xff0c;作为一个专注于物联网的开源平台&#xff0c;近日将协议从 AGPLv3 改为更开放的 Apache 2.0。这一改变对开发者和用户意味着什么&#xff1f; 为什么协议要从 AGPLv3 转…...

鸿蒙开发:文本合成语音

前言 Android开发的同学都知道&#xff0c;在Android当中&#xff0c;实现一段文字合成语音播放&#xff0c;可以使用系统提供的对象TextToSpeech来很快的实现&#xff0c;如果不用系统自带的&#xff0c;也可以使用三方提供的&#xff0c;比如讯飞的语音合成等等&#xff0c;总…...

雷军:科技传奇的逐梦之旅

亲爱的小伙伴们&#x1f618;&#xff0c;在求知的漫漫旅途中&#xff0c;若你对深度学习的奥秘、Java 与 Python 的奇妙世界&#xff0c;亦或是读研论文的撰写攻略有所探寻&#x1f9d0;&#xff0c;那不妨给我一个小小的关注吧&#x1f970;。我会精心筹备&#xff0c;在未来…...

LeetCode - 初级算法 数组(删除排序数组中的重复项)

免责声明:本文来源于个人知识与公开资料,仅用于学术交流。 删除排序数组中的重复项 这篇文章讨论如何从一个非严格递增的数组 nums 中删除重复的元素,使每个元素只出现一次,并返回新数组的长度。因为数组是排序的,只要是相同的肯定是挨着的,所以我们需要遍历所有数组,然…...

2024年度培训运维总结

目前带的弟子跟我实战训练运维的总就业率基本可以稳定在 100% 左右&#xff08;因为我不带小白和没学历和大龄&#xff0c;悟性低都筛掉了还能找我说明条件够了&#xff09; 以下是弟子私教训练营的最新就业数据&#xff08;2024年12月25日&#xff09;&#xff1a; 面试辅导…...

java重装小结

一、Java安装 安装路径 https://www.oracle.com/java/technologies/javase/javas e8-archive-downloads.html 具体类型可参考&#xff1a; Java安装配置-CSDN博客 我在这一步主要碰到的问题就是访问官网报404错误&#xff0c;可参考&#xff1a; 在oracle官网下载资源显示…...

ubuntu20.04 中文输入法安装

中文输入法安装指南 在 Ubuntu 20.04 上安装中文输入法&#xff0c;您可以按照以下步骤操作&#xff1a; 打开终端。安装 fcitx 输入法框架和中文输入法模块&#xff1a;sudo apt update sudo apt install fcitx fcitx-pinyin安装中文语言支持&#xff1a;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 模型中的相对湿度。 了解相对湿度 大气是干燥空气和水蒸气的混合物&#xff0c;每一种的压力之和等于蒸气压。相对湿度是指空气中的水分量与空气在特定温度下可以容纳的最大水分量之比。它通常以百分比表示。它的范围从 0&#xff08;干燥空气&#xff09;到…...

uniapp-vue3(下)

关联链接&#xff1a;uniapp-vue3&#xff08;上&#xff09; 文章目录 七、咸虾米壁纸项目实战7.1.咸虾米壁纸项目概述7.2.项目初始化公共目录和设计稿尺寸测量工具7.3.banner海报swiper轮播器7.4.使用swiper的纵向轮播做公告区域7.5.每日推荐滑动scroll-view布局7.6.组件具名…...

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器

一.自适应梯度算法Adagrad概述 Adagrad&#xff08;Adaptive Gradient Algorithm&#xff09;是一种自适应学习率的优化算法&#xff0c;由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率&#xff0c;适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...

中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试

作者&#xff1a;Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位&#xff1a;中南大学地球科学与信息物理学院论文标题&#xff1a;BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接&#xff1a;https://arxiv.…...

关于nvm与node.js

1 安装nvm 安装过程中手动修改 nvm的安装路径&#xff0c; 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解&#xff0c;但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后&#xff0c;通常在该文件中会出现以下配置&…...

《通信之道——从微积分到 5G》读书总结

第1章 绪 论 1.1 这是一本什么样的书 通信技术&#xff0c;说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号&#xff08;调制&#xff09; 把信息从信号中抽取出来&am…...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题&#xff1a; 指定音频引擎与设备&#xff1b;播放音频文件 本文所使用的环境&#xff1a; Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

linux 下常用变更-8

1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行&#xff0c;YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID&#xff1a; YW3…...

如何理解 IP 数据报中的 TTL?

目录 前言理解 前言 面试灵魂一问&#xff1a;说说对 IP 数据报中 TTL 的理解&#xff1f;我们都知道&#xff0c;IP 数据报由首部和数据两部分组成&#xff0c;首部又分为两部分&#xff1a;固定部分和可变部分&#xff0c;共占 20 字节&#xff0c;而即将讨论的 TTL 就位于首…...

Reasoning over Uncertain Text by Generative Large Language Models

https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...

智能AI电话机器人系统的识别能力现状与发展水平

一、引言 随着人工智能技术的飞速发展&#xff0c;AI电话机器人系统已经从简单的自动应答工具演变为具备复杂交互能力的智能助手。这类系统结合了语音识别、自然语言处理、情感计算和机器学习等多项前沿技术&#xff0c;在客户服务、营销推广、信息查询等领域发挥着越来越重要…...