ubuntu 安装docker

ubuntu 22.04 server

一、检查卸载老版本docker

ubuntu下自带了docker的库,不需要添加新的源。

但是ubuntu自带的docker版本太低,需要先卸载旧的再安装新的。

注:docker的旧版本不一定被称为docker,docker.io 或 docker-engine也有可能,所以我们卸载的命令为(请使用 root 权限):

bash 复制代码
$ apt-get remove docker docker-engine docker.io containerd runc

如果上方命令不行,那么就要使用管理员权限运行命令:

bash 复制代码
sudo apt-get remove docker docker-engine docker.io containerd runc

二、更新系统,在终端中执行以下命令来更新Ubuntu软件包列表和已安装软件的版本:

bash 复制代码
sudo apt update
sudo apt upgrade

三、安装docker依赖,Docker在Ubuntu上依赖一些软件包。执行以下命令来安装这些依赖:

bash 复制代码
apt-get install ca-certificates curl gnupg lsb-release

四、添加Docker官方GPG密钥,执行以下命令来添加Docker官方的GPG密钥:

bash 复制代码
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

五、添加Docker软件源,执行以下命令来添加Docker的软件源:

bash 复制代码
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

注:该命令需要使用root权限

六、安装docker,执行以下命令来安装Docker:

bash 复制代码
apt-get install docker-ce docker-ce-cli containerd.io

七、配置用户组(可选)

默认情况下,只有root用户和docker组的用户才能运行Docker命令。我们可以将当前用户添加到docker组,以避免每次使用Docker时都需要使用sudo。命令如下:

bash 复制代码
sudo usermod -aG docker $USER

注:重新登录才能使更改生效。

八、运行docker,我们可以通过启动docker来验证我们是否成功安装。命令如下:

bash 复制代码
systemctl start docker

九、安装工具

bash 复制代码
apt-get -y install apt-transport-https ca-certificates curl software-properties-common

十、重启docker

bash 复制代码
service docker restart

十一、验证是否成功(验证不了也没有关系)

bash 复制代码
sudo docker run hello-world

注:运行命令后,可能会报错,如果遇到同样问题可以在评论区留言,也可以给出好的方法。

因为我们之前没有拉取过hello-world,所以运行命令后会出现本地没有该镜像,并且会自动拉取的操作。

十二、查看版本,我们可以通过下面的命令来查看docker的版本

bash 复制代码
sudo docker version

十三、查看镜像,上面我们拉取了hello-world的镜像(有可能没有拉取成功,所以查看不了),现在我们可以通过命令来查看镜像,命令如下:

bash 复制代码
sudo docker images

注:只要能正常查看版本,即可。

相关推荐
有毒的教程4 小时前
Ubuntu 虚拟机磁盘空间不足完整解决教程
linux·运维·ubuntu
WiChP4 小时前
【V0.1B5】从零开始的2D游戏引擎开发之路
java·服务器·数据库
geNE GENT5 小时前
Nginx WebSocket 长连接及数据容量配置
运维·websocket·nginx
小樱花的樱花5 小时前
C++ new和delete用法详解
linux·开发语言·c++
APIshop6 小时前
Java获取京东商品详情接口(item_get)实战指南
java·linux·数据库
Cx330❀6 小时前
一文吃透Linux System V共享内存:原理+实操+避坑指南
大数据·linux·运维·服务器·人工智能
薛定谔的悦6 小时前
储能系统(EMS)核心架构解析:充放电控制、防逆流、防过载与 PID 调节
linux·运维·架构
志栋智能6 小时前
超自动化运维的终极目标:让系统自治运行
运维·网络·人工智能·安全·自动化
3GPP仿真实验室6 小时前
【MATLAB源码】CSI-RS:测量链路
linux·网络·matlab
阿 才7 小时前
WSL2 + TFTP + 网络启动(Linux开发板与WSL2建立网络连接)
linux·运维·网络