Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版),我们用社区版就可以了。


谁适合阅读本教程?

本教程适合运维工程师及后端开发人员,通过本教程你可以一步一步了解 Docker 的使用。


阅读本教程前,您需要了解的知识

在阅读本教程前,你需要掌握 Linux 的常用命令。你可以通过本站的 Linux 教程 来学习相关命令。


Docker的应用场景

  • Web 应用的自动化打包和发布。

  • 自动化测试和持续集成、发布。

  • 在服务型环境中部署和调整数据库或其他的后台应用。

  • 从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境。

下载 https://www.docker.com/get-started     有个下载  Docker Desktop:https://download.docker.com/win/stable/Docker%20Desktop%20Installer.exe

它是 Developer productivity tools and a local Kubernetes environment.

安装好后个根据它的初级教程拉取个getting-started 的repository 来run下,类似 hello world。

VS2019 新建个 NET Core的Web API 项目 勾选上选择 “启用Docker支持”,是为了生存DockerFile文件---就是为了后面运行或者debug的时候链接到你安装的本地Docker去。

这个文件内容大概是:

#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.

FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443 FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS build
WORKDIR /src
COPY ["MMPicStore/MMPicStore.csproj", "MMPicStore/"]
RUN dotnet restore "MMPicStore/MMPicStore.csproj"
COPY . .
WORKDIR "/src/MMPicStore"
RUN dotnet build "MMPicStore.csproj" -c Release -o /app/build FROM build AS publish
RUN dotnet publish "MMPicStore.csproj" -c Release -o /app/publish FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "MMPicStore.dll"]

  

以上里面的内容解释就忽略了,网上百度到处是。

回到VS2019创建的Web Api项目,debug 工具栏多了个docker。点击运行,这样就链接上你安装的docker了。你这个时候在你安装的Docker Desktop 界面程序里看到运行起来你这个项目。-可以停止 程序启动等。

和GitLib一样它有个线上仓库网站 给开发者创建和分享直接的镜像文件-Repository Image.

注册地址:https://hub.docker.com/

注册好了账号 就可以创建自己的厂库。你可将刚才创建的这项目发布到上面去。

就是点击VS2019里的发布-Publish,选择Docker Hub,VS会提示输入Hub的账号密码。完成输入点击发布(有点慢)。OK 在https://hub.docker.com/ 上自己的仓库里看见了发布的这个项目了。

参考微软帮助资料:https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/docker/building-net-docker-images?view=aspnetcore-3.1

.NetCore Docker test的更多相关文章

  1. .NETCore Docker实现容器化与私有镜像仓库管理

    一.Docker介绍 Docker是用Go语言编写基于Linux操作系统的一些特性开发的,其提供了操作系统级别的抽象,是一种容器管理技术,它隔离了应用程序对基础架构(操作系统等)的依赖.相较于虚拟机而 ...

  2. windows下部署.netcore+docker系列四 (部署程序,重点就要来了)

    前面的都是为这章做准备,加油把骚年们 PS:C# 项目可以按照流程一步步来,java 偶然其他的可以找下其他的网上资源 1.在 VS2019中 添加docker 支持 (其实也就是追加一个Docker ...

  3. vsts + XX云服务器构建netcore+docker持续集成交付部署

    持续集成交付部署是什么意思,它给我们带来什么好处? 先贴一张图 持续集成(Continuous Integration) 持续集成强调开发人员提交了新代码之后,立刻进行构建.(单元)测试(这个要看情况 ...

  4. .netcore docker noe4j

    1.借用docker搭建noe4j环境 docker pull neo4j docker run -d --restart=always -p7474: -p7687: -v /root/docker ...

  5. windows下部署.netcore+docker系列二 (unbuntu 18.4 下 安装 docker)亲测!!!

    1.卸载sudo apt-get remove docker docker-engine docker.io containerd runc2.更新sudo apt-get update3.安装依赖包 ...

  6. .NetCore Docker一次记录

    1:项目添加docker支持 2:定位到项目主目录 按住shift,鼠标右键,打开powershell,输入命令 dotnet publish 此时会在目录 bin\Debug\netcoreapp2 ...

  7. windows下部署.netcore+docker系列三 (unbuntu 18.4 下安装ftp)

    // 先更新下系统sudo apt-get update//安装ftpsudo apt-get install vsftpd// 启动 服务sudo service vsftpd start//ftp ...

  8. windows下部署.netcore+docker系列一(安装linux (ubuntu18.4))

    1 下载 虚拟机和 linux 系统 版本是 ubuntu 链接:https://pan.baidu.com/s/1jTxdysoyOhSWD-Ea-7JIbg 提取码:iiad 2  首先要安装 虚 ...

  9. .NET遇上Docker - Docker集成Cron定时运行.NETCore(ConsoleApp)程序.md

    配置项目的Docker支持 对于VS中Docker的配置,依旧重复一些废话. 给项目添加Docker支持,VS2015可以直接使用Docker for VS插件,VS2017在安装时选择容器支持.VS ...

  10. Docker在Linux/Windows上运行NetCore文章系列

    Windows系列 因为Window很简单,VS提供界面化配置,所以只写了一篇文章 Docker在Windows上运行NetCore系列(一)使用命令控制台运行.NetCore控制台应用 Linux( ...

随机推荐

  1. WebUploader 文件上传,兼容ios和安卓

    var upImg = WebUploader.create({ auto: true, swf: 'webuploader-0.1.5/Uploader.swf', // 图片接收服务端. serv ...

  2. Linux Shell_函数

    目录 简要介绍 系统函数 basename direname 自定义函数 基本语法 简要介绍 shell编程和其它编程语言一样,有系统函数,也可以自定义函数.系统函数中,我们这里就介绍两个. 系统函数 ...

  3. Docker容器制作DockerFile

    Docker换国内源和简单操作 vim /etc/docker/daemon.json { "registry-mirrors": ["http://hub-mirror ...

  4. 2023NOIP A层联测31 T4 民主投票

    2023NOIP A层联测31 T4 民主投票 思维好题. 思路 首先可以设 \(s\) 每个人最多获得的票数,一开始所有点都把自己的票投给自己父亲. 如果一个点的票数超过 \(s\) 了,那么这个点 ...

  5. RedisTemplate RedisConfig 序列化方式 fastjson2

    目录 Fastjson2 序列化 Redis.config RedisUtil.java fastjson和fastjson2的区别 Spring Data Redis 为我们提供了下面的Serial ...

  6. npm : 无法加载文件 D:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚本

    升级node和npm之后,npm run dev 启动一个Vue项目,报错如下: npm : 无法加载文件 D:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚本. ...

  7. python query-string处理Query String Parameters参数

    $ [sudo] pip install query-string >>> import query_string >>> query_string.parse(' ...

  8. 静态分析工具及使用总结(二)CheckStyle

    这里主要介绍三种开源的工具,PMD.CheckStyle和FindBugs,着重是在Ant里的调用,据说商业软件JTest也是著名的代码分析工具,哈哈,要花钱的没有用过. Checkstyle (ht ...

  9. AtCoder Beginner Contest 378

    Contest Link 还得加练. A & B & C & D 不具备任何思维含量. Submission A Submission B Submission C Submi ...

  10. 常用js 函数

    过滤对象空值   removeEmptyValues(obj) {                         for (const key in obj) {                   ...