华为云服务器项目部署指南

📋 目录


1. 服务器配置

1.1 华为云服务器购买配置

⚠️ 重要提醒
  • 退款政策: 5天以内可退款,超过5天无法退款
  • 版本选择: 推荐 Ubuntu 20.04 LTS 或更新版本,有收费的比如银河麒麟一个月280
  • 公网IP: 必须绑定公网IP,否则无法SSH连接
🔧 推荐配置
服务器规格:
  CPU: 2核以上
  内存: 4GB以上
  硬盘: 40GB以上
  带宽: 5Mbps以上
  系统: Ubuntu 20.04 LTS

1.2 安全组配置

📝 配置步骤
  1. 控制台操作

    控制台 → 安全组 → 选择安全组 → 入方向规则 → 添加规则
    
  2. 必需端口开放

    # 基础端口
    22      # SSH
    80      # HTTP
    443     # HTTPS
    
    # 项目特定端口
    9101    # WebSocket服务
    8080    # 应用服务
    3306    # MySQL (如需要)
    6379    # Redis (如需要)
    
  3. 一键开放常用端口

    • 使用"一键放常用端口"功能
    • 重要: 开放后仍需手动添加项目特定端口

1.3 SSH连接工具推荐

🌟 WindTerm (推荐)
  • 下载地址: https://github.com/kingToolbox/WindTerm/releases
  • 支持平台: Windows / macOS / Linux
  • 特点: 功能强大,界面美观,支持多平台
🔧 连接配置
# SSH连接命令
ssh root@YOUR_SERVER_IP

# 首次连接需要确认主机密钥
# 建议配置SSH密钥认证

2. 环境部署

2.1 系统环境准备

📦 更新系统包
# 更新包列表
apt update && apt upgrade -y

# 安装基础工具
apt install -y curl wget git vim nano htop
🐳 Docker环境部署
# 安装Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh

# 启动Docker服务
systemctl start docker
systemctl enable docker

# 验证安装
docker --version
🐍 Python环境配置
# 安装Python 3.8+
apt install -y python3 python3-pip python3-venv

# 创建虚拟环境
python3 -m venv /root/venv
source /root/venv/bin/activate

# 安装项目依赖
pip install -r requirements.txt

2.2 项目部署

📁 目录结构
/root/
├── xloong/           # 项目运行目录
├── git/              # Git仓库目录
├── logs/             # 日志目录
└── backups/          # 备份目录
🚀 部署步骤
# 1. 创建项目目录
mkdir -p /root/xloong
cd /root/xloong

# 2. 上传项目文件
# 使用WindTerm或其他工具上传项目文件

# 3. 安装依赖
pip install -r requirements.txt

# 4. 配置环境变量
cp .env.example .env
nano .env  # 编辑配置文件

# 5. 启动服务
python3 entry.py

3. 协作开发

3.1 Git仓库设置

🏗️ 服务器端Git仓库初始化
# 创建裸仓库
cd /root/git
git init --bare xloong.git

# 初始化项目仓库
cd /root/xloong
git init
git add .
git commit -m "Initial commit"
git remote add origin /root/git/xloong.git
git push -u origin master

3.2 开发者权限配置

🔑 SSH密钥管理
# 开发者生成SSH密钥
ssh-keygen -t rsa -b 4096 -C "developer@example.com"

# 服务器端添加公钥
nano /root/.ssh/authorized_keys
# 粘贴开发者的公钥,每行一个
👥 多开发者协作流程
# 1. 开发者克隆仓库
git clone root@SERVER_IP:/root/git/xloong.git
cd xloong

# 2. 修改代码并提交
git add .
git commit -m "fix: 修复bug / feat: 添加新功能"
git push origin master

# 3. 服务器端同步更新
cd /root/xloong
git pull origin master

3.3 服务重启策略

🔄 不同应用类型的重启方式
# Python应用
systemctl restart xloong.service

# Docker应用
docker-compose down
docker-compose up -d

# 直接运行的应用
pkill -f "python3 entry.py"
nohup python3 entry.py > logs/app.log 2>&1 &

4. 监控与维护

4.1 系统监控

📊 基础监控命令
# 系统资源监控
htop                    # 实时进程监控
df -h                   # 磁盘使用情况
free -h                 # 内存使用情况
netstat -tulpn          # 网络连接状态

# 服务状态检查
systemctl status xloong.service
docker ps               # Docker容器状态
📝 日志管理
# 查看应用日志
tail -f /root/xloong/logs/app.log

# 查看系统日志
journalctl -u xloong.service -f

# 日志轮转配置
nano /etc/logrotate.d/xloong

4.2 备份策略

💾 自动备份脚本
#!/bin/bash
# backup.sh
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_DIR="/root/backups"

# 备份项目文件
tar -czf $BACKUP_DIR/xloong_$DATE.tar.gz /root/xloong

# 保留最近7天的备份
find $BACKUP_DIR -name "xloong_*.tar.gz" -mtime +7 -delete

echo "Backup completed: xloong_$DATE.tar.gz"
⏰ 定时任务设置
# 编辑crontab
crontab -e

# 每天凌晨2点执行备份
0 2 * * * /root/scripts/backup.sh

5. 故障排除

5.1 常见问题解决

🔍 连接问题
# SSH连接失败
# 检查安全组是否开放22端口
# 检查服务器是否运行
ping YOUR_SERVER_IP

# 端口访问问题
# 检查防火墙状态
ufw status
# 检查端口监听
netstat -tulpn | grep :9101
🐛 应用问题
# Python应用无法启动
# 检查Python版本
python3 --version
# 检查依赖安装
pip list
# 检查配置文件
cat .env

# Docker应用问题
# 查看容器日志
docker logs container_name
# 重启容器
docker restart container_name

5.2 性能优化

⚡ 系统优化
# 清理系统缓存
apt autoremove -y
apt autoclean

# 优化内存使用
echo 'vm.swappiness=10' >> /etc/sysctl.conf

# 优化网络参数
echo 'net.core.rmem_max = 16777216' >> /etc/sysctl.conf

6. 安全注意事项

6.1 基础安全配置

🔒 SSH安全
# 修改SSH端口
nano /etc/ssh/sshd_config
# Port 2222

# 禁用root密码登录
# PermitRootLogin prohibit-password

# 重启SSH服务
systemctl restart ssh
🛡️ 防火墙配置
# 安装并配置UFW
apt install ufw
ufw default deny incoming
ufw default allow outgoing
ufw allow ssh
ufw allow 80
ufw allow 443
ufw allow 9101
ufw enable

6.2 数据安全

🔐 敏感信息保护
# 设置文件权限
chmod 600 /root/.ssh/authorized_keys
chmod 700 /root/.ssh

# 保护配置文件
chmod 600 .env
chmod 600 config.yaml
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐