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

目录

    • 租借服务器
      • [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

相关推荐
一曦的后花园8 小时前
linux搭建promethes并对接node-exporter指标
linux·运维·服务器
byoass9 小时前
智巢AI知识库深度解析:企业文档管理从大海捞针到精准狙击的进化之路
开发语言·网络·人工智能·安全·c#·云计算
桌面运维家10 小时前
服务器进程异常监控:快速定位与排障实战指南
运维·服务器
@CLoudbays_Martin1110 小时前
UniApp是否能够接入SDK游戏盾呢?
服务器·网络·网络协议·tcp/ip·安全
郝亚军10 小时前
ubuntu 22.04如何安装libmodbus
运维·服务器·ubuntu
李日灐10 小时前
< 6 > Linux 自动化构建工具:makefile 详解 + 进度条实战小项目
linux·运维·服务器·后端·自动化·进度条·makefile
计算机安禾11 小时前
【Linux从入门到精通】第34篇:搭建FTP与Samba——跨平台文件共享解决方案
linux·运维·服务器
乌恩大侠11 小时前
【AI-RAN】在空ubuntu服务器安装环境和生成TV,高达430G文件
服务器·人工智能·ubuntu·fpga开发·o-ru
日取其半万世不竭11 小时前
用 Netdata 实时监控服务器,比 Prometheus + Grafana 轻量得多
linux·服务器·网络·系统架构·负载均衡·zabbix·grafana
JiaWen技术圈11 小时前
内核子系统 nf_tables 深度解析
linux·服务器·安全·运维开发