在腾讯云服务器上使用 Docker 可以高效地部署和管理容器化应用。以下是关键步骤和注意事项:
1. 环境准备
-
云服务器选择:确保实例满足需求(建议至少2核4GB,系统盘50GB+),推荐镜像:
- Ubuntu 20.04/22.04 LTS
- CentOS 7.9/8(需注意EOL后的替代方案)
- TencentOS Server(腾讯云优化版)
-
安全组配置:
- 开放Docker端口(默认2375/2376,生产环境建议仅内网使用或配置TLS)。
- 如需X_X访问容器服务(如Web应用),开放对应端口(80、443等)。
2. 安装Docker
Ubuntu/CentOS
# 卸载旧版本(如有)
sudo apt-get remove docker docker-engine docker.io containerd runc # Ubuntu
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine # CentOS
# 安装依赖
sudo apt-get update && sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common # Ubuntu
sudo yum install -y yum-utils device-mapper-persistent-data lvm2 # CentOS
# 添加Docker官方源
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - # Ubuntu
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo # CentOS
# 安装Docker引擎
sudo apt-get update && sudo apt-get install -y docker-ce docker-ce-cli containerd.io # Ubuntu
sudo yum install -y docker-ce docker-ce-cli containerd.io # CentOS
# 启动并设置开机自启
sudo systemctl enable --now docker
验证安装
sudo docker run hello-world
3. 腾讯云优化配置
-
镜像提速:使用腾讯云Docker Hub镜像提速(替换
<your-id>为腾讯云账号ID):sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": [ "https://mirror.ccs.tencentyun.com", "https://<your-id>.mirror.tencentcloudcr.com" ] } EOF sudo systemctl restart docker -
数据盘挂载(可选):若应用数据量大,建议将
/var/lib/docker挂载到数据盘。
4. 常用操作
容器管理
# 运行Nginx容器并映射端口
docker run -d --name my-nginx -p 80:80 nginx
# 查看容器日志
docker logs -f my-nginx
# 进入容器
docker exec -it my-nginx /bin/bash
持久化存储
# 创建卷并挂载
docker volume create my-vol
docker run -d -v my-vol:/data --name my-app nginx
网络配置
# 创建自定义网络
docker network create my-net
docker run -d --network my-net --name app1 nginx
5. 安全建议
- 避免使用root:将用户加入
docker组(需谨慎,等同于赋予sudo权限):sudo usermod -aG docker $USER - 启用TLS:若需远程管理,配置Docker TLS加密(参考文档)。
- 资源限制:通过
--cpus、--memory限制容器资源。
6. 腾讯云扩展服务
- TKE (Tencent Kubernetes Engine):若需编排,可直接使用腾讯云托管的K8s服务。
- TCR (Tencent Container Registry):私有镜像仓库,集成腾讯云权限管理。
常见问题
- 权限错误:执行命令前加
sudo,或重新登录用户(newgrp docker)。 - 端口冲突:检查主机端口是否被占用(
netstat -tulnp | grep 80)。 - 存储不足:清理无用镜像(
docker system prune -a)或扩容磁盘。
通过上述步骤,你可以在腾讯云服务器上快速搭建Docker环境并部署应用。如需更复杂场景(如Swarm/K8s集群),可进一步结合腾讯云生态工具。
云服务器