简介
这是一个用于在 Linux 系统上自动安装和配置 Docker 的 Bash 脚本。该脚本能够自动检测系统环境,安装 Docker,并配置国内镜像加速源,简化了 Docker 的部署过程。
功能特点
- 自动检测系统类型和版本
- 支持多种 Linux 发行版
- 自动检测并配置包管理器
- 智能检测 Docker 是否已安装
- 自动配置国内镜像加速源
- 提供详细的安装日志
- 友好的交互式提示
- 安装后自动验证 Docker 功能
支持的系统
- CentOS
- RHEL (Red Hat Enterprise Linux)
- Rocky Linux
- AlmaLinux
- Ubuntu
- Debian
系统要求
- Linux 操作系统(上述支持的发行版之一)
- Root 权限或 sudo 权限
- 稳定的网络连接
安装步骤
-
下载脚本:
可以从以下仓库获取脚本:
- Gitee: https://gitee.com/not_that/docker-install/blob/master/docker-install.sh
- GitCode: https://gitcode.com/ayaya_mana/docker-install/blob/main/docker-install.sh
使用 wget 或 curl 下载:
bash# 使用 wget wget https://gitee.com/not_that/docker-install/raw/master/docker-install.sh # 或使用 curl curl -O https://gitcode.com/ayaya_mana/docker-install/raw/main/docker-install.sh -
添加执行权限:
bashchmod +x docker-install.sh -
运行脚本:
bashsudo bash docker-install.sh
脚本功能说明
环境检测
脚本会自动检测以下信息:
- 系统类型和版本
- 可用的包管理器(yum/dnf/apt-get)
- Docker 是否已安装
- 网络连接状态
Docker 安装流程
- 移除旧版本 Docker(如果存在)
- 安装必要的依赖包
- 添加 Docker 官方软件源(使用阿里云镜像)
- 安装 Docker CE(社区版)
- 启动 Docker 服务并设置为开机自启
镜像加速源配置
脚本会自动配置以下国内镜像加速源(按优先级排序):
- https://docker.m.daocloud.io
- https://dockerproxy.com
- https://docker.mirrors.ustc.edu.cn
- https://docker.nju.edu.cn
- https://mirror.baidubce.com
配置文件位置:/etc/docker/daemon.json
安装验证
脚本会执行以下验证步骤:
- 检查 Docker 版本
- 验证 Docker 服务状态
- 运行测试容器(hello-world)
- 验证镜像加速源配置
使用说明
安装完成后,您可以使用以下常用 Docker 命令:
bash
# 运行容器
docker run [选项] 镜像
# 查看运行中的容器
docker ps
# 查看所有镜像
docker images
# 查看容器日志
docker logs 容器ID
# 停止容器
docker stop 容器ID
# 删除容器
docker rm 容器ID
示例命令
bash
# 运行 Nginx 容器
docker run -d -p 80:80 nginx
# 交互式运行 Ubuntu 容器
docker run -it ubuntu bash
# 运行测试容器
docker run --rm hello-world
日志文件
安装日志保存在:/var/log/docker-install.log
如果安装过程中遇到问题,可以查看此日志文件获取详细信息。
常见问题
1. 权限错误
如果遇到权限错误,请确保使用 sudo 运行脚本:
bash
sudo bash docker-install.sh
2. 网络连接问题
如果安装过程中出现网络问题:
- 检查网络连接
- 确保可以访问 Docker Hub 或镜像源
- 脚本会自动使用国内镜像加速源
3. Docker 服务启动失败
如果 Docker 服务启动失败:
- 检查日志文件:
/var/log/docker-install.log - 查看 Docker 服务状态:
systemctl status docker - 查看 Docker 服务日志:
journalctl -u docker
4. 镜像拉取失败
如果镜像拉取失败:
- 检查网络连接
- 确认镜像加速源配置:
docker info | grep -A 5 "Registry Mirrors" - 尝试手动拉取镜像:
docker pull 镜像名称
注意事项
- 脚本需要 root 权限运行
- 安装过程中会自动移除旧版本的 Docker
- 建议在生产环境使用前先在测试环境验证
- 如果系统已有 Docker 安装,脚本会提示是否跳过安装或卸载旧版本
- 镜像加速源配置会覆盖现有的
/etc/docker/daemon.json文件
注意:安装脚本会修改系统软件源配置,建议在全新系统上运行。如需在生产环境中使用,请先在测试环境验证。