Ubuntu22.04安装docker

1 打开终端(或者使用Xhell等远程连接工具)

ctrl+alt+t

2 卸载旧版本Docker

Ubuntu 下自带了Docker 的库,不需要添加新的源。 但是Ubuntu 自带的 Docker 版本太低,需要先卸载旧的再安装新的。

# docker 的旧版本不一定被称为 docker,docker.io 或 docker-engine 也有可能,
sudo apt-get remove docker docker-engine docker.io containerd runc

其实这里可以使用以下命令检查

# docker docker-engine docker.io containerd runc
dpkg -l | grep -E 'docker|docker-engine|docker.io|containerd|runc'

3 使用命令查看内核以及架构详细信息

uname -a
# 打印信息
Linux miraclerice-vm 6.2.0-39-generic #40~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Nov 16 10:53:04 UTC 2 x86_64 x86_64 x86_64 GNU/Linux

正如上面你看到的那样,我的 Ubuntu 系统内核版本是 6.2.0-39-generic 并且系统架构是 64 位(x86_64 x86_64 x86_64 GNU/Linux)。

4 更新Ubuntu软件包列表和已安装软件的版本

# 分别执行
sudo apt update
sudo apt upgrade
sudo apt full-upgrade

5 安装必要的证书并允许 apt 包管理器使用以下命令通过 HTTPS 使用存储库

sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg lsb-release

6 运行下列命令添加 Docker 的官方 GPG 密钥

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

如果你无法访问官方地址,可以将密钥下载地址替换为下面的地址。

# 清华源
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg
# 阿里云
https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg

7 添加 Docker 官方库(创建一个适合于当前 CPU 架构和系统版本的软件源)

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

同样的,如果你希望能够更快的下载到软件,可以配置软件源来替换官方地址。

# 清华源
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/ \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 阿里云
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu/ \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

8 使用命令更新 Ubuntu 源列表

sudo apt update

9 运行下列命令在 Ubuntu 22.04 LTS 服务器中安装最新 Docker CE:

sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin

10 当然你也可以安装其他版本 Docker 。运行下列命令检查可以安装的 Docker 版本

apt-cache madison docker-ce

输出:

 docker-ce | 5:24.0.7-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:24.0.6-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:24.0.5-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:24.0.4-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:24.0.3-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:24.0.2-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:24.0.1-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:24.0.0-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:23.0.6-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:23.0.5-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:23.0.4-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:23.0.3-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:23.0.2-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:23.0.1-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:23.0.0-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.24~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.23~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.22~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.21~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.20~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.19~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.18~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.17~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.16~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.15~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.14~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.13~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages

你可以挑选上面列表中的任何版本进行安装。例如,安装 5:24.0.7-1~ubuntu.22.04~jammy 这个版本,运行:

sudo apt install docker-ce=5:24.0.7-1~ubuntu.22.04~jammy docker-ce-cli=5:24.0.7-1~ubuntu.22.04~jammy containerd.io

11 安装完成后,运行如下命令验证 Docker 服务是否在运行

systemctl status docker

会有类似以下输出:

● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2024-01-06 16:51:12 CST; 8min ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 37398 (dockerd)
      Tasks: 10
     Memory: 25.2M
        CPU: 1.742s
     CGroup: /system.slice/docker.service
             └─37398 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

1月 06 16:51:09 miraclerice-vm systemd[1]: Starting Docker Application Container Engine...
1月 06 16:51:09 miraclerice-vm dockerd[37398]: time="2024-01-06T16:51:09.876405724+08:00" level=info msg="Starting up"
1月 06 16:51:09 miraclerice-vm dockerd[37398]: time="2024-01-06T16:51:09.878358692+08:00" level=info msg="detected 127.0.0.53 nameserver, assuming systemd-resolved, so>
1月 06 16:51:09 miraclerice-vm dockerd[37398]: time="2024-01-06T16:51:09.996467531+08:00" level=info msg="Loading containers: start."
1月 06 16:51:12 miraclerice-vm dockerd[37398]: time="2024-01-06T16:51:12.573775899+08:00" level=info msg="Loading containers: done."
1月 06 16:51:12 miraclerice-vm dockerd[37398]: time="2024-01-06T16:51:12.633211324+08:00" level=info msg="Docker daemon" commit=311b9ff graphdriver=overlay2 version=24>
1月 06 16:51:12 miraclerice-vm dockerd[37398]: time="2024-01-06T16:51:12.633375196+08:00" level=info msg="Daemon has completed initialization"
1月 06 16:51:12 miraclerice-vm dockerd[37398]: time="2024-01-06T16:51:12.691779992+08:00" level=info msg="API listen on /run/docker.sock"
1月 06 16:51:12 miraclerice-vm systemd[1]: Started Docker Application Container Engine.

这就表示正常启动并运行!!!

  • 如果没有运行,运行以下命令运行 Docker 服务:

    sudo systemctl start docker
    
  • 使 Docker 服务在每次重启时自动启动:

    sudo systemctl enable docker
    
  • 可以使用以下命令查看已安装的 Docker 版本:

    sudo docker version
    

12 测试docker是否运行正常

sudo docker run hello-world

只要输出包含以下内容则正常:

Hello from Docker!
This message shows that your installation appears to be working correctly.

13 在 Ubuntu 中安装 Docker Compose

这里下载最新 Docker Compose,写该文章时最新版本为:v2.23.3

运行下列命令安装最新稳定的 Docker Compose 文件(修改版本号记得不要省略v):

sudo curl -L "https://github.com/docker/compose/releases/download/v2.23.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

最后,使用下列命令赋予二进制文件可执行权限:

sudo chmod +x /usr/local/bin/docker-compose

运行下列命令检查安装的 Docker Compose 版本:

docker-compose version

使用以上命令从gihub上下载docker-compose太慢了,下载不动,只能换成国内镜像(daocloud.io)来下载。

sudo curl -L https://get.daocloud.io/docker/compose/releases/download/2.23.3/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

经过测试,下载后报错,建议通过uname -s 和 uname -m命令查看系统架构,然后在docker compose仓库下载对应版本的docker compose,具体操作如下:

# 1.检查系统架构,分别输入
uname -s
# 输出 Linux
uname -m
# 输出 x86_64

# 2. 所以在个人pc下载"docker-compose-linux-x86_64",使用xftp传到服务器(使用自己的远程连接工具即可)

# 3.cd切换到你存放"docker-compose-linux-x86_64"的目录,使用以下命令移动到"/usr/local/bin/",并重命名为docker-compose
sudo mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose

# 4.赋予权限
sudo chmod +x /usr/local/bin/docker-compose

# 5.测试是否成功
docker-compose version
# s输出Docker Compose version v2.23.3

配置镜像加速器

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://tdcar6xs.mirror.aliyuncs.com"]
}
EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

参考链接1

参考链接2

docker中文文档

docker命令

通过设置 http_proxy、https_proxy,可以让终端走指定的代理。
配置脚本如下,在终端直接执行,只会临时生效:

export http_proxy=http://127.0.0.1:7890
export https_proxy=$http_proxy
  • 12
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值