登录
首页 >  Golang >  Go问答

用 go 模块实现的服务创建

来源:stackoverflow

时间:2024-02-29 17:00:24 410浏览 收藏

从现在开始,我们要努力学习啦!今天我给大家带来《用 go 模块实现的服务创建》,感兴趣的朋友请继续看下去吧!下文中的内容我们主要会涉及到等等知识点,如果在阅读本文过程中有遇到不清楚的地方,欢迎留言呀!我们一起讨论,一起学习!

问题内容

我正在尝试在 do 上的 ubuntu vps 实例上部署 go 应用程序。我需要创建一个服务,但我能找到的唯一示例包括使用 gopath,如本教程中所示。

自从模块出现以来,我不需要使用 gopath 并且 go 没有安装在我的服务器上。

如何更改此代码以创建一个服务来运行没有 gopath 的 go 应用程序?

[unit]
description= instance to serve api
requires=mysql.service
after=network.target
after=mysql.service[service]
user=root
group=www-data
environment=gopath=/srv/api/
execstart=/srv/api/myapp[install]
wantedby=multi-user.target

编辑:该文件有效

[Unit]
Description= instance to serve api
ConditionPathExists=/srv/api/myapp-api
Requires=mysql.service
After=network.target
After=mysql.service

[Service]
Type=simple
AmbientCapabilities=CAP_SYS_RAWIO
User=nobody
Group=www-data
LimitNOFILE=1024

WorkingDirectory=/srv/api
ExecStart=/srv/api/myapp-api

StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=myapp-api

[Install]
WantedBy=multi-user.target

解决方案


不需要 GOPATH。只需设置 ExecStartWorkingDirectory (如果有意义的话)。

https://fabianlee.org/2017/05/21/golang-running-a-go-binary-as-a-systemd-service-on-ubuntu-16-04/

今天带大家了解了的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>