Docker VPS Hosting: Container Hóa Trên VPS Offshore
Docker đã thay đổi cách chúng ta phát triển và triển khai ứng dụng. Với Docker, môi trường development và production giống nhau hoàn toàn, loại bỏ vĩnh viễn vấn đề 'chạy được trên máy tôi'. VPS offshore của AnubizHost là nơi lý tưởng để chạy Docker containers với toàn quyền root access, không bị hạn chế bởi container registry hay policy của managed hosting.
Need this done for your project?
We implement, you ship. Async, documented, done in days.
Cài Đặt Docker trên VPS
Cài đặt Docker Engine từ repository chính thức:
curl -fsSL https://get.docker.com | bash
systemctl enable docker
systemctl start docker
docker --versionCài đặt Docker Compose:
apt install -y docker-compose-plugin
docker compose versionThêm user hiện tại vào group docker (để không cần sudo):
usermod -aG docker $USERTest cài đặt:
docker run hello-worldDocker Compose cho Multi-Container Application
Ví dụ docker-compose.yml cho một stack web app hoàn chỉnh:
services:
app:
build: .
restart: unless-stopped
environment:
- NODE_ENV=production
- DATABASE_URL=postgres://user:pass@db:5432/mydb
depends_on:
- db
- redis
networks:
- app-network
nginx:
image: nginx:alpine
ports:
- "80:80"
- "443:443"
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf:ro
- certbot-data:/etc/letsencrypt
depends_on:
- app
networks:
- app-network
db:
image: postgres:16-alpine
environment:
POSTGRES_DB: mydb
POSTGRES_USER: user
POSTGRES_PASSWORD: ${DB_PASSWORD}
volumes:
- postgres-data:/var/lib/postgresql/data
networks:
- app-network
redis:
image: redis:7-alpine
networks:
- app-network
volumes:
postgres-data:
certbot-data:
networks:
app-network:docker compose up -dDocker Volumes và Data Persistence
Data persistence là cực kỳ quan trọng trong Docker production. Sử dụng named volumes:
# Liệt kê volumes
docker volume ls
# Inspect volume
docker volume inspect postgres-data
# Backup volume
docker run --rm -v postgres-data:/source -v /backup:/backup alpine tar czf /backup/db-backup-$(date +%Y%m%d).tar.gz -C /source .Mount bind để serve static files từ host:
volumes:
- ./public:/var/www/html/public:roKiểm tra logs container:
docker compose logs -f app --tail=100Cập Nhật và Zero-Downtime Deployment
Quy trình cập nhật application không có downtime:
# Pull image mới
docker compose pull app
# Rebuild nếu dùng custom image
docker compose build app
# Rolling update
docker compose up -d --no-deps appVới Docker Swarm cho high availability:
docker swarm init
docker stack deploy -c docker-compose.yml mystack
docker service update --image myapp:v2 mystack_appDọn dẹp images và containers không dùng để tiết kiệm disk:
docker system prune -af --volumesVPS offshore AnubizHost cho phép bạn chạy Docker Swarm cluster multi-node bằng cách kết hợp nhiều VPS trong cùng region.
Related Services
Why Anubiz Host
Ready to get started?
Skip the research. Tell us what you need, and we'll scope it, implement it, and hand it back — fully documented and production-ready.