别再踩坑!最全Docker安装教程,手把手教你快速上手

无论你是刚接触容器技术的开发者,还是希望在最新平台上搭建现代化开发环境的系统管理员,本手册都将是你快速上手的理想指南。

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**

Pasted image 20250112184913

Docker Desktop 安装中……

Pasted image 20250112184928

安装完成,点击 Close and restart 系统会自动重启。

Pasted image 20250112192733

系统重启完成后,会自动弹出下面的界面,点击 ** Accept**

Pasted image 20250113143709

保持默认选项,使用系统推荐设置,点击 ** Finish**

Pasted image 20250113144459

此处需要进行账号登录,也可以选择 Continue with out signing in 暂时不登录。

Pasted image 20250113144644

可以根据你自身的情况进行选择,不选择可以点击又上角 ** Skip** 进行跳过。

Pasted image 20250113144743

跳过后,会打开docker desktop的界面。此时需要关注左下角的运行状态是否为 ** Engine running** 代表容器服务已经在运行。

Pasted image 20250113144853

点击右下角的 ** Terminal** 可以打开命令行,输入下方命令,查看doker的版本信息

docker version

Pasted image 20250113145542

Windows Server 2025 安装 Docker Desktop

Windows Server 2025安装Docker Desktop非常方便,直接通过命令即可安装。直接从官方源下载,自动处理依赖关系。

winget install --id Docker.DockerDesktop --source winget --silent --accept-package-agreements --accept-source-agreements

Pasted image 20250113151008

等待命令执行完成后即可完成安装。

Pasted image 20250113151426

命令执行完成,需要将服务器重启。重启后系统会自动安装WSL。按任意键退出。

Pasted image 20250113152042

在弹出的docker desktop页面上点击 Accept

Pasted image 20250113152144

点击 Continue without signing in

Pasted image 20250113152251

点击 Skip

Pasted image 20250113152335

与Windows 11一样,检查Docker 服务器是否开启,检查Docker版本信息。

Pasted image 20250113152428

查看docker版本信息

Pasted image 20250113152505

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

脚本执行完成后,请重启服务器。

Pasted image 20250113155942

通过命令检查Docker运行服务是否正常

Pasted image 20250113160103

Ubuntu Server 24.04.1 LTS 安装 Docker

在 Ubuntu Server 系统下,若想安装 Docker,还可借助专门的脚本实现一键式安装操作,整个过程不仅便捷,而且效率极高,能让您快速完成部署,投入使用。

Pasted image 20250113175734

#!/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类似,在官网上直接下载对应系统的安装软件即可。

Pasted image 20250113180353

总结

恭喜你!🎉 通过本篇手册,你已经成功掌握了如何在Windows 11Windows Server 2025Rocky LinuxUbuntuMac OS上安装并配置最新版本的Docker。从桌面环境到企业级服务器,再到开发者友好的Linux发行版,你已经为容器化世界迈出了坚实的第一步。

在这篇文章中,你学到了:

✅ 如何为不同操作系统正确安装Docker。

✅ 如何验证Docker服务的正常运行。

✅ 如何运行你的第一个Docker容器并进行简单测试。

🎯 那么接下来呢?

你可以尝试:

• 用docker run探索更多官方镜像,例如nginx、mysql。

• 尝试使用docker-compose,体验多容器管理的便利性。

• 深入学习镜像构建,创建属于你自己的自定义镜像。

💡 期待你的反馈!

👉 你是否已经成功安装?是否还有哪些环节让你觉得有疑问?

👉 在评论区分享你的安装体验,或者告诉我们你希望了解的Docker进阶技巧!

🌟 觉得这篇文章有帮助? 别忘了点赞、分享,让更多人一起加入Docker的世界吧!🚀

你的每一次反馈,都是我继续优化教程的动力!

此文章为原创文章,作者:胖哥叨逼叨,如若转载,请与我联系并注明出处:https://www.pangshare.com/4155.htm

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 2小时前
下一篇 2小时前

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注