在 Ubuntu 上使用 Docker 编排服务,常见方式有以下几种,从简单到生产级分别是:
sudo apt update
sudo apt install docker.io docker-compose -y
sudo systemctl enable --now docker
docker-compose.yml示例(Web + MySQL):
version: "3.8"
services:
web:
image: nginx:latest
ports:
- "8080:80"
volumes:
- ./html:/usr/share/nginx/html
depends_on:
- db
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: rootpass
MYSQL_DATABASE: demo
volumes:
- db_data:/var/lib/mysql
volumes:
db_data:
docker-compose up -d
docker-compose ps
docker-compose logs
docker-compose down
✅ 适合:单机部署、开发、测试、小型项目
docker swarm init
docker swarm join --token <token> <manager-ip>:2377
docker stack deploy -c docker-compose.yml myapp
docker service ls
docker stack ps myapp
✅ 适合:多机、轻量集群、不想引入 Kubernetes
sudo snap install microk8s --classic
sudo microk8s enable dns dashboard storage
# 安装 kubeadm、kubelet、kubectl
sudo apt install -y kubeadm kubelet kubectl
sudo kubeadm init
kubectl apply -f deployment.yaml
kubectl get pods
✅ 适合:大规模、高可用、企业生产环境
| 场景 | 推荐方式 |
|---|---|
| 本地开发 | Docker Compose |
| 单服务器多容器 | Docker Compose |
| 多台服务器 | Docker Swarm |
| 生产环境 | Kubernetes |
如果你有具体需求(比如:Web + 数据库 + 缓存、自动重启、网络隔离、HTTPS),可以告诉我,我可以直接帮你写一份可用的编排文件。