介绍centos7下.netcore环境搭建、创建并.netcore程序、设置开机自动启动.netcore程序(注册为服务运行)
一:.netcore环境搭建
1、执行命令
1 |
|
2、更新yum
1 |
|
3、安装.netcore
1 |
|
4、检测是否安装成功:
二:创建.netcore web程序并运行
1、定位到你想放置项目的位置,创建项目
1 |
|
2、直接发布项目到项目文件夹
1 2 |
|
3、测试运行.netcore程序
1 2 |
|
4、如需通过宿主机访问,需修改Program.cs代码,方式多种,这里采用添加host.json方式
首先更改CreateWebHostBuilder方法代码如下
public static IWebHostBuilder CreateWebHostBuilder(string[] args) { var configuration = new ConfigurationBuilder().SetBasePath(Environment.CurrentDirectory) .AddJsonFile("host.json") .Build(); return WebHost.CreateDefaultBuilder(args).UseConfiguration(configuration) .UseStartup<Startup>(); }
在项目根目录添加host.json文件
{ "urls": "http://*:5000" }
对于.net core3.0以下的版本,可采用以下命令:
webBuilder.UseStartup<Startup>().UseUrls("http://*:3011");
5、通过浏览器访问 http://虚拟机ip:5000,效果如下:
三:设置.netcore程序开机启动
1、创建服务文件
vim /etc/systemd/system/testApp.service
写入如下内容:
[Unit] Description=testApp for centos7 [Service] WorkingDirectory=/home/testApp/Release ExecStart=/usr/bin/dotnet /home/testApp/Release/testApp.dll Restart=always RestartSec=10 # Restart service after 10 seconds if dotnet service crashes SyslogIdentifier=dotnet-testApp User=root Environment=ASPNETCORE_ENVIRONMENT=Production Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false [Install] WantedBy=multi-user.target
2、设置开机自动启动testApp.service服务
systemctl enable testApp.service
3、开启服务,并查询状态
systemctl start testApp.service systemctl status testApp.service