【问题标题】:How to deploy dotnet app from self-hosted runner using Github Actions?如何使用 Github Actions 从自托管运行器部署 dotnet 应用程序?
【发布时间】:2022-01-04 02:52:11
【问题描述】:

我一直在使用 Github Actions,并且正在尝试找出一种将 Dotnet Core API 部署到我的 Linux 服务器的方法。我已经配置了自托管运行器并且能够成功构建我的应用程序。

当我运行应用程序时出现问题,它似乎没有选择我的appsetting.json 配置。它似乎正在运行该应用程序,但它将在默认端口 5000、5001(https) 上运行,而不是我配置的端口。它也无法从 appsettings 中找到我的数据库连接字符串。从 Github Actions 触发它在我的服务器上运行的正确方法是什么?

使用dotnet myapp.dll 在服务器上手动运行应用程序可以正常工作,没有问题。我的操作工作流 yml 如下。

name: dotnet package

on:
  push:
    branches:
      - master
  pull_request:
    branches:
      - master

jobs:
  build:

  runs-on: self-hosted

  steps:
    - uses: actions/checkout@v2
    - name: Setup .NET Core SDK 6.0.x
      uses: actions/setup-dotnet@v1.7.2
      with:
        dotnet-version: '6.0.x'
    - name: Install dependencies
      un: dotnet restore
    - name: Build
      run: dotnet build --configuration Release --no-restore
    - name: Deploy
      run: dotnet ./myapp/bin/Release/net6.0/myapp.dll

【问题讨论】:

    标签: .net-core deployment server github-actions


    【解决方案1】:

    你发布时没有包含appsetting.json吗?

    【讨论】:

    • 该文件存在于文件夹中,如果这是您的意思?有没有我需要包含它的特定方式?
    【解决方案2】:

    我最终将应用程序作为服务部署在 linux 服务器上,并将文件发布到服务器,服务器现在将使用新文件自动更新应用程序。几乎逐字逐句地按照这篇文章来获得我所追求的结果。 https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/linux-nginx?view=aspnetcore-6.0

    【讨论】:

      猜你喜欢
      • 2020-11-30
      • 2021-11-02
      • 2020-07-25
      • 1970-01-01
      • 2021-10-17
      • 2020-09-14
      • 2020-04-17
      • 2021-12-07
      • 2020-11-28
      相关资源
      最近更新 更多