需求場景:
我需要部署的項目是在Windows上開發的,目標框架爲.net core 6.0 因此我們需要先在kylin上部署項目運行所需要的環境。
藉助百度詞條,先看看Kylin是什麼:
服務器資源:
查看系統版本 cat /etc/kylin-release cat /proc/version
需要用到的工具:
- SSH遠程鏈接工具 https://mobaxterm.mobatek.net/download.html
- 7-zipWindows下打包tar.gz文件 https://7-zip.org/download.html
部署步驟和方法:
在Kylin操作系統中安裝ASP.NET Core,您可以遵循以下步驟:
- 打開終端(SSH遠程鏈接工具)
- 添加Microsoft包存儲庫:rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm
- 安裝.NET Core SDK:yum install dotnet-sdk-6.0
- 安裝ASP.NET Core 運行時:yum install aspnetcore-runtime-6.0 上傳編譯好的DotNet項目文件(*.tar.gz)上傳目錄 /root/website/ 也就是當前目錄
- 解壓tar -zxvf *.tar.gz 項目文件到指定目錄
- 運行項目 dotnet *.dll
- 訪問項目,這時需要一直開着終端才能訪問所以需要
- 安裝Supervisor守護進程
- 完成
以上步驟會在Kylin操作系統上安裝.NET Core SDK和ASP.NET Core 運行時以及項目部署到Kylin服務器上。請確保替換步驟4中的URL,使之指向最新的.NET Core版本。
Supervisor安裝步驟:
- 輸入命令:yum install python-setuptools
- 輸入命令:easy_install supervisor
- 配置Supervisor:mkdir /etc/supervisor 執行 echo_supervisord_conf > /etc/supervisor/supervisord.conf 生成配置文件
-
修改/etc/supervisor/supervisord.conf文件內容在文件結尾[include]節點處把;
-
files = relative/directory/*.ini 改爲 files = conf.d/*.conf
- 在/etc/supervisor/下創建conf.d文件夾,ProjectName.conf(以項目名稱命名)
-
- 重啓命令:supervisorctl reload
- 運行supervisord,查看是否生效,執行以下命令:
- supervisord -c /etc/supervisor/supervisord.conf
-
ps -ef | grep ProjectName
使用7-zip打包tar.gz文件:
- 右鍵-7.ZIP-添加壓縮包壓縮格式選擇"tar"確定
- 選擇打包好的“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