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

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

相关推荐
赵民勇6 小时前
Linux/Unix中install命令全面用法解析
linux·shell
Kendra9196 小时前
Kubernetes 常用命令
云原生·容器·kubernetes
Rabbit_QL6 小时前
【网络设置】Docker 自定义网络深度解析:从踩坑到工程实践
网络·docker·容器
苏宸啊7 小时前
Linux指令篇(一)
linux·运维·服务器
睡不醒的猪儿8 小时前
nginx常见的优化配置
运维·nginx
我要升天!8 小时前
Linux中《网络基础》
linux·运维·网络
国强_dev8 小时前
在数据库开发和运维中的“错误信息误导(Red Herring)”
运维·adb·数据库开发
安科瑞刘鸿鹏178 小时前
工业自动化系统中抗晃电保护的协同控制研究
运维·网络·嵌入式硬件·物联网
ZStack开发者社区8 小时前
ZStack Cloud 5.5.0正式发布
运维·服务器·网络
草莓熊Lotso8 小时前
脉脉独家【AI创作者xAMA】|当豆包手机遭遇“全网封杀”:AI学会操作手机,我们的饭碗还保得住吗?
运维·开发语言·人工智能·智能手机·脉脉