在腾讯云服务器上使用docker部署应用?

服务器

在腾讯云服务器上使用 Docker 部署应用是一个常见且高效的方式。以下是详细步骤,帮助你从零开始在腾讯云服务器上使用 Docker 部署一个应用(以部署一个简单的 Node.js 应用为例):


✅ 第一步:购买并登录腾讯云服务器

  1. 登录腾讯云控制台:https://cloud.tencent.com
  2. 购买一台 云服务器 CVM(建议选择 Ubuntu 20.04/22.04 或 CentOS 7/8)
  3. 获取服务器的公网 IP、用户名(如 ubunturoot)和密码(或密钥)
  4. 使用 SSH 登录服务器:
ssh ubuntu@<你的公网IP>

✅ 第二步:安装 Docker

1. 更新系统包

sudo apt update && sudo apt upgrade -y

2. 安装依赖

sudo apt install -y apt-transport-https ca-certificates curl software-properties-common

3. 添加 Docker 官方 GPG 密钥

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

4. 添加 Docker 仓库

echo "deb [arch=amd64 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/null

5. 安装 Docker

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io

6. 验证安装

sudo docker --version

7. (可选)将当前用户加入 docker 组,避免每次使用 sudo

sudo usermod -aG docker $USER

退出并重新登录 SSH,使组权限生效。


✅ 第三步:准备你的应用

以部署一个简单的 Node.js 应用为例:

1. 创建项目目录

mkdir myapp && cd myapp

2. 创建 app.js

// app.js
const express = require('express');
const app = express();
const port = 3000;

app.get('/', (req, res) => {
  res.send('Hello from Docker on Tencent Cloud!');
});

app.listen(port, () => {
  console.log(`App running on http://0.0.0.0:${port}`);
});

3. 创建 package.json

{
  "name": "myapp",
  "version": "1.0.0",
  "main": "app.js",
  "scripts": {
    "start": "node app.js"
  },
  "dependencies": {
    "express": "^4.18.0"
  }
}

4. 创建 Dockerfile

# 使用官方 Node.js 镜像
FROM node:18-alpine

# 设置工作目录
WORKDIR /app

# 复制 package.json 和安装依赖
COPY package*.json ./
RUN npm install

# 复制应用代码
COPY . .

# 暴露端口
EXPOSE 3000

# 启动命令
CMD ["npm", "start"]

✅ 第四步:构建并运行 Docker 镜像

# 构建镜像
docker build -t myapp:latest .

# 运行容器
docker run -d -p 3000:3000 --name myapp_container myapp:latest

-d 表示后台运行,-p 3000:3000 表示将宿主机的 3000 端口映射到容器的 3000 端口。


✅ 第五步:配置腾讯云安全组

  1. 登录腾讯云控制台
  2. 找到你的 CVM 实例
  3. 进入「安全组」配置
  4. 添加规则,放行端口 3000(或你应用使用的端口)

    • 协议类型:TCP
    • 端口:3000
    • 源 IP:0.0.0.0/0(或限制为你的 IP)

✅ 第六步:访问应用

在浏览器中访问:

http://<你的腾讯云公网IP>:3000

你应该看到:

Hello from Docker on Tencent Cloud!

✅ 可选:使用 Docker Compose(更复杂应用)

  1. 安装 Docker Compose:
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
  1. 创建 docker-compose.yml
version: '3'
services:
  web:
    build: .
    ports:
      - "3000:3000"
    restart: unless-stopped
  1. 启动服务:
docker-compose up -d

✅ 常用命令

命令 说明
docker ps 查看运行中的容器
docker logs <container> 查看容器日志
docker stop <container> 停止容器
docker rm <container> 删除容器
docker images 查看本地镜像

✅ 总结

通过以上步骤,你已经成功在腾讯云服务器上使用 Docker 部署了一个应用。你可以将此流程扩展到部署 Nginx、MySQL、React、Python、Java 等各种应用。


如需部署更复杂的项目(如前后端分离、数据库、HTTPS 等),可以继续使用:

  • Docker Compose 管理多服务
  • Nginx 反向X_X
  • 使用腾讯云 CLB / CDN / 证书服务

如果你告诉我你要部署的具体应用类型(如 Flask、Spring Boot、Vue 等),我可以提供更具体的 Dockerfile 示例。

未经允许不得转载:CDNK博客 » 在腾讯云服务器上使用docker部署应用?