【Docker】知识二
今天接着之前的内容!
一、前置环境配置
1. 开启 root 远程密码登录(可选)
如果需要通过远程连接操作服务器,建议开启 root 用户的密码登录权限,方便后续操作:
# 修改SSH配置文件,允许root密码登录
sed -i 's/^#PermitRootLogin.*/PermitRootLogin yes/' /etc/ssh/sshd_config
# 重启SSH服务使配置生效
systemctl restart sshd
说明:若仅本地操作,可跳过此步骤;生产环境建议结合密钥登录,提升安全性。
2. 配置静态网络(可选)
为避免 IP 地址动态变化影响后续操作,建议配置静态 IP。
# 创建/修改网络配置文件
cat > /etc/netplan/00-installer-config.yaml <<EOF
# 网络配置文件(由subiquity生成,手动修改)
network:
renderer: networkd # 使用networkd作为网络渲染器
ethernets:
ens33: # 网卡名称(根据实际环境修改,可通过ip addr查看)
addresses:
- 192.168.30.100/24 # 静态IP地址及子网掩码
routes:
- to: default
via: 192.168.30.2 # 网关地址(根据实际路由器配置修改)
nameservers:
addresses:
- 223.5.5.5 # DNS服务器(阿里公共DNS,稳定可靠)
version: 2 # netplan配置版本
EOF
# 应用网络配置(无需重启系统)
netplan apply
验证:执行ip addr查看 IP 是否配置成功,执行ping www.baidu.com测试网络连通性。
3. 配置国内软件仓库
Ubuntu 默认软件源在国外,下载速度较慢,建议替换为阿里镜像源,提升软件安装效率:
# 备份原有软件源配置文件
cp -a /etc/apt/sources.list /etc/apt/sources.list.bak
# 替换为阿里镜像源
sed -i "s@http://.*archive.ubuntu.com@https://mirrors.aliyun.com/@g" /etc/apt/sources.list
二、安装 Docker 引擎
1. 更新软件包索引并安装 Docker
Ubuntu 官方仓库已包含 Docker,可直接通过 apt 命令安装:
# 更新软件包索引(确保获取最新软件信息)
sudo apt update
# 安装Docker引擎(docker.io为官方维护的包)
sudo apt install docker.io -y
2. 启动 Docker 并设置开机自启
安装完成后,需要手动启动 Docker 服务,并配置开机自启,避免重启系统后需重新启动:
# 启用并立即启动Docker服务
sudo systemctl enable --now docker
# 查看Docker服务状态(确认是否正常运行)
sudo systemctl status docker
验证:若输出中显示active (running),说明 Docker 服务已成功启动。
三、配置 Docker 镜像加速(核心优化)
Docker 默认镜像仓库在国外,拉取镜像速度极慢,甚至超时失败。配置国内镜像加速器后,可大幅提升拉取速度:
1. 创建 Docker 配置目录及文件
# 创建Docker配置目录(若不存在)
mkdir -p /etc/docker
# 写入镜像加速配置(使用 DaoCloud 和 1ms 双加速器,提升稳定性)
cat > /etc/docker/daemon.json <<"EOF"
{
"registry-mirrors": [
"https://docker.m.daocloud.io",
"https://docker.1ms.run"
]
}
EOF
2. 重启 Docker 使配置生效
# 重新加载系统守护进程配置
systemctl daemon-reload
# 重启Docker服务
systemctl restart docker
3. 验证镜像加速是否生效
# 查看Docker信息,确认镜像加速器已配置
docker info
验证:输出中找到Registry Mirrors字段,若显示配置的加速地址,说明配置成功。
四、Docker 实战测试:运行 Nginx 容器
环境搭建完成后,通过运行一个 Nginx 容器来验证 Docker 是否正常工作:
1. 拉取并运行 Nginx 容器
# 拉取Nginx镜像并启动容器
# -d:后台运行容器
# -p 8000:80:将主机8000端口映射到容器80端口(主机端口:容器端口)
# --name container1:给容器命名为container1
docker run -d -p 8000:80 --name container1 nginx
# 查看正在运行的容器
docker ps
说明:首次运行时,Docker 会自动从镜像仓库拉取 Nginx 镜像,配置加速后拉取速度会很快。
2. 自定义容器内网页内容
进入容器内部,修改 Nginx 默认首页内容,验证容器可操作:
# 进入container1容器的交互式终端(/bin/bash为容器内的shell)
docker exec -it container1 /bin/bash
# 在容器内修改Nginx首页文件
root@0933b23e198a:/# echo "hello container, 2026!" > /usr/share/nginx/html/index.html
# 退出容器终端
root@0933b23e198a:/# exit
3. 访问容器内的 Nginx 服务
通过主机 IP + 映射端口,访问 Nginx 服务,验证是否正常响应(在宿主机通过curl访问宿主机的 8000 端口(已映射到容器的 80 端口),验证服务是否正常):
# 本地访问(若在服务器本地操作)
curl http://127.0.0.1:8000
验证:若输出hello container, 2026!,说明 Docker 容器运行正常,端口映射成功,整个环境搭建完成!
总结
本文从基础环境配置、Docker 安装、镜像加速到实战测试,完整覆盖了 Ubuntu 系统下 Docker 的搭建流程。通过国内镜像源和 Docker 镜像加速器的配置,解决了网络访问慢的核心问题,适合新手快速上手。
更多推荐



所有评论(0)