首页 文章 精选 留言 我的

精选列表

搜索[bash 指令],共10018篇文章
优秀的个人博客,低调大师

宝塔bash命令重启 Go 项目的方式

### 宝塔重启 Go 项目:从一键发布脚本里翻出来的隐藏命令 最近在搞 Go 程序的一键编译和一键发布,原本只想写个部署脚本:代码拉下来,`go build` 编译,替换二进制,再把服务重启。前面几步都好办,卡住的是最后一步——怎么让宝塔里的 Go 项目自动重启。 最笨的办法是登录面板点一下“重启”。但既然要做自动化,总不能每次发布还手动点按钮。于是我开始顺着宝塔的目录结构往下翻。 宝塔的主目录在 `/www`,服务相关的东西基本都在 `/www/server` 下面。其中面板核心代码在 `/www/server/panel`,这里面又分了很多子目录: - `BTPanel`:面板主程序; - `config`:全局配置; - `data`:运行时数据; - `vhost`:站点和反向代理配置; - `script`:各种脚本,很多计划任务、备份任务都从这里调用。 我一开始重点看了 `script` 目录。这个目录里放了不少脚本,比如 `backup.py`、`logsBackup.py`、`rememory.sh` 之类,看起来都是面板内部真正干活的东西。 当时就想,既然面板上能重启项目,那背后一定有个脚本在负责这件事。 继续翻的时候,果然看到了 `restart_project.py`。名字非常直白,基本就是“重启项目”的意思。这个脚本不在官方公开的 `bt` 命令列表里,平时用 `bt restart` 只能重启面板本身,并不能重启某个具体的网站或 Go 项目。 所以它更像是面板内部使用的接口,文档里不会专门写出来。 打开脚本简单看了一眼,它接受语言类型和项目名称作为参数。于是我在终端里试了一下: ``` bt python /www/server/panel/script/restart_project.py go chat ``` 这里 `go` 表示项目语言类型,`chat` 是宝塔面板里配置的项目名称。执行之后,项目直接重启了,日志里也没有报错。后面又试了几次,状态都很稳定,不是那种偶尔能跑通的野路子。 这件事挺有意思。宝塔对外提供的命令行工具,主要用来管理面板自身,比如重启面板、修改端口、查看登录信息。 但面板内部其实还藏着一批更细粒度的脚本,真正支撑着网页上那些按钮。只要你愿意翻一翻 `/www/server/panel/script`,就能看到不少平时不会注意到的东西。 对自动化部署来说,这条命令刚好补上了最后一环: ``` go build -o chat # 替换二进制文件 bt python /www/server/panel/script/restart_project.py go chat ``` 编译、替换、重启,全部可以在脚本里完成,不需要再登录面板点按钮。很多时候,文档里找不到的答案,其实就藏在源码和目录结构里。 ---

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册