【Docker】在 Ubuntu20.04 上配置 Docker 开发环境

【Docker】在 Ubuntu20.04 上配置 Docker 开发环境

  • 1 安装 Docker
  • 2 加入 Docker 用户组

1 安装 Docker

参考文档: Link

  • 卸载以避免冲突
 for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
  • 设置 Docker 的 apt 仓库
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

也可以改用清华源的镜像: Link

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  tee /etc/apt/sources.list.d/docker.list > /dev/null
  • 安装
 sudo apt-get update
 sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  • 验证是否成功
sudo docker run hello-world

2 加入 Docker 用户组

为了免去每次输入 docker 命令都需要 sudo

  1. 查询有无 docker 用户组
cat /etc/group | grep docker

如果有,直接跳至 3

  1. 创建 docker 用户组
sudo groupadd docker
  1. 将当前用户加入 docker 组
sudo gpasswd -a $USER docker

查看当前用户是否在 docker 用户组中

cat /etc/group | grep docker

在这里插入图片描述

  1. 重启
sudo service docker restart
sudo reboot
  1. 测试是否成功
docker images

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

linux中新添加一块硬盘之后,系统起不来

问题: 在添加磁盘之后,重新开机时,却发现无法进入系统中 原因: 是因为添加了新的磁盘之后,系统将空硬盘当作系统盘启动,所以无法启动系统 解决方案: 进入到bios,将系统盘的优先级…

【大厂AI课学习笔记NO.71】AI算力芯片GPU/TPU等

AI算力芯片的发展历程 人工智能(AI)算力芯片的发展历程紧密地跟随着AI技术的发展脚步。从早期的基于传统中央处理器(CPU)的计算,到图形处理器(GPU)的广泛应用,再到专门为AI设计的处…

01_electron入门

由于毕业论文可能需要用 electron,所以 Linux 驱动学习慢了下来。 一、安装 node.js 进入 node.js 官网:Node.js (nodejs.org) 咱们就是用稳定版,安装包除了安装路径自己选择外,一直点 Next。 安装完成后需要配置环境&#xff0c…

C++容器适配器stack、queue、priority_queue

文章目录 C容器适配器stack、queue、priority_queue1、stack1.1、stack的介绍1.2、stack的使用1.3、stack的模拟实现 2、queue2.1、queue的介绍2.2、queue的使用2.3、queue的模拟实现 3、priority_queue3.1、priority_queue的介绍3.2、priority_queue的使用3.3、仿函数3.4、pri…

Vue3+ts(day02:CompositionAPI、setup)

学习源码可以看我的个人前端学习笔记 (github.com):qdxzw/frontlearningNotes 觉得有帮助的同学,可以点心心支持一下哈(笔记是根据b站上学习的尚硅谷的前端视频【张天禹老师】,记录一下学习笔记,用于自己复盘,有需要学…

Linux——信号

目录 什么是信号 Linux下的信号 信号的记录 信号处理的常见方式 产生信号 使用组合键产生信号(包含core dump) 使用系统调用向进程发送信号 由软件条件产生信号 由硬件异常产生信号 阻塞信号 内核表示 sigset_t 信号集操作函数 sigpendin…

基于粒子群(PSO)的PID控制器matlab仿真

算法实现简介 利用粒子群算法对 PID 控制器的参数进行优化设计,其过程如图 所示。 图中,粒子群算法与 Simulink 模型之间连接的桥梁是粒子(即 PID 控制器参数)和该粒子对应的适 应值(即控制系统的性能指标&#xff09…

商家转账到零钱场景申请哪一个

商家转账到零钱是什么? 商家转账到零钱功能是指商家可以通过支付平台将资金直接转账到用户的零钱账户中。在这种情况下,商家不需要用户提供银行账户信息,而是使用支付平台的转账功能将资金直接转移到用户的零钱账户中。 商家转账到零钱的使…

什么是脚本语言?——跟老吕学Python编程

什么是脚本语言?——跟老吕学Python编程 脚本语言脚本语言概述脚本语言定义脚本语言简介脚本语言特点 脚本语言特点脚本语言优点脚本语言缺点 脚本语言应用和发展脚本语言应用脚本语言发展情况 脚本语言分类工作控制语言和ShellGUI脚本应用程序定制的脚本语言WEB编程…

储能系统--户用储能美洲市场(三)

2、美洲市场 2.1、美国户储发展驱动力 (1)电网老化带来配储需求,户用光储成家庭第二用电保障 美国大部分电网建于20世纪60和70年代,超70%以上的输电系统已经超过了25年,在高负荷运转或者外部环境承压时,…

深入理解MVC和MVVM:构建现代Web应用的利器

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

C语言笔记:类型、运算符与表达式

类型与变量 概念 类型是定义变量的,什么是类型,例如张三是一个人,张三就是变量而人就是类型,什么是变量就是用来存储数据的,为什么变量会分为很多类型,因为存储的数据类型不同,需要不容的类型来…

LVS集群(Linux Virtual server)

集群概念lvs模型lvs调度算法lvs实现lvs高可用性,负载均衡 1 集群和分布式 系统性能扩展方式: Scale UP:垂直扩展,向上扩展,增强,性能更强的计算机运行同样的服务 升级单机的硬件设备Scale Out:水平扩展…

C++的一些基础语法

前言: 本篇将结束c的一些基础的语法,方便在以后的博客中出现,后续的一些语法将在涉及到其它的内容需要用到的时候具体展开介绍;其次,我们需要知道c是建立在c的基础上的,所以c的大部分语法都能用在c上。 1.…

妇女节:打开AI视界,成就“她力量”

根据国内招聘平台猎聘发布的《2024女性人才数据洞察报告》,从2023年3月到2024年2月,女性在AIGC领域的求职人次同比增长了190.49%。随着人工智能时代的降临,女性正以前所未有的姿态,在技术的助力下,蜕变成为新生的力量。…

STM32电源及时钟介绍

一、STM32最小系统 二、电源电路 2.1供电电压VDD,VSS F103VET6 的引角图 在 F103VET6 的引角图中可找到 49\50 角, 74\75 角, 99\100 角, 27\28角,10 \11角一共 5 对的VDD,VSS,也就是给我们芯片…

鸿蒙开发学习入门教程之环境配置

最近鸿蒙开发越来越火,各个大厂都有鸿蒙版本的计划和宣传,看这个趋势,可能会在几年内发展壮大,为我们移动端码农开辟一片新的职场。所以现在开始学起来还是很有必要的。今天就一起开始配置环境搞起来吧。 首先,找到官…

高级语言讲义2010软专(仅高级语言部分)

1.编写一程序&#xff0c;对输入的正整数&#xff0c;求他的约数和。 如&#xff1a;18的约数和为1236939 #include <stdio.h>int getsum(int n){int i,sum0;for(i1;i<n;i)if(n%i0)sumi;return sum; } int main(){int sum getsum(18);printf("%d",sum); …

ERP实施顾问面试题目

02什么是BOM和ECN&#xff1f;它们的完整英文拼写是什么&#xff1f;什么是替代料&#xff1f;&#xff08;10分&#xff09; BOM物料清单是英文Bill of Material的简写&#xff1b;ECN工程变更通知单是英文Engineering Change Notice的简写&#xff1b;替代料&#xff1a;由于…

CPP编程-CPP11中的内存管理策略模型与名称空间管理探幽(时隔一年,再谈C++抽象内存模型)

CPP编程-CPP11中的内存管理策略模型与名称空间管理探幽 CPP的四大内存分区模型 在 C 中&#xff0c;**内存分区是一种模型&#xff0c;用于描述程序运行时内存的逻辑组织方式&#xff0c;但在底层操作系统中&#xff0c;并不存在严格意义上的内存分区。**操作系统通常将内存分…