第一次连接腾讯云服务器的记录与经验

目录

    • 租借服务器
      • [1. 阿里云服务器](#1. 阿里云服务器)
      • [2. 腾讯云服务器](#2. 腾讯云服务器)
    • 远程连接
      • [1. 踩坑](#1. 踩坑)
      • [2. 解决](#2. 解决)
      • [3. 项目执行](#3. 项目执行)
    • 外部访问
      • [1. 允许外部访问](#1. 允许外部访问)
      • [2. 挂载](#2. 挂载)

有一个比赛需要演示一下我的前后端程序,因此需要保持程序处于运行状态,且用cpolar的话需要保证电脑处于联网状态,然而我并没有买宿舍的校园网,因此需要租用一个服务器来运行

租借服务器

比较热门的有阿里云云服务器ECS和腾讯云服务器CVM。

这种小项目用云服务器ECS或轻量应用服务器。我这里用的是轻量应用服务器

1. 阿里云服务器

  1. 打开阿里云云服务器ECS,点击免费试用,可以选择试用的产品,这里可以选云服务器ECS和轻量应用服务器
  2. 我发现这里的云服务器ECS试用额度是3个月,但是我只要用一个下午,感觉好浪费。至于为什么不选轻量应用服务器,我也不知道为什么当时没有选

2. 腾讯云服务器

  1. 打开轻量应用服务器,应该会有免费试用的选项,我已经用过了,找不到在哪里了
  2. 我直接按默认创建了实例,因为我是Windows程序,所以选择了宝塔Windows
  3. 用户名和密码是在站内信里,我找半天

远程连接

1. 踩坑

  1. 我想用vscode连接,但是我不知道Windows原来不支持ssh(应该吧),白搞半天一直失败

  2. 重装成Ubuntu,但是第二天忘记了,在设置装了可选应用的OpenSSH想再试试Windows,发现已经改成Linux,就有给卸载了,结果ssh用不了了,又重新下回来搞半天

  3. 用公钥创建了ssh密钥,绑定了实例,然后进行VSCode的ssh连接,但还是连接失败了

2. 解决

  1. 试了一下登录免密连接(TAT),不用改用户名就能连上

  2. 本来想摆烂,但是强迫症犯了,想解决这个问题。

  3. 尝试在腾讯云控制界面直接登录,选择登录,连接协议选择终端连接(SSH)------密码连接还是失败,重置密码还是不行。后来又重置了下,又可以了,可能是密码输入错了...

  4. 选择密钥连接,当时不懂,选择的是.pub后缀的公钥,连接失败,应该选择没有后缀的私有密钥

  5. 注意免密连接和终端连接的用户名是不一样的,推荐使用用户名ubuntu,而非root

  6. 在配置一下config文件就可以在VSCode用 SSH 连接了

  7. 重装系统后如果VSCode连接失败,就把C:\Users\用户名\.ssh文件夹的known_hosts和·known_hosts.old`删掉,再重新连接

3. 项目执行

  1. 安装Miniconda(轻量)
    步骤1:下载安装脚本

    bash 复制代码
    # 使用 wget 下载(国内推荐清华源)
    wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh

    步骤2:运行安装

    bash 复制代码
    # 给予执行权限
    chmod +x Miniconda3-latest-Linux-x86_64.sh
    
    # 运行安装脚本
    ./Miniconda3-latest-Linux-x86_64.sh

    步骤3:安装过程

    安装时会询问:

    阅读协议:按回车浏览,输入 yes接受

    安装位置:默认 ~/miniconda3,直接回车

    初始化:询问是否初始化,输入 yes

    步骤4:生效配置

    bash 复制代码
    # 重新加载配置文件
    source ~/.bashrc
    
    # 验证安装
    conda --version
  2. 创建项目环境

    bash 复制代码
    conda create -n testenv python=3.11

    要输入两次accept接受条款

  3. 配置 SSH 密钥

    步骤1:确保已配置 SSH 密钥

    bash 复制代码
    # 检查是否有 SSH 密钥
    ls -la ~/.ssh/id_rsa*
    
    # 如果没有,生成新的
    ssh-keygen -t rsa -b 4096 -C "邮箱"

    步骤2:添加公钥到 GitHub

    复制下面的输出结果

    bash 复制代码
    cat ~/.ssh/id_rsa.pub
    
    # 然后:
    # 1. 登录 GitHub → Settings → SSH and GPG keys
    # 2. 点击 "New SSH key"
    # 3. 粘贴公钥

    步骤3:克隆项目

    HTTPS 或 SSH 都可以

    bash 复制代码
    git clone ...

接下来就可以正常使用了

外部访问

1. 允许外部访问

步骤一:配置端口

bash 复制代码
# 在app.py加上这样一句
if __name__ == '__main__':
    app.run(host='0.0.0.0', port=端口号(一般是5000), debug=True)

步骤二:配置防火墙规则

找到实例(服务器),点击防火墙 -> 添加规则

应用类型:自定义

来源:全部IPv4和IPv6地址

协议:TCP

端口:5000

策略:允许

步骤三:访问

访问地址:你的服务器公网IP:5000

2. 挂载

我直接在VScode终端运行,退出后程序也终止了,把这事给忘了

tmux是一个终端复用器,它可以创建一个独立的会话,这个会话不会因为终端关闭而消失

  1. 安装tmux

    bash 复制代码
    sudo apt update && sudo apt install tmux
  2. tmux常用命令

    创建会话

    bash 复制代码
    # 创建一个名为"my_flask"的新会话
    tmux new -s my_flask
    
    # 在这个新会话中启动你的程序
    python app.py         

    临时退出会话与恢复会话。退出后程序依然会运行

    bash 复制代码
    # 临时退出会话
    Ctrl + B,松开两个按键再按 D
    
    # 恢复会话
    tmux attach -t my_flask

    查看现有会话

    bash 复制代码
    tmux ls

    删除会话

    bash 复制代码
    # 删除指定的会话
    tmux kill-session -t my_flask
    
    # 删除所有会话
    tmux kill-server

相关推荐
大树8812 小时前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
小宇宙Zz12 小时前
Maven依赖冲突
java·服务器·maven
古城小栈14 小时前
Unix 与 Linux 异同小叙
linux·服务器·unix
程序猿阿伟15 小时前
《Chrome离线扩展安装的底层逻辑与场景落地指南》
服务器·网络·chrome
凡人叶枫15 小时前
Effective C++ 条款42:了解 typename 的双重意义
java·linux·服务器·c++
AC赳赳老秦15 小时前
用 OpenClaw 搭建服务器故障应急响应系统,自动处理 80% 常见运维故障
android·运维·服务器·python·rxjava·deepseek·openclaw
java_cj15 小时前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes
lsyeei16 小时前
linux 系统目录详解
linux·运维·服务器
森G16 小时前
75、服务器源码解析---------云视频服务项目
linux·服务器·网络·c++·qt
张飞飞飞飞飞16 小时前
Tmux命令使用教程
linux·服务器·ubuntu