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

【Docker】在 Ubuntu 上安装 Docker 的步骤

在 Ubuntu 上安装 Docker 的步骤如下:

  1. 更新包索引并安装必要的软件包以允许 apt 使用 HTTPS:
sudo apt update
sudo apt install apt-transport-https ca-certificates curl software-properties-common

注意!网上另有一个命令声称最简洁,在此记录,酌情使用:

curl -fsSL https://get.docker.com | sh && ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/local/bin
  1. 添加 Docker 官方 GPG 密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
  1. 设置稳定版的 Docker 存储库:
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
  1. 更新 apt 包索引,并安装 Docker Engine:
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
  1. 验证 Docker 是否安装成功,运行以下命令启动 Docker 服务并设置开机自启动:
sudo systemctl start docker
sudo systemctl enable docker
  1. 确保您的用户帐户被添加到 docker 用户组中,以便无需 sudo 权限即可运行 Docker 命令。使用以下命令将当前用户添加到 docker 组中:
sudo usermod -aG docker $USER
  1. 退出当前终端会话并重新登录,以便组更改生效。

现在 Docker 已经成功安装在 Ubuntu 系统上。可以通过运行 docker --version 来验证安装是否成功。

相关文章:

  • 心脏滴血漏洞详解(CVE-2014-0160)
  • ubuntu 如何使用阿里云盘
  • 基于华为ensp的企业网络规划(新版)
  • mosquitto - 笔记
  • 在Ubuntu20.04(原为cuda12.0, gcc9.几版本和g++9.几版本)下先安装cuda9.0后再配置gcc-5环境
  • Linux 常用命令 chattr
  • 素数问题 python
  • 就业班 第二阶段 2401--3.19 day4 主从复制
  • 初级爬虫实战——哥伦比亚大学新闻
  • 开源的OCR工具基本使用:PaddleOCR/Tesseract/CnOCR
  • JavaScript 权威指南第七版(GPT 重译)(二)
  • 【Qt5】QVariant
  • 力扣Lc18--- 168. Excel表列名称(java版)-2024年3月19日
  • 如何使用 Elasticsearch 作为向量数据库
  • 代码审计与web安全-第四章作业
  • 【159天】尚学堂高琪Java300集视频精华笔记(128)
  • 【Leetcode】104. 二叉树的最大深度
  • 【React系列】如何构建React应用程序
  • CSS3 聊天气泡框以及 inherit、currentColor 关键字
  • ECS应用管理最佳实践
  • ES学习笔记(12)--Symbol
  • flutter的key在widget list的作用以及必要性
  • js ES6 求数组的交集,并集,还有差集
  • Laravel Telescope:优雅的应用调试工具
  • Laravel 菜鸟晋级之路
  • Python代码面试必读 - Data Structures and Algorithms in Python
  • Redis 懒删除(lazy free)简史
  • session共享问题解决方案
  • SpiderData 2019年2月23日 DApp数据排行榜
  • Zsh 开发指南(第十四篇 文件读写)
  • 不用申请服务号就可以开发微信支付/支付宝/QQ钱包支付!附:直接可用的代码+demo...
  • 给新手的新浪微博 SDK 集成教程【一】
  • 解析 Webpack中import、require、按需加载的执行过程
  • 蓝海存储开关机注意事项总结
  • 前端之React实战:创建跨平台的项目架构
  • - 转 Ext2.0 form使用实例
  • Redis4.x新特性 -- 萌萌的MEMORY DOCTOR
  • scrapy中间件源码分析及常用中间件大全
  • TPG领衔财团投资轻奢珠宝品牌APM Monaco
  • 通过调用文摘列表API获取文摘
  • ​LeetCode解法汇总2696. 删除子串后的字符串最小长度
  • #define MODIFY_REG(REG, CLEARMASK, SETMASK)
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (附源码)springboot教学评价 毕业设计 641310
  • ..thread“main“ com.fasterxml.jackson.databind.JsonMappingException: Jackson version is too old 2.3.1
  • .axf 转化 .bin文件 的方法
  • .bat批处理(八):各种形式的变量%0、%i、%%i、var、%var%、!var!的含义和区别
  • .NET Core IdentityServer4实战-开篇介绍与规划
  • .NET Framework 服务实现监控可观测性最佳实践
  • .net/c# memcached 获取所有缓存键(keys)
  • @cacheable 是否缓存成功_让我们来学习学习SpringCache分布式缓存,为什么用?
  • @ConfigurationProperties注解对数据的自动封装
  • @media screen 针对不同移动设备