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

Debian 12 服务器搭建Beego环境

一、Debian 12系统准备
1.更新系统
#apt update && apt upgrade -y
2.安装基础工具
#apt install -y git curl wget make gcc
二、安装Go环境
Go语言的镜像官网:https://golang.google.cn/
在这里插入图片描述

1.下载go最新版
#cd /usr/local/src
#wget -o https://golang.google.cn/dl/go1.24.2.linux-amd64.tar.gz
#tar -zxvf go1.24.2.linux-amd64.tar.gz -C /usr/local
2.设置环境变量
在这里插入图片描述
#vim /etc/profile.d/go.sh
export GOPROXY=https://goproxy.cn # 设置代理
export GOROOT=/usr/local/go #Go的安装目录(这儿用的二进制版本)
export GOPATH=/data/go #Go的工作目录
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin # 设置环境变量

然后执行:
#source /etc/profile.d/go.sh 让配置立即生效
3.查看go版本
#go version
在这里插入图片描述
三、安装Beego 及Bee,生成mybeego-app
(一)使用 Go Modules 管理依赖
1.创建项目目录
#mkdir -p /opt/mybeego-app
2.初始化 Go 模块
#go mod init leyuxy.online/mybeego-app
#vim main.go
输入如下内容:
package main

import “github.com/beego/beego/v2/server/web”

func main() {
web.Run()
}
#go mod tidy
3.安装Bee
#go get github.com/astaxie/beego(可能安装不上)
#go install github.com/beego/bee@latest
此时,Bee应该就安装成功了
在这里插入图片描述
(二)利用bee new mybeego-app
1.删除/opt/mybeego-app
#rm -rf /opt/mybeego-app
2. 利用bee new mybeego-app
#cd /opt
#bee new mybeego-app
#ls
在这里插入图片描述
此时运行会弹出错误。
3.清理和更新依赖
#go clean -modcache
#go mod tidy
或手动获取beego依赖:
#go get -u github.com/astaxie/beego (建议用这个命令)
#ls
4.生产环境编译(禁用调试模式,优化二进制)
编译 Linux 可执行文件(静态链接,避免依赖问题)
#CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags=“-w -s” -o mybeego-app
在这里插入图片描述
四、使用 Systemd 管理进程
1.创建 Systemd 服务文件
#vim /usr/lib/systemd/system/mybeego.service
2.写入以下内容:
[Unit]
Description=My Beego App
After=network.target

[Service]
Type=simple
User=www-data
Group=www-data
WorkingDirectory=/opt/mybeego-app
ExecStart=/opt/mybeego-app/mybeego-app
Restart=always
RestartSec=3
#Environment=“GIN_MODE=release” # 生产模式
#Environment=“BEEGO_RUNMODE=prod” # Beego 生产模式

[Install]
WantedBy=multi-user.target

3.管理服务
#systemctl daemon-reload
#systemctl start mybeego
#systemctl enable mybeego # 开机自启
#systemctl status mybeego
在这里插入图片描述
4.查看日志
#journalctl -u mybeego -f # 实时日志

五、使用 Nginx 反向代理
配置 Nginx 代理到 Beego 应用(默认监听 8080):
[root@iZ2vc4lk3435sxtvgjdc79Z:conf.d]# cat lessonpreparation.conf
server {
listen 443 ssl;
server_name lp.leyuxy.online;

location / {
proxy_ssl_server_name on;
proxy_pass http://127.0.0.1:8080;

}

# access_log /var/log/nginx/jupyterlab-access.log; 

}
效果如下:
在这里插入图片描述

相关文章:

  • 汽车BMS技术分享及其HIL测试方案
  • 计算机网络-子网划分试题七
  • PyCharm2024.3.5专业版解决Conda executable is not found问题
  • 信息学奥赛一本通 1929:【04NOIP普及组】火星人 | 洛谷 P1088 [NOIP 2004 普及组] 火星人
  • MIME类型
  • Android中的libs.versions.toml文件
  • Sentinel核心源码分析(下)
  • Python----PaddlePaddle(深度学习框架PaddlePaddle,概述,安装,衍生工具)
  • 红宝书第三十一讲:通俗易懂的包管理器指南:npm 与 Yarn
  • 武汉迅狐科技:AI赋能企业营销,打造智能获客新范式
  • 【软件系统架构】分布式架构
  • 六种蝴蝶昆虫分类-图像分类数据集
  • 【力扣hot100题】(067)寻找两个有序数组的中位数
  • 壹起航:15 年深耕,助力中国工厂出海远航产品出海
  • Valgrind——内存调试和性能分析工具
  • 蓝桥杯真题——前缀总分、遗迹
  • el-table,新增、复制数据后,之前的勾选状态丢失
  • 【深度学习】【目标检测】【Ultralytics-YOLO系列】YOLOV3源码整体结构解析
  • 系统与网络安全------Windows系统安全(11)
  • 【笔记】VS中C#类库项目引用另一个类库项目的方法
  • 多用户智能网站建设源码/seo销售代表招聘
  • 建设一元云购类网站/如何制作微信小程序店铺
  • 设计师个人网站源码/seo服务是什么
  • 做支付网站/安徽网站seo公司
  • 做数学题的网站/如何推广软件
  • 深圳做网站哪个好/信阳网站推广公司