centos下.net core sdk安装、开发、部署
一、CentOS7下载并安装.NET core SDK(软件开发工具包)
参考微软官方地址:https://dotnet.microsoft.com/learn/web/aspnet-hello-world-tutorial/install,选择CentOS
1.在安装.NET之前,您需要注册Microsoft密钥,注册产品存储库并安装所需的依赖项。这只需要每台机器完成一次。
sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm
2.安装.NET SDK 更新可用于安装的产品,然后安装.NET SDK。
sudo yum update
sudo yum install dotnet-sdk-3.1
3.检查所有安装正确 安装完成后,打开一个新终端并运行以下命令
dotnet
4.如果命令运行,打印出有关如何使用dotnet的信息,那么你很高兴。如果没有,查看官方或百度。
5.如果要是只是运行项目应该只装运行环境就可以,没有验证下次有时间再试,sudo yum install aspnetcore-runtime-3.1
https://dotnet.microsoft.com/download/linux-package-manager/centos/runtime-current
二、CENTOS7安装VISUAL STUDIO CODE
首先要你的centos安装的是有GUI界面的
1、下载安装包https://code.visualstudio.com/Download/
2、cd到下载安装帮的文件夹执行命令:yum install code
三、命令创建CORE项目命令
1.进入d盘
d:
2.进入文件夹
cd WT
3.查看文件
dir
4.创建文件
cd MvcCore
5.查看Core安装版本
dotnet --info
6.dotnet帮助命令
dotnet help
7.创建项目
dotnet new
8.创建Core项目
dotnet new web
9.使用VSCode打开当前项目(在当前项目的文件夹内使用Core . 命令)
core .
10.运行当前项目(在当前项目的文件夹内使用dotnet run命令)
dotnet run
11.项目Nuget包下载还原
dotnet restore
12.创建控制台应用(需要下载.NetCore SDK)
dotnet new console
13.项目全部重新生成(将源码编译生成可执行性较高的二进制格式程序)
dotnet build
四、Core程序部署命令
为了能让外网访问虚拟机站点需要关闭防火墙: 命令: systemctl stop firewalld
通过命令启动core程序:dotnet WebApplication22Test.dll --urls="http://*:20192" --ip="192.168.1.106" --port=20192
访问地址: http://192.168.1.106:20192
由于dotnet是我们手动执行的,如果想系统启动时自动启动,就需要写个守护进程。按照官网文档,可以安装Supervisor解决这个需求。
执行以下命令安装
sudo apt-get install supervisor
执行以下命令配置supervisor
sudo vim /etc/supervisor/conf.d/[Your Application Name].conf
在配置文件填写以下内容
[program:[Your Application Name]] command=/usr/bin/dotnet [Your Publish File Path] directory=[Your Publish File Path] autostart=true autorestart=true stderr_logfile=/var/log/[Your Application Name].err.log stdout_logfile=/var/log/[Your Application Name].out.log environment=ASPNETCORE_ENVIRONMENT=Production,HOME=/var/www/ user=www-data stopsignal=INT
这里有个坑要注意了,一定要在enviroment里设置HOME变量,否则启动时会报Value cannot be null. Parameter name: Path1这样的错误
配置好以后,重新启动supervisor服务
sudo service supervisor stop sudo service supervisor start
可以通过以下命令查看supervisor下挂载的进程状态,如果有异常,及时查看上面配置的日志文件
sudo supervisorctl status

浙公网安备 33010602011771号