容器镜像现在是.NET SDK支持的一种输出类型

嵌入式技术

1367人已加入

描述

出品 | OSC开源社区(ID:oschina2013)

微软宣布了对 .NET SDK 的内置容器支持。公告指出,容器已经成为在云中分发和运行广泛的应用程序和服务的最简单方法之一。几年前,.NET 运行时就已经针对容器进行了强化。现在,开发人员则可以通过使用 dotnet  publish 创建应用程序的容器化版本。“容器镜像现在是 .NET SDK 支持的一种输出类型”。

在目前的初始预览阶段,微软方面主要专注于 Linux-x64 镜像的部署方案;Windows 镜像和其他架构的支持尚在计划当中。 当然,预览阶段也尚有一些功能欠缺。微软表示,其还未实现对身份验证的支持;这一支持对许多用户来说至关重要,也是他们最高优先级的项目之一。在此期间,微软建议开发人员可以推送到他们本地的 Docker 守护进程,然后使用 docker tag 和 docker push 推送生成的镜像到计划的目的地。

name: Containerize ASP.NET Core application
on: [push]
jobs:  build:  
  runs-on: ubuntu-latest 
   steps:  
    - uses: actions/checkout@v3 
     - name: Setup .NET SDK     
   uses: actions/setup-dotnet@v2 
     # Package the app into a linux-x64 container based on the dotnet/aspnet image 
     - name: Publish     
   run: dotnet publish --os linux --arch x64 --configuration Release -p:PublishProfile=DefaultContainer 
     # Because we don't yet support pushing to authenticated registries, we have to use docker to     
 # login, tag and push the image. In the future none of these steps will be required!   
   # 1. Login to our registry so we can push the image. Could use a raw docker command as well.  
    - name: Docker Login     
   uses: actions-hub/docker/login@master
        env:      
    DOCKER_REGISTRY_URL: sdkcontainerdemo.azurecr.io     
     DOCKER_USERNAME: ${{ secrets.ACR_USERNAME }}     
     DOCKER_PASSWORD: ${{ secrets.ACR_PAT }}  

    # 2. Use the tag command to rename the local container to match our Azure Container Registry URL  
    - name: Tag built container with Azure Container Registry url     
  uses: actions-hub/docker/cli@master      
  with:       
   args: tag sdk-container-demo:1.0.0 sdkcontainerdemo.azurecr.io/baronfel/sdk-container-demo:latest  
    # 3. Push the renamed container to ACR.   
   - name: Push built container to Azure Container Registry   
     uses: actions-hub/docker/cli@master   
     with:        
  args: push sdkcontainerdemo.azurecr.io/baronfel/sdk-container-demo:latest
接下来,.NET 7 软件开发平台的候选版本将添加新的镜像元数据,支持将镜像推送到远程注册表,并支持 Windows 镜像。.NET 7 预计将于 11 月作为生产版本发布。 “我们还计划在整个发布过程中将这项工作直接集成到 SDK 中。到那时,我们将在 NuGet 上发布包的 final 版本,它将警告你这个变化,并要求你从项目中完全删除该软件包...... 我们希望那些构建 Linux 容器的人尝试使用 .NET SDK 构建它们。我个人在本地尝试了一下 —— 我很开心地访问了我的一些 demo 库并使用一个命令将它们容器化,我希望你们都有同样的感受。”
编辑:黄飞

 

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分