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