linux docker环境安装教程

前提条件

  1. 拥有一台服务器,自己本地或者使用云上的服务器都可以,本文以阿里云服务器为例;
  2. 登录服务器,通过账号密码或者其他方式远程连接服务器;
  3. 镜像加速地址,阿里云的ACR镜像仓库控制台即可找到,或者使用其他开源加速地址。

安装docker

方式一:

# 安装Docker的依赖库。
sudo yum install -y yum-utils device-mapper-persistent-data lvm2  
#添加Docker CE的软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo  
# 安装并更新 Docker CE
sudo yum makecache fast
sudo yum -y install docker-ce
#启动Docker服务
sudo systemctl start docker
# 重新加载服务配置文件
sudo systemctl daemon-reload
# 重启Docker服务
sudo systemctl restart docker

方式二

如果您使用的是非阿里云服务器,请将http://mirrors.cloud.aliyuncs.com替换为https://mirrors.aliyun.com。

#添加Docker软件包源
sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo
#Alibaba Cloud Linux3专用的dnf源兼容插件
sudo dnf -y install dnf-plugin-releasever-adapter --repo alinux3-plus
#安装Docker社区版本,容器运行时containerd.io,以及Docker构建和Compose插件
sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
#启动Docker
sudo systemctl start docker
#设置Docker守护进程在系统启动时自动启动
sudo systemctl enable docker

配置镜像源

当Docker Hub镜像拉取受网络影响时,可配置Docker镜像源提升速度。但请注意,镜像源配置不适用于docker search命令,因为它直接查询Docker Hub。
加速器地址可以再ACR控制台找到,选择对应的操作系统
在这里插入图片描述

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

添加完成后重启

sudo systemctl daemon-reload
sudo systemctl restart docker

安装校验

执行命令能看到安装的版本

[root@iZj6c6bwfahd5p0ux2f8eyZ ~]# docker version
Client: Docker Engine - Community
 Version:           26.1.3
 API version:       1.45
 Go version:        go1.21.10
 Git commit:        b72abbb
 Built:             Thu May 16 08:34:39 2024
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          26.1.3
  API version:      1.45 (minimum version 1.24)
  Go version:       go1.21.10
  Git commit:       8e96db1
  Built:            Thu May 16 08:33:34 2024
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.32
  GitCommit:        8b3b7ca2e5ce38e8f31a34f35b2b68ceb8470d89
 runc:
  Version:          1.1.12
  GitCommit:        v1.1.12-0-g51d5e94
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

旧版本卸载

安装之前需要确认旧版本已经卸载,卸载命令参考:

#删除Docker相关源
sudo rm -f /etc/yum.repos.d/docker*.repo
#卸载Docker和相关的软件包
sudo dnf -y remove \
docker-ce \
containerd.io \
docker-ce-rootless-extras \
docker-buildx-plugin \
docker-ce-cli \
docker-compose-plugin

实践–创建Web程序镜像

  1. 以下是创建基于Nginx镜像的简单Web程序镜像。
    构建Web程序镜像。
#拉取Nginx镜像
sudo docker pull nginx:latest
#创建Dockerfile设置Nginx作为基础镜像,并在Web服务器的根目录创建一个显示Hello World!的index.html文件。
sudo tee Dockerfile <<-'EOF'
FROM nginx:latest
RUN echo 'Hello World!' > /usr/share/nginx/html/index.html
EOF
#构建镜像,镜像名称为hello-world
sudo docker build . -t hello-world:latest
  1. 启动Web程序镜像的容器,并且命名容器名称为hello-world
sudo docker run -d -p 80:80 --name hello-world hello-world:latest
  1. 执行curl http://localhost命令,验证Web程序是否正确显示Hello World!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我是小bā吖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值