开发日志:Kylin麒麟操作系统部署ASP.NET CORE

需求场景:

我需要部署的项目是在Windows上开发的,目标框架为.net core 6.0 因此我们需要先在kylin上部署项目运行所需要的环境。

借助百度词条,先看看Kylin是什么:

服务器资源:

查看系统版本 cat /etc/kylin-release cat /proc/version

需要用到的工具:

  1. SSH远程链接工具 https://mobaxterm.mobatek.net/download.html
  2. 7-zipWindows下打包tar.gz文件 https://7-zip.org/download.html

部署步骤和方法:

在Kylin操作系统中安装ASP.NET Core,您可以遵循以下步骤:

  1. 打开终端(SSH远程链接工具)
  2. 添加Microsoft包存储库:rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm
  3. 安装.NET Core SDK:yum install dotnet-sdk-6.0
  4. 安装ASP.NET Core 运行时:yum install aspnetcore-runtime-6.0
    上传编译好的DotNet项目文件(*.tar.gz)上传目录 /root/website/ 也就是当前目录
  1. 解压tar -zxvf *.tar.gz 项目文件到指定目录
  2. 运行项目 dotnet *.dll
  3. 访问项目,这时需要一直开着终端才能访问所以需要
  4. 安装Supervisor守护进程
  5. 完成

以上步骤会在Kylin操作系统上安装.NET Core SDK和ASP.NET Core 运行时以及项目部署到Kylin服务器上。请确保替换步骤4中的URL,使之指向最新的.NET Core版本。
Supervisor安装步骤:

  1. 输入命令:yum install python-setuptools
  2. 输入命令:easy_install supervisor
  3. 配置Supervisor:mkdir /etc/supervisor 执行 echo_supervisord_conf > /etc/supervisor/supervisord.conf 生成配置文件
    1. 修改/etc/supervisor/supervisord.conf文件内容在文件结尾[include]节点处把;

    2. files = relative/directory/*.ini 改为 files = conf.d/*.conf

    3. 在/etc/supervisor/下创建conf.d文件夹,ProjectName.conf(以项目名称命名)

  4. 重启命令:supervisorctl reload
  5. 运行supervisord,查看是否生效,执行以下命令:
  6. supervisord -c /etc/supervisor/supervisord.conf
  7. ps -ef | grep ProjectName

使用7-zip打包tar.gz文件:

  1. 右键-7.ZIP-添加压缩包压缩格式选择"tar"确定
  2. 选择打包好的"tar"右键-7.ZIP-添加压缩包压缩格式选择"gzip"确定就打包*.tar.gz格式的文件了

碰到的问题:

A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: SSL Provider, error: 31 - Encryption(ssl/tls) handshake failed)

https://github.com/dotnet/SqlClient/issues/2252

解决方法:

复制代码
vim /etc/pki/tls/openssl.cnf
#在oid_section=new_oids下增加
openssl_conf = default_conf
#在文件末尾增加
[default_conf]
ssl_conf = ssl_sect
[ssl_sect]
system_default = system_default_sect
[system_default_sect]
MinProtocol = TLSv1
CipherString = DEFAULT@SECLEVEL=1