ubuntu22.04 安装Docker

一、更新系统包索引

sudo apt update && sudo apt upgrade -y

二、安装必要依赖

安装 curlgnupg等工具,用于添加 Docker 官方 GPG 密钥和仓库:

sudo apt install -y ca-certificates curl gnupg

三、添加 Docker 官方 GPG 密钥

sudo install -m 0755 -d /etc/apt/keyrings  # 创建密钥存储目录(若不存在)
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg  # 导入密钥
sudo chmod a+r /etc/apt/keyrings/docker.gpg  # 确保所有用户可读

四、添加 Docker 官方 APT 仓库

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

五、安装 Docker 引擎

sudo apt update  # 刷新仓库缓存
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

六、配置镜像加速器

vi /etc/docker/daemon.json
{"registry-mirrors": ["https://docker.1ms.run"]
}

七、重启docker

sudo systemctl restart docker

八、验证 Docker 安装

sudo docker run hello-world
Hello from Docker!
This message shows that your installation appears to be working correctly.
...

可选:免 sudo 使用 Docker(推荐)​

默认情况下,只有 root用户或 docker组的用户可以执行 Docker 命令。为了避免每次使用 sudo,可以将当前用户添加到 docker组:

1.创建 docker组(若不存在):

sudo groupadd docker

2.将当前用户加入 docker组:

sudo usermod -aG docker $USER

3.生效组权限(需重新登录或执行以下命令):

newgrp docker

4.验证免 sudo权限:

docker run hello-world  # 无需 sudo

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/96503.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/96503.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

高低压隔离器的技术演进与行业赋能

电力电子系统的安全架构与效率升级,始终依赖高低压电路间的可靠隔离。高低压隔离器作为能量传输与信号控制的核心媒介,通过持续迭代的绝缘技术与结构创新,为新能源装备、工业驱动系统提供底层安全屏障。其阻断电位差传导、抑制电磁干扰的能力…

嵌入式 - ARM5

一、led点灯代码优化1. 配置寄存器volatile1.​​禁止优化​​不对该变量的读写操作进行任何优化(如删除“冗余”读取或延迟写入)。2.​​强制内存访问​​每次访问该变量时,必须直接从内存(或硬件寄存器)中读取或写入…

SSH登录管理

两种配置方法-密码 -密钥(免密)ansible 默认 rhel9 禁止 root 用密码登陆,不禁止用密钥登陆 ---修改方式----vim /etc/ssh/sshd_config 修改此文件#PermitRootLogin prohibit-passwordPermitRootLogin yes 改为允许systemctl res…

远程连接--向日葵

下载安装卸载 向日葵语言设置 点击下面的图标,点击"设置": 问题解决 向日葵被连接之后自动黑屏 取消下面的勾选框: 向日葵连接之后黑屏 检查系统的协议: echo $XDG_SESSION_TYPE 如果是: wayland 需要切换为x11. 设置永久默认使用 X11: sudo vi /etc/gdm3/custom…

Liunx执行source /etc/profile 报错, -bash: HISTTIMEFORMAT: readonly variable

今天在配置java环境变量时,执行source /etc/profile报错,系统是统信OS,花了好长时间才解决,在这记录一下,希望能帮助到大家问题截图提示HISTTIMEFORMAT和PROMPT_COMMAND变量时只读变量,不能设置属性值解决办…

什么是达林顿管?

简单来说,达林顿管是一个“电流放大器中的大力士”。它的核心目的是用非常小的输入电流(基极电流)去控制一个非常大的输出电流(集电极电流)。达林顿管是由两个三极管串联而成,放大倍数是两个三极管的放大倍…

嵌入式Linux学习_rk3588移植无线网卡驱动

记录移植无线网卡驱动遇到的各种问题: 从官网上下载8821的驱动源码复制一份上面的CONFIG_PLATFORM_ARM_RK2818,改成3588,然后选项改成y,并把autodetect关掉。 找到CONFIG_PLATFORM_ARM_RK2818,复制一份,改成…

MCP专题五、MCP 的未来趋势与展望

MCP专题五:MCP 的未来趋势与展望 5.1 引言 本专题前四章我们系统性地学习了 MCP(Model Context Protocol)的 发展背景、核心机制、Python 实战方法以及典型应用场景。可以看到,MCP 并不仅仅是一个技术标准,它更像是 大模型与外部世界沟通的桥梁,推动了 AI 应用从“实验…

C++ Dijkstra堆优化算法

时间复杂度为&#xff1a;O((nm)logn)算法特点&#xff1a;非负边权、单源最短路、顶点数、边数<1000000&#xff0c;数据结构前置&#xff1a;领接表、哈希表、二叉堆算法&#xff1a;第一步&#xff0c;建图&#xff0c;任何算法我们都要去思考&#xff0c;用什么数据结构…

网页设计作业02

<!DOCTYPE html> <html> <head><meta charset"utf-8"/><title>网页设计作业</title> </head> <body><h2>问卷调查</h2><p><strong>1、你是通过什么途径来到绿叶学习网的&#xff1f;</s…

每日算法题推送-->今日专题——双指针法

题目1&#xff1a;https://leetcode.cn/problems/move-zeroes 小编刚看到这道题的时候&#xff0c;想到的第一个方法就是建立一个与原数组等大的新的数组&#xff0c;然后遍历原数组&#xff0c;如果遇到元素值不为0的元素&#xff0c;就将这个元素放到新数组中&#xff0c;直到…

告别单次对话:上下文工程如何重塑AI应用架构

1. 前言人工智能应用开发领域正在经历一场静悄悄的变革。去年此时&#xff0c;提示工程&#xff08;Prompt Engineering&#xff09;还是各大技术论坛的热门话题&#xff0c;开发者们热衷于分享各种精心设计的提示词模板&#xff0c;试图通过单次交互获得理想的大模型输出。然而…

PM2 管理后端(设置项目自启动)

查看pm2管理pm2 list ┌────┬──────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──…

CCN中商再获三项知识产权,为数字化服务添动能

上海中商网络股份有限公司&#xff08;CCN中商&#xff09;依托持续的研发投入与深厚的技术积淀&#xff0c;在知识产权领域再获重要突破——成功收获三项知识产权&#xff0c;囊括实用新型专利《一种3D霓彩智感双条光柱印刷用全自动生产线》、发明专利《一种一物一码关联系统及…

使用LTspice仿真一个异步BUCK电路

确定异步BUCK的规格 输入电压&#xff08;Vin&#xff09;&#xff1a;12V 输出电压&#xff08;Vout&#xff09;&#xff1a;6V 最大输出电流&#xff08;Iout&#xff09;&#xff1a;3A 开关频率&#xff08;fsw&#xff09;&#xff1a;400kHz 输出电压纹波&#xff08;Δ…

R语言对excel中多个sheet子表批量进行地理探测器计算

## 基本设置 ## 1) 设定你的工作目录&#xff08;保持你的原路径不变&#xff09; setwd("D:/*****/*****/******")## 2) 文件名&#xff08;与xlsx实际名字保持一致&#xff09; xlsx_file <- "驱动因素&#xff08;中低收入&#xff09;.xlsx"## 依…

C++ JSON 数据库:jsoncpp

jsoncpp1. JSON数据1.1 JSON 的基本语法规则1. 基础语法要求两种核心数据结构JSON 与其他数据格式的对比1.2 JSON 的典型应用场景1.3 JSON 解析与生成工具2. 编程语言库&#xff08;解析/生成&#xff09;1.4 常见错误与注意事项2. jsoncpp2.1 基本用法1. 安装与集成2. 核心类与…

《苍穹外卖》项目日记_Day9

前言&#xff1a; 上午就把今天任务完成了&#xff0c;就继续往后学了一些知识&#xff0c;晚上写下笔记总结一下。 今日完成任务&#xff1a; 调用百度地图开放平台&#xff0c;优化用户下单业务学习SpringTask&#xff0c;定时处理超时、派送中订单学习WebSocket&#xff0c;…

人工智能学习:Transformer结构中的编码器层(Encoder Layer)

Transformer结构中的编码器层(Encoder Layer) 一、编码器层介绍 概念 编码器层(Encoder Layer)是Transformer编码器的基本构建单元,它重复堆叠形成整个编码器,负责逐步提取输入序列的特征。每个编码器层由两个核心子层组成: 多头自注意力机制(Multi-Head Self-Attentio…

2018年下半年 系统架构设计师 综合知识

1.在磁盘调度管理中&#xff0c;应先进行移臂调度&#xff0c;再进行旋转调度。假设磁盘移动臂位于21 号柱面上&#xff0c;进程的请求序列如下表所示。如果采用最短移臂调度算法&#xff0c;那么系统的响应 序列应为(D )。A. ②⑧③④⑤①⑦⑥⑨ …