云服務器部署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.pswp.cn/pingmian/83512.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/83512.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/83512.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【學習筆記】TCP 與 UDP

TCP&#xff08;Transmission Control Protocol&#xff09;與UDP&#xff08;User Datagram Protocol&#xff09;是 網絡通訊 中最基礎也最常用的兩種 傳輸層 協議。 文章目錄 1. 簡介2. OSI 與 TCP/IP 模型中的定位3. 協議原理與關鍵機制3.1 UDP3.2 TCP 5. 實踐&#xff1a;…

HikariCP 可觀測性最佳實踐

HikariCP 介紹 HikariCP 是一個高性能、輕量級的 JDBC 連接池&#xff0c;由 Brett Wooldridge 開發。它以“光”命名&#xff0c;象征快速高效。它支持多種數據庫&#xff0c;配置簡單&#xff0c;通過字節碼優化和智能管理&#xff0c;實現低延遲和高并發處理。它還具備自動…

Java SpringBoot 調用大模型 AI 構建智能應用實戰指南

一、基礎知識 &#xff08;一&#xff09;Java基礎 Java是一種廣泛使用的高級編程語言&#xff0c;具有簡單、面向對象、分布式、解釋型、健壯、安全、架構中立、可移植、高性能、多線程和動態等特點。在構建基于Spring Boot的AI應用之前&#xff0c;您需要具備扎實的Java基礎…

電路圖識圖基礎知識-降壓啟動(十五)

降壓啟動電動機控制電路 降壓啟動&#xff0c;是指啟動時降低加在電動機定子繞組上的電壓&#xff0c;待電動機啟動起來后再將電壓 恢復到額定值&#xff0c;使之運行在額定電壓下。降壓啟動可以減小啟動電流&#xff0c;從而減小線路電壓降。 傳統的降壓啟動包括定子串電阻或…

2025年大模型平臺落地實踐研究報告|附75頁PDF文件下載

本報告旨在為各行業企業在建設落地大模型平臺的過程中&#xff0c;提供有效的參考和指引&#xff0c;助力大模型更高效更有價值地規模化落地。本報告系統性梳理了大模型平臺的發展背景、歷程和現狀&#xff0c;結合大模型平臺的特點提出了具體的落地策略與路徑&#xff0c;同時…

Docker慢慢學

1、Docker DeskTop 2、N8N下載 3、Kafka docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID1 -e KAFKA_ZOOKEEPER_CONNECTzookeeper:2181 -e KAFKA_ADVERTISED_LISTENERSPLAINTEXT://localhost:9092 -e KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR1 con…

Java 中創建線程主要有三種方式

在 Java 中&#xff0c;創建線程主要有三種方式&#xff0c;每種方式各有特點和適用場景。以下是詳細說明和代碼示例&#xff1a; 1. 繼承 Thread 類 原理&#xff1a;自定義類繼承 Thread 并重寫 run() 方法&#xff0c;通過調用 start() 啟動新線程。 特點&#xff1a;簡單直…

ck-editor5的研究 (5):優化-頁面離開時提醒保存,順便了解一下 Editor的生命周期 和 6大編輯器類型

前言 經過前面的 4 篇內容&#xff0c;我們已經慢慢對 CKEditor5 熟悉起來了。這篇文章&#xff0c;我們就來做一個優化&#xff0c;順便再補幾個知識點&#xff1a; 當用戶離開時頁面時&#xff0c;提醒他保存數據了解一下 CKEditor5 的 六大編輯器類型了解一下 editor 實例對…

第42節:模型優化與部署:Web服務部署(Flask, FastAPI)

1. 引言 在現代人工智能和機器學習應用中,模型的開發只是整個流程的一部分。 將訓練好的模型有效地部署為可訪問的Web服務,使其能夠處理實際請求并返回預測結果,是模型價值實現的關鍵環節。Python生態系統提供了多種輕量級Web框架,其中Flask和FastAPI是目前最受歡迎的選擇…

LabVIEW超寬帶緊湊場測量系統

采用 LabVIEW 開發超寬帶緊湊場測量系統&#xff0c;實現天線方向圖、目標雷達散射截面&#xff08;RCS&#xff09;及天線增益的自動化測量。通過品牌硬件設備&#xff0c;優化系統架構&#xff0c;解決傳統測量系統在兼容性、數據處理效率及操作便捷性等方面的問題&#xff0…

vue2使用筆記、vue2和vue3的區別

文章目錄 vue2和vue3的區別1. 實現數據響應式的原理不同2. 生命周期不同3. vue 2.0 采用了 option 選項式 API&#xff0c;vue 3.0 采用了 composition 組合式 API4. 新特性編譯宏5. 父子組件間雙向數據綁定 v-model 不同6. v-for 和 v-if 優先級不同7. 使用的 diff 算法不同8.…

CSS3美化頁面元素

1. 字體 <span>標簽 字體樣式? 字體類型&#xff08;font-family&#xff09; 字體大小&#xff08;font-size&#xff09; 字體風格&#xff08;font-style&#xff09; 字體粗細&#xff08;font-weight&#xff09; 字體屬性&#xff08;font&#xff09; 2. 文本 文…

【筆記】Windows 下載并安裝 ChromeDriver

以下是 在 Windows 上下載并安裝 ChromeDriver 的筆記&#xff1a; ? Windows 下載并安裝 ChromeDriver 1?? 確認 Chrome 瀏覽器版本 打開 Chrome 瀏覽器 點擊右上角 ? → 幫助 → 關于 Google Chrome 記下版本號&#xff0c;例如&#xff1a;114.0.5735.199 2?? 下載…

工廠模式 vs 策略模式:設計模式中的 “創建者” 與 “決策者”

在日常工作里&#xff0c;需求變動或者新增功能是再常見不過的事情了。而面對這種情況時&#xff0c;那些耦合度較高的代碼就會給我們帶來不少麻煩&#xff0c;因為在這樣的代碼基礎上添加新需求往往困難重重。為了保證系統的穩定性&#xff0c;我們在添加新需求時&#xff0c;…

Java web學習路徑預覽

Java web學習路徑預覽 &#xff08;圖源&#xff1a;黑馬程序員&#xff09; 目錄 Java web學習路徑預覽 一、HTML、CSS、JS 1. HTML (HyperText Markup Language): 網頁的骨架 2. CSS (Cascading Style Sheets): 網頁的皮膚 3. JavaScript (JS): 網頁的行為 二、Ajax、…

linux、docker、git相關操作

1 linux 1.1解壓縮 1.1.1 zip zip xxx.zip file 把名為fle的文件壓縮成xxx.zip -r 遞歸壓縮&#xff1a;加上該選項才能壓縮文件夾 zip -r example_new.zip 示例集 # 新建壓縮包并命名為 example_new.zip zip -r xxx.zip file1 file2 dir1 將多個文件目錄壓成zip包 unzip fi…

Attention Is All You Need (Transformer) 以及Transformer pytorch實現

參考https://zhuanlan.zhihu.com/p/569527564 Attention Is All You Need (Transformer) 是當今深度學習初學者必讀的一篇論文。 一. Attention Is All You Need (Transformer) 論文精讀 1. 知識準備 機器翻譯&#xff0c;就是將某種語言的一段文字翻譯成另一段文字。 由…

深入淺出:Oracle 數據庫 SQL 執行計劃查看詳解(1)——基礎概念與查看方式

背景 在當今的軟件開發領域&#xff0c;盡管主流開發模式往往傾向于采用單表模式&#xff0c;力圖盡可能地減少表之間的連接操作&#xff0c;以期達到提高數據處理效率、簡化應用邏輯等目的。然而&#xff0c;對于那些已經上線運行多年的運維老系統而言&#xff0c;它們內部往…

每天掌握一個Linux命令 - fail2ban

Linux 命令工具 fail2ban 使用指南 目錄 Linux 命令工具 fail2ban 使用指南一、工具概述二、安裝方式1. 包管理器安裝&#xff08;推薦&#xff09;Debian/Ubuntu 系統CentOS/RHEL 系統Arch Linux 系統 2. 手動編譯安裝&#xff08;適用于自定義需求&#xff09; 三、核心功能四…

互聯網大廠智能體平臺體驗筆記字節扣子羅盤、阿里云百煉、百度千帆 、騰訊元器、TI-ONE平臺、云智能體開發平臺

互聯網大廠 字節扣子、阿里云百煉、百度千帆 、騰訊元器、TI-ONE平臺、云智能體開發平臺 體驗 開始動手 了解 智能體&#xff0c;發現已經落后時代太遠 光頭部互聯網大廠對開 公開的平臺就已經這么多&#xff0c;可以學習和了解&#xff0c;相關的信息 整理了對應的平臺地址…