在当今云原生时代,Ubuntu集群与容器编排已成为构建弹性、可扩展应用的基石。本文将手把手教你如何在 Ubuntu 系统上搭建一个基于 Docker Swarm 的轻量级容器编排环境,适合初学者快速入门。
容器编排是指自动化部署、管理、扩展和网络配置多个容器的过程。常见的工具包括 Docker Swarm 和 Kubernetes。本文以更轻量、易上手的 Docker Swarm 为例,帮助你快速掌握 Ubuntu集群上的容器编排基础。
你需要至少两台运行 Ubuntu 20.04 或更高版本的服务器(物理机或虚拟机均可),并确保以下条件:
在每台 Ubuntu 服务器上执行以下命令安装 Docker:
sudo apt updatesudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-releasecurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpgecho \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullsudo apt updatesudo apt install -y docker-ce docker-ce-cli containerd.io# 将当前用户加入 docker 组,避免每次使用 sudosudo usermod -aG docker $USERnewgrp docker # 刷新组权限(或重新登录) 选择一台机器作为管理节点(Manager),执行以下命令:
# 替换 YOUR_MANAGER_IP 为该机器的内网 IPsudo docker swarm init --advertise-addr YOUR_MANAGER_IP 成功后,你会看到类似如下的输出:
Swarm initialized: current node (xxxxxx) is now a manager.To add a worker to this swarm, run the following command: docker swarm join --token SWMTKN-1-xxxxxxxxxx YOUR_MANAGER_IP:2377 在其他 Ubuntu 节点上,复制上一步中生成的 docker swarm join 命令并执行:
docker swarm join --token SWMTKN-1-xxxxxxxxxx YOUR_MANAGER_IP:2377 返回管理节点,验证集群状态:
docker node ls 你应该能看到所有节点(包括 Manager 和 Workers)都在线。
现在我们用 容器编排部署一个 Nginx 服务:
docker service create \ --name my-web \ --publish published=80,target=80 \ --replicas 3 \ nginx:latest 该命令会创建一个名为 my-web 的服务,启动 3 个副本,并将主机的 80 端口映射到容器的 80 端口。
查看服务状态:
docker service lsdocker service ps my-web 当你熟悉了 Docker Swarm 后,可以考虑迁移到功能更强大的 Kubernetes。Kubernetes 在大规模生产环境中更为常见,但学习曲线较陡。对于中小型项目或学习目的,Docker Swarm 已足够强大且易于维护。
通过本教程,你已经掌握了在 Ubuntu集群上使用 Docker Swarm 进行容器编排的基础技能。无论你是 DevOps 新手还是开发者,这都是迈向云原生应用开发的重要一步。后续可探索服务滚动更新、健康检查、Overlay 网络等高级特性。
关键词回顾:Ubuntu集群、容器编排、Docker Swarm、Kubernetes。
本文由主机测评网于2025-12-08发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025124580.html