1.引言

在具体实操前,首先介绍一下.NetCore及docker的相关概念。

1.1什么是.NetCore

.NetCore是适用于 windows、linux 和 macos 操作系统的免费、开源托管的计算机软件框架,是微软开发的第一个官方版本,具有跨平台 (Windows、Mac OSX、Linux) 能力的应用程序开发框架 (Application Framework)。使用.NetCore,我们可以:

  • 建置 Web 应用程序和服务、IoT 应用和移动后端。

  • 能够在 Windows、macOS 和 Linux 上进行开发和运行。部署到云或本地。

  • 在 .NET Core 或 .NET Framework 上运行。

  • 能够在 IIS、Nginx、Apache、Docker 上进行托管或在自己的进程中进行自托管我们的应用。

关键词:跨平台

1.2 什么是Docker

Docker 是一个开源的应用容器引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在本地编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。

2. 安装前的准备

启用Hyper-V。打开【控制面板】》【程序】》【启用或关闭Windows功能】,勾选Hyper-V节点下所有的选项,点击【确定】并重启计算机。

3. Docker安装

3.1 Docker下载

这里主要是下载docker for windows版本,下载链接:https://www.docker.com/products/docker-desktop

3.2 Docker安装

(1)运行下载好的【Docker Desktop Installer.exe】文件,只勾选【Add shortcut to desktop】选项,点击【确定】完成安装。

(2)检查是否安成功,启动docker并打开cmd命令窗口,输入docker -v,如安装成功则能看到很随意的版本号。

(3)配置镜像加速器,登录阿里云,在控制台找到【镜像中心】》【镜像加速器】,copy加载器地址。

 

(4)在状态栏右键docker打开settings窗口,切换到【Daemon】选项页,把(3)的地址复制到【Regisry mirrors】输入框中。

(5)共享磁盘。在settings里切换到【Shared Drives】选项页,勾选要共享的磁盘。

4.新建.NetCore Web应用程序

(1)启动VS创建一个Web应用程序,选择Core2.2版本

  注意:【启用Docker支持】选项不勾选,后面手动进行配置

(2)发布网站。解决方案右键选择【发布】,选择文件,选择默认就可以。

 

 

 

5.创建Docker Images

(1)导航到刚刚发布的目录,这里为~\DockerDemo\DockerDemo\bin\Release\netcoreapp2.2\publish,新建Dockerfile文件(没有后缀)。输入如下内容:

FROM mcr.microsoft.com/dotnet/core/aspnet:2.2-stretch-slim AS base   
WORKDIR /app
COPY . .  
EXPOSE 5000 
ENTRYPOINT ["dotnet", "DockerDemo.dll"] 

(2)打开cmd窗口,cd到publish路径下,输入docker build -t dockerdemo001 .(注意最为英文句号,表示在当前目录下搜索Dockerfile文件)

输入docker images,检查是否创建成功 

(3)运行。输入:docker run --name dockerdemo001 -p 5000:80 -d dockerdemo001

如出现如下http://[::]:80则代表成功,如没有继续输入:docker run dockerdemo001

 

(4)在浏览器输入http://localhost:5000,恭喜已成功运行

6.结束语

初次使用docker,由于对docker认识还不够,所以在整个事例验证过程中磕磕碰碰、遇到无数的坑......

Logo

更多推荐