【问题标题】:Drone CI/CD - container cannot find .NET SDKsDrone CI/CD - 容器找不到 .NET SDK
【发布时间】:2020-07-17 00:46:19
【问题描述】:

我正在使用 .NET Core 3.1。用无人机做C/D。

我的 .drone.yml 是

kind: pipeline
type: docker
name: deployment

steps:
- name: build
  image: registry.cn-hangzhou.aliyuncs.com/yoyosoft/dotnet/core/sdk
  commands:
    - dotnet restore src/YOGA.Api
    - dotnet restore src/YOGA.MIniProgram.API
    - dotnet publish  src/YOGA.Api --framework netcoreapp3.1 --configuration Release --output src/YOGA.Api/dist
    - dotnet publish  src/YOGA.MIniProgram.API --framework netcoreapp3.1 --configuration Release --output src/YOGA.MIniProgram.API/dist
    - echo "$(pwd)"
    - ls
    - cd src
    - ls
    - cd YOGA.Api
    - ls 
     
- name: YOGA.Api to AliyunHub
  image: plugins/docker
  settings:
    dockerfile: src/YOGA.Api/Dockerfile
    tags: latest
    insecure: true
    registry: "registry.cn-qingdao.aliyuncs.com"
    repo: "registry.cn-qingdao.aliyuncs.com/yoga_images/mrt_backend_api/mrt_backend_api"
    username:
      from_secret: username
    password:
      from_secret: userpassword
- name: YOGA.Mini to AliyunHub
  image: plugins/docker
  settings:
    dockerfile: src/YOGA.MIniProgram.API/Dockerfile
    tags: latest
    insecure: true
    registry: "registry.cn-qingdao.aliyuncs.com"
    repo: "registry.cn-qingdao.aliyuncs.com/yoga_images/mini_mrt_backend_api"
    username:
      from_secret: username
    password:
      from_secret: userpassword     
- name: deploy
  image: appleboy/drone-ssh
  pull: true
  settings:
    host: ...
    port: ...
    username: ...
    password: ...
    script:
      - echo start deploy- echo pulling images from  AliyunHub 
      - docker login --username=...registry.cn-qingdao.aliyuncs.com --password=...
      - docker pull docker pull registry.cn-qingdao.aliyuncs.com/yoga_images/mini_mrt_backend_api:latest
      - docker tag registry.cn-qingdao.aliyuncs.com/yoga_images/mini_mrt_backend_api:latest mini-mrt-api:latest
      - docker run --name mrt-mini-api -d -p xxx:80 mini-mrt-api
      - docker pull registry.cn-qingdao.aliyuncs.com/yoga_images/mrt_backend_api:latest
      - docker tag registry.cn-qingdao.aliyuncs.com/yoga_images/mrt_backend_api:latest mrt-api:latest
      - docker run --name mrt-api -d -p xxx:5000 mrt-api

无人机工作正常。 这是我的 dockerfile,看起来很相似...

FROM mcr.microsoft.com/dotnet/core/aspnet:3.1

RUN echo "PWD is: $PWD"

COPY src/YOGA.Api/dist /app
WORKDIR /app
EXPOSE 5000
ENTRYPOINT ["dotnet","YOGA.Api.dll"]

这是 ls 命令的输出 enter image description here

一切看起来都很好。

无人机完成后,容器没有启动,

这是来自 docker 日志的错误...

docker logs 57c728d627cd
  It was not possible to find any installed .NET Core SDKs
  Did you mean to run .NET Core SDK commands? Install a .NET Core SDK from:
      https://aka.ms/dotnet-download

有人知道解决办法吗?

非常感谢

【问题讨论】:

    标签: c# .net docker drone.io


    【解决方案1】:

    有效

    我推送到我的存储库失败了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-03
      • 1970-01-01
      • 1970-01-01
      • 2021-09-04
      • 2020-06-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多