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

三、ubuntu18.04安装docker

1.使用默认ubuntu存储库安装docker

  • 更新软件存储库

更新本地软件数据库确保可以访问最新版本。打开终端输入:sudo apt-get update

  • 卸载旧版本的docker

建议继续之前卸载任何旧的docker软件。打开终端输入:sudo apt-get remove docker docker-engine docker.io

  • 安装docker

打开终端输入:sudo apt install docker.io

  • 启动和自动化docker

将docker服务设置为在启动时运行。终端输入:

sudo systemctl start docker

sudo systemctl enable docker

  • 检查docker版本

验证安装版本号:

docker --version

2.官方存储库安装docker

  • 更新软件存储库

更新本地软件数据库确保可以访问最新版本。打开终端输入:sudo apt-get update

  • 下载依赖

需要运行以下指令允许操作系统通过HTTPS访问docker存储库,打开终端输入:

sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

 以下是每个命令的简要说明:

  • apt-transport-https:允许包管理通过https传输文件和数据
  • ca-certificates:允许系统(和网络浏览器)检查安全证书
  • curl:这是一个用于传输数据的工具
  • software-properties-common:添加用于管理软件的脚本
  • 添加docker的GPG密钥

GPG密钥是一项安全功能,为确保安装的软件是正版,需要输入:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
  • 安装docker存储库

 要安装docker存储库,输入以下命令:

echo "deb [arch=$(dpkg --print-architecture) 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
  •  更新包列表并安装 Docker

现在可以更新包列表,并从docker官方仓库安装docker:

sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
  •  安装特定版本的docker

通过终端输入以下命令可列出可用的docker的版本:

apt-cache madison docker-ce

 系统应返回可用版本的列表,如上图,然后,输入命令进行安装:

sudo apt-get install docker-ce=[version]

 3.非root用户运行docker

默认情况下,docker命令需要sudo权限。如果你希望以普通用户身份运行docker,可以将当前用户添加到docker组:

sudo usermod -aG docker ${USER}

 然后注销并重新登录,或者使用以下命令立即应用组变更:

newgrp docker

你可以通过以下命令测试是否可以不带sudo运行docker:

docker run hello-world 

http://www.lryc.cn/news/508366.html

相关文章:

  • 数据库与表空间
  • 【CSS in Depth 2 精译_091】15.4:让 CSS 高度值过渡到自动高度 + 15.5:自定义属性的过渡设置(全新)+ 15.6:本章小结
  • Oracle中间件 SOA之 OSB 12C服务器环境搭建
  • Java设计模式 —— 【结构型模式】外观模式详解
  • 线性表实验
  • 003无重复字符的最长子串
  • 记录--uniapp 安卓端实现录音功能,保存为amr/mp3文件
  • 前端生成docx文档、excel表格、图片、pdf文件
  • c++---------流类
  • 3、基本复用原理和复用单元
  • Vue与React:前端框架的巅峰对决
  • Java 中的面向对象编程 (OOP) 概念
  • 十二月第20讲:Python中指数概率分布函数的绘图详解
  • 汽车IVI中控开发入门及进阶(44):杰发科智能座舱芯片
  • 【py脚本+logstash+es实现自动化检测工具】
  • Zookeeper的选举机制
  • 2024-05-18 前端模块化开发——ESModule模块化
  • Linux IPV6 地址配置 | IPv6 禁用 | ping6 过程细节剖析 | IPv6 排障
  • 【YashanDB知识库】XMLAGG方法的兼容
  • echarts加载区域地图,并标注点
  • echarts画风向杆
  • 【LeetCode每日一题】LeetCode 345.反转字符串中的元音字母
  • 蓝桥杯练习生第四天
  • cesium 常见的 entity 列表
  • Java旅程(五)Spring 框架与微服务架构 了解 JVM 内部原理和调优
  • Niushop-master靶场漏洞
  • 35道面向初中级前端的基础面试题
  • MFC用List Control 和Picture控件实现界面切换效果
  • 1. 解决前端vue项目 vite打包内存溢出问题
  • Springboot高并发乐观锁