当前位置: 首页 > ds >正文

云服务器部署Gin+gorm 项目 demo

更多个人笔记见:
注意点击“继续”,而不是“发现新项目”
github个人笔记仓库 https://github.com/ZHLOVEYY/IT_note
gitee 个人笔记仓库 https://gitee.com/harryhack/it_note
个人学习,学习过程中还会不断补充~ (后续会更新在github上)

gitee项目地址(失效了去我的笔记仓库具体看~):https://gitee.com/harryhack/it_note/tree/main/%E5%90%8E%E7%AB%AF%E7%AC%94%E8%AE%B0/%E6%9C%8D%E5%8A%A1%E5%99%A8%E9%83%A8%E7%BD%B2%E7%9B%B8%E5%85%B3

腾讯云文档

本地测试

docker 中的 exec 检查mysql -u user -p ,用于检查本地的是否 ok (数据库情况)
注意终端中操作需要 docker exec it 加在指令前面
docker exec -it <容器名称或ID> /bin/bash 结合 sql 自己查

本地的docker-compose up --build 可以运行起来说明就是完全 ok 的

安装docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/v2.23.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composesudo chmod +x /usr/local/bin/docker-compose  # 增加权限查看版本
docker --version   # centos9 腾讯云上自带的
docker-compose --version
配置密钥
  • 在控制台设置密钥,会自动下载文件到本地
  • cp ~/Downloads/1234.pem ~/.ssh/ 复制密钥到专门的 ssh 文件夹(部分人可能没创建过)

https://cloud.tencent.com/document/product/1207/44643 ssh 连接

  • chmod 600 ~/.ssh/1234.pem 记得添加权限,不然会认定为不安全
传输和解压

tar -czvf gin-mysql-demo.tar.gz . 本地进行文件压缩

  • scp 上传似乎有问题,scp gin-mysql-demo.tar.gz root@<服务器公网IP>:/root/
    好像没有开启,不过腾讯云的界面中,直接上传是可以的,更加方便 (一个电脑的图标)

  • root 下有一个mydemo_ginsql.tar.gz 压缩文件,该怎么新建一个文件夹然后解压进去:
    (千万别直接解压不然都跑出来了)

mkdir -p mydemo_ginsql
ls -al  #查看
tar -zxvf ./mydemo_ginsql.tar.gz -C ./mydemo_ginsql
安装 GO

为了 docker 中 go mod 下载更快 -> 设置 goproxy->需要安装 go

  • 为 dnf 配置源
sudo sed -i 's|mirrorlist=|#mirrorlist=|g' /etc/yum.repos.d/CentOS-*
sudo sed -i 's|#baseurl=http://mirror.centos.org|baseurl=https://mirrors.tencent.com/centos|g' /etc/yum.repos.d/CentOS-*
sudo dnf clean all
sudo dnf makecache
  • 下载 golang
sudo dnf install golang
  • 设置相关环境
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc # 添加环境变量
source ~/.bashrc  
go env -w GOPROXY=https://proxy.golang.com.cn,direct # 添加代理
  • 发现原来需要在 docker 中配置相关的 goproxy! 因为是在容器中进行的,而不是本地,本地自己配置过终端代理所以 docker 中也可以很快
    • 这里可以看我的代码中
启动服务

dockerfile 中添加 env!!

# 设置 GOPROXY 环境变量!!!
ARG GOPROXY
ENV GOPROXY=${GOPROXY:-https://mirrors.tencent.com/go/,direct}
ENV GO111MODULE=on

看看代码,我是改好了的
接着 docker-compose up --build

连接测试
curl -v http://localhost:8080/users # 测试连接
sudo iptables -L -n | grep 8080 | grep 8080 # 测试防火墙
  • 注意,腾讯云的服务器需要你自己设置端口开放,自己添加 8080 端口设置规则!!!! (除了本地的防火墙系统中的关闭以外)

  • 接着就可以愉快的测试了!
    http://你的公网ip:8080/users GET和 POST 轮流测试

  • 测试完记得及时关闭端口!保证安全性

补充(不需要看):
  • 更新软件包
sudo dnf update -y
sudo dnf upgrade -y
sudo dnf install -y vim wget curl git zip unzip
  • 防火墙和端口相关
# 安装防火墙
sudo dnf install -y firewalld# 启动防火墙并设置开机自启
sudo systemctl start firewalld
sudo systemctl enable firewalld# 开放常用端口(根据需要调整)
sudo firewall-cmd --permanent --add-port=22/tcp    # SSH
sudo firewall-cmd --permanent --add-port=80/tcp    # HTTP
sudo firewall-cmd --permanent --add-port=443/tcp   # HTTPS
sudo firewall-cmd --reload
http://www.xdnf.cn/news/10930.html

相关文章:

  • python调用硅基流动的视觉语言模型
  • 自然语言处理(NLP)的系统学习路径规划
  • HarmonyOS运动开发:精准估算室内运动的距离、速度与步幅
  • docker中组合这几个命令来排查 import 模块失败 的问题
  • 数字商城小程序源码,开启便捷电商新体验
  • 【论文笔记】High-Resolution Representations for Labeling Pixels and Regions
  • RAG入门 - Reader(2)
  • 定时器:中央对齐模式剖析
  • Neovim - 打造一款属于自己的编辑器(一)
  • 第二章支线六 ·CSS幻纹术:背景、遮罩与视觉层级
  • 实验设计与分析(第6版,Montgomery著,傅珏生译) 第10章拟合回归模型10.9节思考题10.12 R语言解题
  • 大模型分布式训练笔记(基于accelerate+deepspeed分布式训练解决方案)
  • 互联网大厂Java求职面试:AI大模型与云原生技术的深度融合
  • Java面试八股--06-Linux篇
  • Linux或者Windows下PHP版本查看方法总结
  • 【C++项目】负载均衡在线OJ系统-1
  • 关于easyx头文件
  • 大模型备案、登记和算法备案主要区别总结
  • 升级:用vue canvas画一个能源监测设备和设备的关系监测图!
  • 【AI教我写网站-ECG datacenter】
  • Cookie 和 Session:Web 身份验证的核心机制
  • ArcGIS Pro 3.4 二次开发 - 地图创作 1
  • 解决 Ubuntu 20.04 虚拟机中 catkin_make 编译卡死问题
  • 06 APP 自动化- H5 元素定位
  • hive聚合函数多行合并
  • 纯色图片生成器
  • ARP (Address Resolution Protocol,地址解析协议)将IP地址解析为物理地址(MAC地址)
  • 缩量和放量指的是什么?
  • 默认网关 -- 负责转发数据包到其他网络的设备(通常是路由器)
  • websocket协议