选择适合运行Docker的云主机配置需要综合考虑应用场景、性能需求和成本。以下是分场景的详细建议:
CPU:
内存:
总内存 = (容器数 × 单容器内存) + 2GB系统预留
存储:
推荐配置:
# 内核参数调整
echo "vm.swappiness = 10" >> /etc/sysctl.conf
echo "net.ipv4.ip_local_port_range = 1024 65000" >> /etc/sysctl.conf
# Docker守护进程配置
cat > /etc/docker/daemon.json <<EOF
{
"storage-driver": "overlay2",
"log-opts": {"max-size": "10m", "max-file": "3"},
"default-ulimits": {
"nofile": {"Name": "nofile", "Hard": 65536, "Soft": 65536}
}
}
EOF
应用场景 | 推荐配置 | 云厂商实例示例 | 特殊要求 |
---|---|---|---|
开发测试环境 | 2核4GB+50GB SSD | AWS t3.large | 无状态部署 |
Web应用集群 | 4核16GB+100GB SSD | GCP e2-standard-4 | 负载均衡+自动扩展 |
数据库容器 | 8核32GB+500GB NVMe | Azure L8s v2 | 专用存储卷 |
AI训练环境 | 16核64GB+GPU(T4/V100) | AWS p3.2xlarge | NVIDIA容器运行时 |
高可用K8s节点 | 8核32GB+100GB SSD | 阿里云 ecs.g7ne.8xlarge | 多可用区部署 |
必须配置:
--userns-remap
)--cap-drop ALL
)推荐安全扫描工具:
# 定期扫描镜像漏洞
docker scan <image-name>
# 运行时监控
docker run -d --name falco -v /var/run/docker.sock:/host/var/run/docker.sock falcosecurity/falco
推荐部署:
docker run -d -p 3000:3000 \
-v grafana-storage:/var/lib/grafana \
grafana/grafana
docker run -d -p 9090:9090 \
-v prometheus.yml:/etc/prometheus/prometheus.yml \
prom/prometheus
监控指标重点关注: - 容器内存OOM次数 - 存储IOPS饱和度 - 网络丢包率 - CPU Throttling时间
根据实际负载情况,建议每季度进行一次配置评估和优化调整。对于生产环境,建议采用「过度配置+自动伸缩」的策略来平衡性能和成本。