ubuntu server 22.04 安装docker

官方安装文档: https://docs.docker.com/engine/install/ubuntu/

1.更新软件列表:

sudo apt-get update

2.安装Docker所需要的软件

# ca-certificates - 包含常用CA证书
# curl - cURL(Client URL)用于数据传输的命令行工具,此处主要拥有下载签名文件等
# gnupg - 软件分发加密,防止文件被篡改
# lsb-release - 用于显示当前Linux系统的发行版本等信息

sudo apt-get install -y ca-certificates curl gnupg lsb-release

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稳定源

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软件

5.再次更新软件列表

sudo apt-get update

6.安装社区版的命令行,服务器及容器运行时环境

sudo apt-get install docker-ce docker-ce-cli containerd.io

7.通过systemd启动Docker服务

sudo systemctl start docker

8.可以通过status命令查看一下启动状态,此处无须管理员权限

systemctl status docker

如果没有遇到下面的权限问题,则不需要处理:

如果当前用户没有添加到docker组中且没有管理员权限时,用client端命令访问dockerd服务时一般会出现如下错误:

docker: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.35/containers/create: dial unix /var/run/docker.sock: connect: permission denied. See 'docker run --help'.
一般来说,只要前面步骤没有出错,只需把当前用户加入docker组即可,并登出再登入使得改动在新的回话中生效。

sudo usermod -aG docker $USER
但是有时候docker组并不存在,则需要手动创建一下:

sudo groupadd docker
而笔者碰到的问题是:docker组已经创建好了,当前用户也添加到了该组中,也登入登出,但权限问题仍然存在。这时候还需要执行一下以下命令,手动激活以下组相关的改动

sudo newgrp docker
当然还有些小伙伴们会遇到其它权限问题,比如socket文件权限不正确,解决办法有两种:

a. 删掉/var/run/docker.sock,重启docker服务

b. 通过chmod/chown手动改该文件权限,具体权限内容参考如下

$ ls -al /var/run/docker.sock
srw-rw---- 1 root docker 0 Jan 28 17:00 /var/run/docker.sock

9.测试一下是否能运行

sudo docker run hello-world

10.docker 加速镜像:
没有daemon.json 的情况
# Step#1 进到 /etc/docker/ 目录下,自己创建daemon.json文件
cd /etc/docker/
sudo touch daemon.json

# Step#2 编辑文件
方式一,使用VI
sudo vi daemon.json

方式二,sudo chmod 777 daemon.json 之后,用FinalShell 直接修改

(强制退出vi,:qa!)
编辑 /etc/docker/daemon.json 文件,添加下面的内容:

{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}

改文件后重启daemon和docker
sudo systemctl daemon-reload
sudo systemctl restart docker

ubuntu server 22.04 安装docker的更多相关文章

  1. Ubuntu Server 12.04安装图解教程

                                                                                                Ubuntu S ...

  2. Ubuntu Server 16.04 安装MySQL并设置远程访问

    Ubuntu Server 16.04 安装MySQL 1. 使用root账号 sudo apt-get install mysql-serversudo apt-get install mysql- ...

  3. Ubuntu Server 12.04 安装 Jabberd2 服务器

    本篇文章由:http://xinpure.com/install-ubuntu-server-12-04-jabberd2-server/ Ubuntu Server 12.04 安装 Jabberd ...

  4. 阿里云ECS,Ubuntu Server 16.04安装图形界面远程控制

    最近阿里云有新用户免费体验6个月的活动,虽说是免费体验,但是还是要买个它们的产品才行,我就花9.9买了个最便宜的,然后就获得了一个乞丐版的ECS服务器,配置是1核内存1G.系统装的是Ubuntu Se ...

  5. Ubuntu server 16.04安装,无网卡驱动解决

    因为使用一个软件必须要在ubuntu server 16.04上安装,因此先在裸机上安装ubuntu server 16.04,具体信息: 镜像版本:ubuntu-16.04.6-server-amd ...

  6. ubuntu kylin 18.04安装docker笔记

    删除原有的docker应用(如果有的话): sudo apt-get remove docker docker-engine docker.io 更新一下: sudo apt-get update 下 ...

  7. Ubuntu Server 17.04安装GNOME指令

    短短几行指令,从安装到打开: apt-get install gnome-shell apt-get install xinit xshell 开启  关闭: Ctrl+Alt+F1   Ctrl+A ...

  8. ubuntu server 16.04 安装过程中提示无法安装busybox-initramfs

    这个问题在安装desktop版本时是不会出现的,只有server才有这个问题. 出现这个问题与硬件平台无关,不管是虚拟机还是物理机都会出现,解决的办法是在安装开始界面选择English,后面Langu ...

  9. ubuntu server 16.04安装GPU服务器

    1 Ubuntu16.04 系统安装过程中,需要勾选openssh-server 方便远程连接 2 必须安装gcc 与g++ 3 安装显卡驱动 NVIDIA-Linux-x86_64-367.57.r ...

  10. Ubuntu Server 16.04安装xfce4图形界面远程控制

    1.首先连接上你的服务器,然后安装vncserver,命令如下 apt-get install vnc4server 2.安装图形界面 apt-get install xfce4如果安装不上,就 ap ...

随机推荐

  1. Serverless JOB | 传统任务新变革

    简介: SAE Job 重点解决了用户的效率和成本问题,在兼具传统任务使用体验和功能的同时按需使用,按量计费,做到低门槛任务上云,节省闲置资源成本. Job 作为一种运完即停的负载类型,在企业级开发中 ...

  2. 解决方案|致拓T8数字化ERP

    ​简介:通过快速构建敏捷ERP系统,实现从销售到财务的全流程闭环管理,助力企业数字化升级. 「致拓T8数字化ERP」解决方案聚焦业财一体,助力企业卓有成效地提升经营收益,赋能企业个性化数字生产管理.本 ...

  3. 如何发起 MQTT 亿级连接和千万消息吞吐性能测试

    ​简介:MQTT 协议凭借简单易实现.支持 QoS.报文小等特点,占据了物联网协议的半壁江山. 作者:亦炎 随着 5G 时代的来临,万物互联的伟大构想正在成为现实.联网的物联网设备 在 2021 年已 ...

  4. 如何 0 改造,让单体/微服务应用成为 Serverless Application

    简介: 随着 2013 年以 Docker 为代表的容器技术.CNCF 基金会以及 K8s 的发展等,云原生开始被广大开发者所熟知.云原生时代之前还有两个阶段:一是自建 IDC 机房,二是简单地把原有 ...

  5. CPU Burst有副作用吗?让数学来回答!| 龙蜥技术

    ​简介: 使用CPU Burst的副作用是什么?是否有不适用的场景呢?戳我给你答案~ 编者按:CPU Burst 特性已合入 Linux 5.14,Anolis OS 8.2.Alibaba Clou ...

  6. dotnet SemanticKernel 入门 开篇

    本文将开坑告诉大家什么是 SemanticKernel 以及如何使用框架 众所周知 GPT 是一个大语言模型,能够参与的输入和输出是文本内容.而想要让 GPT 完成各项功能,则需要对接现有的编程世界. ...

  7. 非技术 对以后各大应用功能与 AI 助手的思考

    本文记录我对于 AI 助手在未来给各大应用或网站或设备带来的影响的思考 结论:未来的各大应用或网站或者是设备,都不会出现满屏的眼花缭乱的功能,取代的是各自有一个专属的 AI 助手,通过 AI 助手与人 ...

  8. C# 从控制台创建 WinUI 3 应用

    本文将告诉大家如何从控制台而不是 WinUI3 模版项目,从零一步步创建出 WinUI 3 应用 本文不是 WinUI 3 入门博客,本文将从比较基础层的方式创建出 WinUI 3 应用,适合于了解 ...

  9. SAP Adobe Form 教程三 日期,时间,floating field

    前文: SAP Adobe Form 教程一 简单示例 SAP Adobe Form 教程二 表 原文标题:SAP Adobe Interactive Form Tutorial. Part III. ...

  10. Linux中的umask

    在Linux中,当创建一个文件或者目录的时候,系统会自动为这个文件或者目录赋予默认的权限,而umask命令就是用来控制这个默认权限的. 查看umask umask的查看有两种方式,一种不带选项-S,一 ...