无论你是刚接触容器技术的开发者,还是希望在最新平台上搭建现代化开发环境的系统管理员,本手册都将是你快速上手的理想指南。
Docker,作为现代容器化技术的代名词,已经彻底改变了软件开发与交付的方式。它通过**容器(Container)**的形式,将应用程序及其依赖打包成一个轻量、独立、可移植的运行环境,使“一次构建,随处运行”成为可能。
在这篇手册中,我们将带你逐步探索如何在以下主流平台上安装并配置最新版本的Docker:
-
Windows 11 – 微软最新的桌面系统,兼容WLS2(Windows Subsystem for Linux),为Docker容器提供了更原生的Linux支持。
-
Windows Server 2025 – 最新的服务器平台,专为企业级容器化部署优化,提供原生Windows容器支持。
-
Mac OS sequoia – Apple自带强大的开发环境,通过Docker Desktop在macOS上同样能实现强大的容器管理能力。
为什么要选择Docker?
-
轻量级:比传统虚拟机占用更少资源。
-
可移植:跨平台一致性,开发与生产环境无差异。
-
敏捷性:开发者可快速构建、测试与部署。
-
强大生态:拥有庞大的镜像仓库与社区支持。
无论你是开发者、系统管理员,还是对容器充满好奇的技术爱好者,这篇手册都将帮助你轻松迈入Docker的世界!💡
准备好了吗?让我们一起开启Docker之旅吧!🌍
Windows 11 如何安装Docker
登陆Docker网站下载Docker Desktop,保持默认勾选Use WSL 2 instead of Hyper-V (recommended),使用WSL2作为后端使用。当然,你也可以取消这个选项使用Hyper-V。点击** OK**
Docker Desktop 安装中……
安装完成,点击 Close and restart 系统会自动重启。
系统重启完成后,会自动弹出下面的界面,点击 ** Accept**
保持默认选项,使用系统推荐设置,点击 ** Finish**
此处需要进行账号登录,也可以选择 Continue with out signing in 暂时不登录。
可以根据你自身的情况进行选择,不选择可以点击又上角 ** Skip** 进行跳过。
跳过后,会打开docker desktop的界面。此时需要关注左下角的运行状态是否为 ** Engine running** 代表容器服务已经在运行。
点击右下角的 ** Terminal** 可以打开命令行,输入下方命令,查看doker的版本信息
docker version
Windows Server 2025 安装 Docker Desktop
Windows Server 2025安装Docker Desktop非常方便,直接通过命令即可安装。直接从官方源下载,自动处理依赖关系。
winget install --id Docker.DockerDesktop --source winget --silent --accept-package-agreements --accept-source-agreements
等待命令执行完成后即可完成安装。
命令执行完成,需要将服务器重启。重启后系统会自动安装WSL。按任意键退出。
在弹出的docker desktop页面上点击 Accept。
点击 Continue without signing in
点击 Skip
与Windows 11一样,检查Docker 服务器是否开启,检查Docker版本信息。
查看docker版本信息
Rocky Linux 9.5 安装 Docker
关于Rocky Linux 9.5 安装Docker 我们之前也分享过安装脚本,可以使用脚本一键安装Docker。
#!/bin/bash
LOG_FILE="/var/log/setup_docker.log"
# 写日志函数
log() {
echo "$(date +"%Y-%m-%d %H:%M:%S") - $1" | tee -a "$LOG_FILE"
}
# 检查是否是root用户
if [[ $EUID -ne 0 ]]; then
log "ERROR: 请以 root 用户运行此脚本!"
exit 1
fi
# 修改 Rocky Linux 的镜像源
configure_repos() {
log "开始配置 Rocky Linux 镜像源..."
sed -e 's|^mirrorlist=|#mirrorlist=|g'
-e 's|^#baseurl=http://dl.rockylinux.org/$contentdir|baseurl=https://mirrors.aliyun.com/rockylinux|g'
-i.bak /etc/yum.repos.d/rocky*.repo
if [[ $? -ne 0 ]]; then
log "ERROR: 修改镜像源失败!"
exit 1
fi
log "镜像源配置完成。"
}
# 更新缓存和系统
update_system() {
log "开始清理和更新缓存..."
dnf clean all && dnf makecache && dnf update -y
if [[ $? -ne 0 ]]; then
log "ERROR: 系统更新失败!"
exit 1
fi
log "系统更新完成。"
}
# 安装必要的软件包
install_dependencies() {
log "开始安装必要的软件包..."
dnf install -y yum-utils device-mapper-persistent-data lvm2 bash-completion.noarch
if [[ $? -ne 0 ]]; then
log "ERROR: 安装依赖失败!"
exit 1
fi
log "依赖安装完成。"
}
# 配置 Docker 源并安装 Docker
install_docker() {
if command -v docker &> /dev/null; then
log "Docker 已安装,跳过安装步骤。"
return
fi
log "添加 Docker 阿里云镜像源..."
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
if [[ $? -ne 0 ]]; then
log "ERROR: 配置 Docker 源失败!"
exit 1
fi
log "Docker 源配置完成。"
log "开始安装 Docker CE..."
dnf makecache && dnf -y install docker-ce
if [[ $? -ne 0 ]]; then
log "ERROR: Docker 安装失败!"
exit 1
fi
log "Docker 安装完成。"
}
# 配置 Docker 镜像加速
configure_docker() {
log "配置 Docker 镜像加速器..."
cat > /etc/docker/daemon.json <<EOF
{
"registry-mirrors": ["https://dockerhub.icu"]
}
EOF
systemctl daemon-reload
systemctl restart docker
systemctl enable docker
if [[ $? -ne 0 ]]; then
log "ERROR: Docker 服务配置失败!"
exit 1
fi
log "Docker 镜像加速器配置完成。"
}
# 停止并禁用 firewalld 服务
disable_firewalld() {
log "停止并禁用 firewalld 服务..."
systemctl stop firewalld.service
systemctl disable firewalld.service
if [[ $? -ne 0 ]]; then
log "ERROR: 停止或禁用 firewalld 服务失败!"
exit 1
fi
log "firewalld 服务已停止并禁用。"
}
# 修改 SELinux 配置
disable_selinux() {
log "禁用 SELinux..."
if grep -q '^SELINUX=' /etc/selinux/config; then
sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
else
echo "SELINUX=disabled" >> /etc/selinux/config
fi
setenforce 0
if [[ $? -ne 0 ]]; then
log "ERROR: SELinux 配置修改失败!"
exit 1
fi
log "SELinux 已禁用,系统需要重启以完全生效。"
}
# 主流程
main() {
log "开始执行脚本..."
configure_repos
update_system
install_dependencies
disable_firewalld
disable_selinux
install_docker
configure_docker
log "所有任务完成!请重启系统以使 SELinux 配置生效。"
}
main
脚本执行完成后,请重启服务器。
通过命令检查Docker运行服务是否正常
Ubuntu Server 24.04.1 LTS 安装 Docker
在 Ubuntu Server 系统下,若想安装 Docker,还可借助专门的脚本实现一键式安装操作,整个过程不仅便捷,而且效率极高,能让您快速完成部署,投入使用。
#!/bin/bash
# 遇到错误就退出脚本,防止出错后继续执行,并记录日志方便排查
set -euo pipefail
# 定义日志文件路径
LOG_FILE="/var/log/docker_install_$(date +%Y%m%d_%H%M%S).log"
# 定义终端颜色
GREEN=' 33[0;32m'
RED=' 33[0;31m'
NC=' 33[0m' # No Color
# 日志记录函数(屏幕输出 + 写入日志文件)
log() {
echo -e "$1"
echo "$(date '+%Y-%m-%d %H:%M:%S') - $1" >> "$LOG_FILE"
}
# 检查脚本是否以 root 权限运行
if [[ $EUID -ne 0 ]]; then
echo -e "${RED}请使用 root 权限运行此脚本!使用 sudo 提升权限。${NC}"
exit 1
fi
log "${GREEN}开始在 Ubuntu 24 上安装 Docker...${NC}"
log "日志文件保存在: $LOG_FILE"
# 卸载旧版本的 Docker 和相关软件包,防止版本冲突
log "${GREEN}正在卸载旧版本的 Docker 及相关软件包...${NC}"
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do
if dpkg -l | grep -q $pkg; then
apt-get remove -y $pkg >> "$LOG_FILE" 2>&1
log "${GREEN}已卸载旧版本: $pkg${NC}"
fi
done
# 更新软件源并安装必要依赖包
log "${GREEN}正在更新软件源...${NC}"
apt update >> "$LOG_FILE" 2>&1
apt upgrade -y >> "$LOG_FILE" 2>&1
log "${GREEN}正在安装 Docker 所需的依赖包...${NC}"
apt install -y ca-certificates curl gnupg lsb-release >> "$LOG_FILE" 2>&1
# 添加 Docker 官方 GPG 公钥(如存在将强制覆盖)
log "${GREEN}正在导入 Docker 官方 GPG 公钥(如存在将强制覆盖)...${NC}"
sudo mkdir -m 0755 -p /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
# 验证 GPG 密钥是否成功导入
if [[ ! -s /etc/apt/keyrings/docker.asc ]]; then
log "${RED}GPG 密钥导入失败,请检查网络连接或手动重试。${NC}"
exit 1
else
log "${GREEN}GPG 密钥成功导入。${NC}"
fi
# 配置 Docker 官方软件仓库
log "${GREEN}正在配置 Docker 官方软件仓库(如存在将强制覆盖)...${NC}"
ARCH=$(dpkg --print-architecture)
echo
"deb [arch=$ARCH signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu
$(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
# 更新软件源
log "${GREEN}正在更新软件源...${NC}"
apt update >> "$LOG_FILE" 2>&1
# 安装 Docker 引擎、CLI 和容器管理工具
log "${GREEN}正在安装 Docker 引擎、CLI 和容器管理工具...${NC}"
apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin >> "$LOG_FILE" 2>&1
# 检查 Docker 服务状态
log "${GREEN}检查 Docker 服务状态...${NC}"
if ! systemctl is-active --quiet docker; then
log "${RED}Docker 服务未运行,正在尝试启动...${NC}"
systemctl start docker >> "$LOG_FILE" 2>&1
systemctl enable docker >> "$LOG_FILE" 2>&1
log "${GREEN}Docker 服务已成功启动并设置为开机自启。${NC}"
else
log "${GREEN}Docker 服务已正常运行。${NC}"
fi
# 确认 Docker 版本
log "${GREEN}正在确认 Docker 版本...${NC}"
docker --version >> "$LOG_FILE" 2>&1
if [[ $? -ne 0 ]]; then
log "${RED}Docker 安装失败,请检查 $LOG_FILE 日志以排查错误。${NC}"
exit 1
fi
# 将当前用户加入 Docker 用户组
read -p "是否将当前用户加入 Docker 用户组?(y/n): " ADD_USER
if [[ $ADD_USER == "y" ]]; then
usermod -aG docker $SUDO_USER
log "${GREEN}用户 $SUDO_USER 已成功加入 Docker 用户组,请重新登录以生效。${NC}"
fi
# 🎉 最终确认
log "${GREEN}Docker 已成功安装在 Ubuntu 24 系统上!${NC}"
log "${GREEN}你可以使用以下命令测试 Docker 是否正常工作: docker run hello-world${NC}"
log "${GREEN}完整的安装日志已保存到: $LOG_FILE${NC}"
Mac OS安装 Docker Desktop
Mac OS安装和Windows 11类似,在官网上直接下载对应系统的安装软件即可。
总结
恭喜你!🎉 通过本篇手册,你已经成功掌握了如何在Windows 11、Windows Server 2025、Rocky Linux、Ubuntu和Mac OS上安装并配置最新版本的Docker。从桌面环境到企业级服务器,再到开发者友好的Linux发行版,你已经为容器化世界迈出了坚实的第一步。
在这篇文章中,你学到了:
✅ 如何为不同操作系统正确安装Docker。
✅ 如何验证Docker服务的正常运行。
✅ 如何运行你的第一个Docker容器并进行简单测试。
🎯 那么接下来呢?
你可以尝试:
• 用docker run探索更多官方镜像,例如nginx、mysql。
• 尝试使用docker-compose,体验多容器管理的便利性。
• 深入学习镜像构建,创建属于你自己的自定义镜像。
💡 期待你的反馈!
👉 你是否已经成功安装?是否还有哪些环节让你觉得有疑问?
👉 在评论区分享你的安装体验,或者告诉我们你希望了解的Docker进阶技巧!
🌟 觉得这篇文章有帮助? 别忘了点赞、分享,让更多人一起加入Docker的世界吧!🚀
你的每一次反馈,都是我继续优化教程的动力!
此文章为原创文章,作者:胖哥叨逼叨,如若转载,请与我联系并注明出处:https://www.pangshare.com/4155.htm