1. 安装 .NET 6 SDK

首先,你需要在 Ubuntu 系统上安装 .NET 6 SDK。你可以通过 Microsoft 的官方包管理器来安装,它支持多种 Linux 发行版,包括 Ubuntu。

更新你的包列表(可选但推荐)

sudo apt update

安装.NET SDK。你可以从 Microsoft 的官方文档获取最新安装命令,但以下是一个基本示例(请访问 .NET 官网 获取最新安装脚本):

wget https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb -O packages-microsoft-prod.deb  
sudo dpkg -i packages-microsoft-prod.deb  
sudo apt-get update; \  
sudo apt-get install -y apt-transport-https && \  
sudo apt-get update && \  
sudo apt-get install -y dotnet-sdk-6.0

  如:$(lsb_release -rs)=20.04

 

检测版本:

dotnet --info
或者
dotnet --version

启动

# Windows  
set ASPNETCORE_URLS=http://0.0.0.0:8080  
 
# Linux/macOS  
export ASPNETCORE_URLS=http://0.0.0.0:8080  

运行
dotnet MyApp.dll

 

2.常见问题

2.1 访问SQL server数据库问题

Microsoft.Data.SqlClient.SqlException (0x80131904): 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)

原因:

Ubuntu 20.04默认是最低的TLS是1.2版本,所以降级处理:

解决方法:

1. 修改openssl.conf

sudo vim /etc/ssl/openssl.cnf

2. 在 oid_section = new_oids 下增加:

openssl_conf = default_conf  

3. 文件末尾追加:

[default_conf]
ssl_conf = ssl_sect
[ssl_sect]
system_default = system_default_sect
[system_default_sect]
MinProtocol = TLSv1
CipherString = DEFAULT@SECLEVEL=1

4. 保存文件并使之生效:

source /etc/profile