美文网首页
记systemctl启动go程序

记systemctl启动go程序

作者: GXGXX | 来源:发表于2023-06-25 22:23 被阅读0次

    最近经常用到gin框架搭建API接口程序,在部署到服务器时,nohup方式感觉挺麻烦,虽然相应的命令保存在了shell文件中,但是还是要每次找到对应文件执行,就想着直接配置service文件形式,然后直接start、stop就行了,记录一下步骤和配置:

    1. 配置启动的shell文件demo.sh,之所以配置是因为Windows系统build的go程序文件,需要先授权用户可执行文件。
    #!/bin/sh
    sudo chmod +x demo && ./demo
    
    1. 将demo.sh和go文件放在同一目录,然后配置对应的service
    2. cd到/etc/systemd/system/下,创建demo.service:
    touch demo.service
    
    1. 将如下配置拷贝到service文件中
    [Unit]
    Description="Just a demo"
    After= network.target
    
    [Service]
    Type=simple
    # 可根据实际情况修改user
    User=root
    WorkingDirectory=/root/demo/
    # 根据实际情况配置
    ExecStart=/bin/sh /root/demo/demo.sh
    Restart=on-failure
    RestartSec=5s
    
    [Install]
    WantedBy=multi-user.target
    
    1. 重新加载
    systemctl daemon-reload
    
    1. 启动
    systemctl start demo
    
    1. 查看启动状态
    systemctl status demo
    
    1. 根据需要设置系统开机启动
    systemctl enable demo
    

    接下来再更新go文件时,就可以直接上传文件,systemctl restart一下就OK啦

    相关文章

      网友评论

          本文标题:记systemctl启动go程序

          本文链接:https://www.haomeiwen.com/subject/uhhwydtx.html