linux环境安装docker
一、Docker是什么?
当我们开发一个应用程序时,通常需要配置和安装各种软件、库和依赖项。而这些环境配置可能会因为不同的操作系统或版本而存在差异,导致应用在不同环境中运行出现问题。
Docker就像是一个集装箱,可以将应用程序及其所有依赖项一起打包,并以容器的形式进行封装。这个容器中包含了应用所需的操作系统、库和文件等组件。通过使用Docker,我们可以确保应用在任何地方都能以相同的方式运行,无论是在开发者的机器上、测试服务器上还是生产环境中。
Docker的另一个好处是它提供了快速部署和扩展应用的能力。通过简单地复制和启动这个容器,我们可以轻松地在不同主机上部署相同的应用,并且每个容器都是独立隔离的,互不影响。
总结来说,Docker就像是一个隔离环境,在其中我们可以将应用程序及其依赖项打包,并以容器的形式运行。它解决了环境配置问题,并提供了简单可靠的部署方式,使得开发者可以更加轻松地构建、发布和管理应用程序。
二、在Linux上安装Docker的好处
-
简化应用程序部署:Docker可以将应用程序及其依赖项打包成容器,使其在不同的环境中都能以相同的方式运行。这简化了应用程序的部署过程,并提高了可移植性。
-
资源隔离和环境隔离:通过使用容器,可以将应用程序与主机系统进行隔离,确保它们互不干扰。每个容器都具有自己独立的文件系统、网络和进程空间。
-
快速启动和停止:Docker容器可以快速启动和停止,因为它们与底层操作系统共享内核资源。这使得开发、测试和调试变得更加高效。
-
可伸缩性:使用Docker可以根据需要创建多个相同或相似的容器副本,实现应用程序的水平扩展,以满足不断增长的负载需求。
-
简化配置管理:通过使用Docker镜像和容器,可以轻松地进行配置管理并复制整个开发、测试和生产环境。这样可以确保各个环境之间始终保持一致,并减少了配置错误的可能性。
三、在Linux下安装Docker的步骤
我的环境是ubuntu20.04
1、更新软件包
sudo apt update
2、安装必要的软件包以允许apt使用HTTPS
sudo apt install apt-transport-https ca-certificates curl software-properties-common
3、添加Docker官方的GPG密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
4、添加Docker存储库到APT源列表中
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
5、更新软件包索引并安装Docker Engine
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
6、验证安装是否成功
sudo docker run hello-world

四、查看Docker状态
1、查看Docker守护进程状态
systemctl status docker # 对于使用systemd的Linux系统
service docker status # 对于使用SysVinit的Linux系统
2、查看Docker服务是否正在运行
docker info # 这会显示Docker的详细信息,包括版本、容器和镜像数量等。
3、检查Docker进程是否在运行
ps aux | grep docker
ps -ef | grep docker
相关文章:
linux环境安装docker
一、Docker是什么? 当我们开发一个应用程序时,通常需要配置和安装各种软件、库和依赖项。而这些环境配置可能会因为不同的操作系统或版本而存在差异,导致应用在不同环境中运行出现问题。 Docker就像是一个集装箱,可以将应用程序及其所有依…...
机器人技能学习-robosuite-0-入门介绍
文章目录 前言模块介绍实战案例1:从 demo 中创建自己的 env案例2:更换属于自己的物体 前言 资料太少、资料太少、资料太少,重要的事说三边,想根据自己实际场景自定义下机器人,结果发现无路可走,鉴于缺少参…...
【工具】tmux简单用法
tmux 是一个终端复用工具,允许你在单个终端窗口中运行多个终端会话,并在它们之间切换。它提供了分割窗格、多窗口和会话管理等功能,使得在终端中更加高效地工作。 以下是一些 tmux 的基本概念和简单应用: 会话 (Session): 一个 t…...
使用 C++/WinRT 的错误处理
本主题讨论了处理使用 C/WinRT 编程时出现的错误的策略。 更多常规信息和背景,请参阅错误和异常处理 (Modern C)。 避免捕获和抛出异常 建议继续编写异常安全代码,但最好尽量避免捕获和抛出异常。 如果没有异常处理程序,Windows 将自动生成错…...
计算机基础专升本笔记九-Windows7基础(一)Windows 7 介绍
计算机基础专升本笔记九-Windows7基础 一、Windows简介 Microsoft公司从1983年开始研制Windows系统,最初的研制目标是在MS-DOS的基础上提供一个多任务的图形用户界面。 1985年,第一个版本的Windows 1.0问世,它是一个具有图形用户界面的系…...
LeetCode1109. Corporate Flight Bookings
文章目录 一、题目二、题解 一、题目 There are n flights that are labeled from 1 to n. You are given an array of flight bookings bookings, where bookings[i] [firsti, lasti, seatsi] represents a booking for flights firsti through lasti (inclusive) with sea…...
视觉SLAM十四讲|【五】相机与IMU时间戳同步
视觉SLAM十四讲|【五】相机与IMU时间戳同步 相机成像方程 Z [ u v 1 ] [ f x 0 c x 0 f y c y 0 0 1 ] [ X Y Z ] K P Z \begin{bmatrix} u \\ v \\ 1 \end{bmatrix} \begin{bmatrix} f_x & 0 & c_x \\ 0 & f_y & c_y \\ 0 & 0 & 1 \end{bmatrix} \…...
js null和undefined的区别
null和undefined在JavaScript中都表示“无”的概念,但它们在使用和含义上有一些重要的区别。 含义: null 是一个表示“无”的对象,当转换为数值时结果为0。 undefined 是一个表示“缺少值”的原始值,当转换为数值时结果为NaN。…...
Arduino| IDE下载、安装和设置以及开发板的连接
IDE下载、安装和设置以及开发板的连接 IDE下载IDE安装IDE设置首选项——设置语言、字体、主题、地址等等开发板管理器——添加开发板 开发板的连接 IDE下载 第一步:进入Arduino官网https://www.arduino.cc。 第二步:选择导航栏的Software,然…...
Linux之Ubuntu环境Jenkins部署前端项目
今天分享Ubuntu环境Jenkins部署前端vue项目 一、插件安装 1、前端项目依赖nodejs,需要安装相关插件 点击插件管理,输入node模糊查询 选择NodeJS安装 安装成功 2、配置nodejs 点击后进入 点击新增 NodeJS 配置脚手架类型:如果不填 默认npm …...
QT下的几种实现modbus的库,记录
QModbus QT提供了一个名为QModbus的模块,可以实现Modbus的主机或从机功能 pro需要添加 QT += serialbus serialport相关头文件 #include <QModbusTcpClient> #include <QModbusDataUnit> 具体使用参考: https://blog.csdn.net/XCJandLL/article/details/1…...
HarmonyOS4.0系统性深入开发18公共事件简介
公共事件简介 HarmonyOS通过CES(Common Event Service,公共事件服务)为应用程序提供订阅、发布、退订公共事件的能力。 公共事件从系统角度可分为:系统公共事件和自定义公共事件。 系统公共事件:CES内部定义的公共事…...
华为路由器OSPF动态链路路由协议配置
R1配置 interface GigabitEthernet0/0/0ip address 10.1.12.1 255.255.255.252 interface LoopBack0ip address 1.1.1.1 255.255.255.255 ospf 1 router-id 1.1.1.1 area 0.0.0.0 network 1.1.1.1 0.0.0.0 network 10.1.12.0 0.0.0.3 R2配置 interface GigabitEthernet0/0/0i…...
常用注解/代码解释(仅个人使用)
目录 第一章、代码解释①trim() 方法以及(Arrays.asList(str.split(reg)));②查询字典项②构建后端镜像shell命令解释 第二章、注解解释①PropertySource注解与Configurationproperties注解的区别 第三章、小知识①Linux系统中使用$符号表示变量 友情提醒: 先看文章目录&#…...
2024阿里云服务器ECS介绍_全方位解析_CPU性能详解
阿里云服务器ECS英文全程Elastic Compute Service,云服务器ECS是一种安全可靠、弹性可伸缩的云计算服务,阿里云提供多种云服务器ECS实例规格,如经济型e实例、通用算力型u1、ECS计算型c7、通用型g7、GPU实例等,阿里云百科aliyunbai…...
向伟人学习反焦虑,在逆境中崛起
第一、乐观的精神。 伟人在长期以来的读书、思考和实践,突破了思想认知限制,并最终在更高的思维层面上,建立起了强大的精神信念感。 在危险环境中表示绝望的人, 在黑暗中看不见光明的人, 只是懦夫与机会主义者。 —— …...
线上问题整理
JVM 案例 案例一:服务器内存不足,影响Java应用 问题: 收到报警,某Java应用集群中一台服务器可用内存不足,超过报警阈值。 排查过程: 首先,通过Hickwall查看该应用各项指标,发现无论…...
【elastic search】详解elastic search集群
目录 1.与集群有关的一些概念 2.集群搭建 3.集群搭建 4.kibana链接集群 5.选举流程 6.请求流程 7.master的作用 1.与集群有关的一些概念 数据分片: 数据分片(shard),单台服务器的存储容量是有限的,把一份数据…...
近红外光谱分析技术与基于深度学习的化学计量学方法
郁磊【副教授】:主要从事AI人工智能与大数据分析等相关研究,长期致力于人工智能与近红外生物医学工程等领域融合,主持并完成多项科研课题。著有《神经网络43个案例分析》等书籍。 // 讲座内容 1、近红外光谱基本理论、近红外光谱仪基本原理…...
Elasticsearch windows开箱即用【记录】
一、准备工作 安装ES之前要在本机安装好JDK,对应的兼容性见官网链接:https://www.elastic.co/cn/support/matrix ES官网链接:https://www.elastic.co/cn/, 我本机安装的是JDK8,测试使用的是7.3.0版本的ES和Kibana。 1、首先去…...
Agentic AI 元素周期表:拆解智能体时代的完整技术体系,读懂 2026 年 AI 的核心游戏规则
很多人已经用了几个月甚至几年的 AI,每天和 ChatGPT、Claude 打交道,写 Prompt、调用工具、体验各类 AI 应用,却始终逃不开一个核心困惑:你看似在用 AI,却根本不懂它背后完整的运行逻辑。你知道 LLM 能生成文本&#x…...
计算机专业毕业设计题目效率提升指南:从选题到部署的工程化实践
作为一名刚刚完成毕业设计的计算机专业学生,我深刻体会到了从选题到最终部署答辩这一路上的“坑”与“痛”。很多同学和我一样,前期选题纠结,中期开发混乱,后期部署手忙脚乱,最终答辩演示时还可能出现各种意外。为了帮…...
3分钟搞定Windows音频捕获:win-capture-audio让你的录音效率翻倍
3分钟搞定Windows音频捕获:win-capture-audio让你的录音效率翻倍 【免费下载链接】win-capture-audio An OBS plugin that allows capture of independant application audio streams on Windows, in a similar fashion to OBSs game capture and Discords applicat…...
Magisk Root技术实践指南:从决策评估到风险管控的完整解决方案
Magisk Root技术实践指南:从决策评估到风险管控的完整解决方案 【免费下载链接】Magisk The Magic Mask for Android 项目地址: https://gitcode.com/GitHub_Trending/ma/Magisk 一、决策评估:场景化应用与技术选型 1.1 设备Root需求分析矩阵 在…...
OpenClaw安全防护方案:nanobot镜像的4种权限控制方法
OpenClaw安全防护方案:nanobot镜像的4种权限控制方法 1. 为什么需要关注OpenClaw的安全防护? 去年夏天,我在调试一个自动整理照片的OpenClaw任务时,不小心让AI删除了整个相册目录——仅仅因为我忘记限制文件删除权限。这次惨痛教…...
税务季钓鱼攻击中合法远程管理工具的滥用机制与防御策略研究
摘要 随着数字化办公环境的普及,网络攻击手段正经历从传统恶意软件向“无文件”及“合法工具滥用”的深刻转型。2026年3月,微软威胁情报团队披露了一系列针对美国税务季的复杂网络钓鱼活动,这些活动不仅利用了社会工程学原理窃取凭证…...
【架构实战】数据库分库分表实战
一、为什么需要分库分表 当数据量超过单机数据库的承载能力时,分库分表成为必然选择: 单库数据量过亿:查询性能急剧下降单表数据量过大:索引效率降低,DML操作变慢连接数耗尽:数据库连接成为稀缺资源存储空间…...
从One-Hot到Embedding:一文读懂NLP中的词向量进化史
从One-Hot到Embedding:一文读懂NLP中的词向量进化史 在自然语言处理(NLP)的发展历程中,如何有效地表示单词一直是核心挑战之一。早期的计算机科学家们发现,要让机器理解人类语言,首先需要解决"词如何数…...
别再只用命令行!Pycharm内置Database工具连接SQLite3的5个高效技巧(含文件路径避坑)
别再只用命令行!Pycharm内置Database工具连接SQLite3的5个高效技巧(含文件路径避坑) 作为一名长期与SQLite3打交道的Python开发者,你是否还在反复切换终端和代码编辑器,用命令行执行sqlite3 test.db?或是为…...
雪女-斗罗大陆-造相Z-Turbo环境配置:MATLAB与AI模型的联合仿真
雪女-斗罗大陆-造相Z-Turbo环境配置:MATLAB与AI模型的联合仿真 最近在折腾一个挺有意思的项目,想把MATLAB强大的工程计算能力和现在流行的AI生成模型结合起来。你可能也遇到过类似的情况:用MATLAB跑完一堆仿真,生成了海量的数据和…...
