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

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

相关推荐
IT成长日记10 分钟前
【Docker基础】Docker数据卷管理:docker volume ls及其参数详解
运维·docker·容器·volume ls
偷萧逸苦茶17 分钟前
docker常见命令
docker·容器·eureka
pipip.1 小时前
UDP————套接字socket
linux·网络·c++·网络协议·udp
zkmall2 小时前
企业电商解决方案哪家好?ZKmall模块商城全渠道支持 + 定制化服务更省心
大数据·运维·重构·架构·开源
云资源服务商3 小时前
解锁阿里云日志服务SLS:云时代的日志管理利器
服务器·阿里云·云计算
绝不偷吃4 小时前
ELK日志分析系统
运维·elk·jenkins
朱包林4 小时前
day45-nginx复杂跳转与https
linux·运维·服务器·网络·云计算
孙克旭_4 小时前
day045-nginx跳转功能补充与https
linux·运维·nginx·https
孞㐑¥6 小时前
Linux之Socket 编程 UDP
linux·服务器·c++·经验分享·笔记·网络协议·udp
Hacker_Oldv6 小时前
软件测试(功能、工具、接口、性能、自动化、测开)详解
运维·自动化