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. 一文读懂 BizDevOps:数字化转型下的技术破局

    简介: 目标.方法与实践. 我们正迈向数字经济时代,数字化转型成为普遍行动.未来绝大多数业务都将运行在数字基座之上,软件系统成为业务创新和发展的核心引擎.在这一趋势下,产品研发的交付能力面临巨大挑战, ...

  2. 用python编写向通信产品发送AT指令的程序实例

    一.安装pyserial包pip install pyserial 二.实例代码 # -*- coding: utf-8 -*- import time import hashlib from ser ...

  3. [ML] 机器学习的 7 步流程

    Gathering Data. Preparing that Data. Choosing a Model. Training. Evaluation. Hyperparameter Tuning. ...

  4. WPF 修复 ContextMenu 在开启 PerMonitorV2 后所用 DPI 错误

    本文告诉大家如何修复 WPF 的 ContextMenu 在开启 PerMonitorV2 之后,在双屏不同的 DPI 的设备上,在副屏弹出的 ContextMenu 使用了主屏的 DPI 导致缩放错 ...

  5. 习题8 #第8章 Verilog有限状态机设计-2 #Verilog #Quartus #modelsim

    2. 设计一个"1001"串行数据检测器,其输入.输出如下: 输入x:000 101 010 010 011 101 001 110 101 输出z:000 000 000 010 ...

  6. Competition Set - Codeforces

    这里记录的是这个账号的比赛情况. Codeforces Round 942 (Div. 1) Solved:6/8,AB1B2CDE1 2645-> A 题意:现有 \(a_i\) 张写有 \( ...

  7. (更新中)gprMax项目代码分解:gprMax.constants.py、gprMax.exceptions

    目录 1. 引言 2. gprMax.constants.py 3. gprMax.exceptions.py 4. 总结 Reference 1. 引言 本文对gprMax项目中的"gpr ...

  8. shape-outside

    shape-outside定义一个由内容区域的外边缘封闭形成的形状 shape-outside 是一个非常实用的属性,可以实现一些比较复杂的文本环绕效果. shape-outside 的兼容性比较好, ...

  9. [BZOJ4358]permu线段树+莫队

    先放代码 晚上补(争取) [BZOJ4358]permu 线段树+莫队做法 序列操作,多次询问,无修,标准的莫队. 在如何在不同区间内转移的问题上,我选择用线段树来维护(没听xfg讲回滚莫队不行啊) ...

  10. Atera 用户为最终用户提供对办公计算机的远程访问

    ​一言以蔽之:由 Splashtop 提供支持的 Atera 的客户远程访问功能允许使用 Atera 的 MSP 设置和管理其最终用户对办公计算机的远程访问. 新冠肺炎大流行已加速了全球远程工作的进程 ...