准备过程
- netcore linux发布包(本人是通过vs2017发布)
- ubuntu 16.0.4虚机
进行托管
ubuntu netcore发布文件路径
systemd 是一个 init 系统,可以提供用于启动、停止和管理进程的许多强大的功能。
开始创建服务文件 Kestrel-mysqlfilter.service
sudo nano /etc/systemd/system/kestrel-mysqlfilter.service
添加服务文件内容:
[Unit] Description= .NET Console App running on Ubuntu [Service] WorkingDirectory=/usr/local/application/mysqlfilter/publish ExecStart=/usr/bin/dotnet Edensoft.Label.Storage.Filter.dll Restart=always # Restart service after 10 seconds if the dotnet service crashes: RestartSec=10 KillSignal=SIGINT SyslogIdentifier=dotnet-mysqlfilter User=root Environment=ASPNETCORE_ENVIRONMENT=Production Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false [Install] WantedBy=multi-user.target
如果不想配置使用用户 为root,则必须先创建此处定义的用户,并为该用户提供适当的文件所有权。
最后ctrl+o 保存 、ctrl+x退出
将服务文件注册到系统中
sudo systemctl enable kestrel-mysqlfilter.service
启用该服务,并确认它正在运行
sudo systemctl start kestrel-mysqlfilter.service sudo systemctl status kestrel-mysqlfilter.service
查看日志
若要查看特定于 kestrel-mysqlfilter.service 的项,请使用以下命令:
sudo journalctl -fu kestrel-mysqlfilter.service
有关进一步筛选,使用时间选项(如 --since today、--until 1 hour ago)或这些选项的组合可以减少返回的条目数。
sudo journalctl -fu kestrel-mysqlfilter.service --since "2019-08-18" --until "2019-08-18 17:00"
结束语
参考地址:https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/linux-nginx?view=aspnetcore-2.2
相关地址:https://dotnet.microsoft.com/learn/aspnet