首页 > 编程语言 >Systemd集成Golang二进制程序

Systemd集成Golang二进制程序

时间:2023-10-20 11:24:25浏览次数:30  
标签:Systemd Service service 二进制 server Golang api go WorkingDirectory

首先新建Service,名称叫做server-api

vim /lib/systemd/system/server-api.service

[Unit]
Description=server api

[Service]
Type=simple
Restart=always
RestartSec=5s
ExecStart=/root/go/main
WorkingDirectory=/root/go/

[Install]
WantedBy=multi-user.target

ExecStart是go可执行文件的路径

WorkingDirectory要注意,如果程序中使用了相对路径来加载一些配置文件,如果在Service中没有配置WorkingDirectory,默认是根路径,所以配置文件就从根路径来寻找,会造成一些意想不到的情况

启动

service server-api start

停止

service server-api stop

查看状态

service server-api status

开机启动

service server-api enable

标签:Systemd,Service,service,二进制,server,Golang,api,go,WorkingDirectory
From: https://www.cnblogs.com/qcy-blog/p/17776612.html

相关文章

  • Golang泛型的简单使用
    packagemainimport"fmt"//MyInt~表示不仅支持int8,还支持int8的衍生类型int8A和int8BtypeMyIntinterface{ int|~int8|int16|int32|int64}funcgetMaxNum[TMyInt](a,bT)T{ ifa>b{ returna } returnb}//结构体typeAgeTinterface{......
  • 十进制、二进制和十六进制换算表
          ......
  • golang 实现协程池
    import( "fmt" "sync" "time")typeTaskfunc()typeThreadPoolstruct{ workerCountint taskQueuechanTask wgsync.WaitGroup}funcNewThreadPool(workerCount,maxTaskNumint)*ThreadPool{ pool:=&......
  • golang常见用法
    结构体数组与接口数组转换如果想把[]struct转为[]interface,我们发现直接赋值会报错。理论上interface可以转换任何数据,为什么结构体数组不可以呢?这是因为interface的设计导致的,如果能理解interface的底层实现,就能很清楚知道如何转换了。如图所示,与C++的虚函数类似,interface保......
  • golang生成uuid
    1,借助linux系统命令/usr/bin/uuidgen1.1代码packagemainimport("fmt""log""os/exec")funcmain(){out,err:=exec.Command("uuidgen").Output()iferr!=nil{log.Fatal(err)}fmt.......
  • systemd-resolved 踩坑记录
    dns服务器配置无域名的主机名解析及域名带.local的测试情况如下1不支持dns无域名主机名解析2域名.local结尾的也不支持当双方主机都开启LLMNR=yesMulticastDNS=yes的情况下,可以ping通主机域名,走的llmnr链路本地多播名称解析cat/etc/systemd/resolved.conf[Resolve]#DNS=#......
  • 【转】dive into golang database/sql(1)
    转,原文:https://www.jianshu.com/p/3b0b3a4c83da ---------------数据库操作是一个应用必不可少的部分,但是我们很多时候对golang的sql包仅仅是会用,这是不够的。每一条语句的执行,它的背后到底发生了什么。各式各样对sql包的封装,是不是有必要的,有没有做无用功?这是gotodataba......
  • 【转】dive into golang database/sql(3)
    转,原文: https://www.jianshu.com/p/cd8cee3d7fc3 ----------------上一章中我们一起探讨了golangdatabase/sql包中如何获取一个真实的数据库连接。当我们拿到一个数据库连接之后就可以开始真正的数据库操作了。本章讲继续深入,一起探讨底层是如何进行数据库操作的。上一章......
  • 【转】dive into golang database/sql(2)
    转,原文: https://www.jianshu.com/p/807257fcb985?utm_campaign=studygolang.com&utm_medium=studygolang.com&utm_source=studygolang.com ----------当我们拿到一个DB实例之后就可以操作数据库了。本篇我们将更加深入database/sql包,共同探讨连接池的维护和请求的处理。上......
  • c++数组的二进制文件读写
    #include<fstream>//forifstream、ofstreamtemplate<typenameOB>inlinevoidsaveObject(constchar*filename,OB&object,intlength)//传入要保存的对象引用{std::ofstreamosm(filename,std::ios::out|std::ios::binary);osm.write((constcha......