前期准备工作
Windows安装虚拟机,可以用自带的Hyper-V安装一个Ubuntu,然后Ubuntu安装Docker,且配置docker仓储加速设置(有梯子,无所谓)
sudo apt-get update && sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common && curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - && sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" && sudo apt-get update && sudo apt-get install -y docker-ce sudo systemctl daemon-reload sudo systemctl restart docker
拉取.net core 3.1镜像
docker pull mcr.microsoft.com/dotnet/core/aspnet:3.1
1、新建.NET Core 3.1 项目
创建一个新项目
启动Docker支持点击下载Docker for Windowshttps://mp.youkuaiyun.com/mp_download/manage/download/UpDetailed
下载Docker For Windows
因为是Windows开发,所以要调试什么的,都会下载一个Docker for Windows,漫长的等待之后,就会下载成功,但是,毕竟是Windows,需要做很多配置。
2、配置Windows Docker环境,调试.NET Core程序
1.配置本机WSL 2
可参考微软官方文档:安装 WSL | Microsoft Docs
打开PowerShell,依次运行如下命令:
1、dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
2、dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
下载下载 Linux 内核更新包适用于 x64 计算机的 WSL2 Linux 内核更新包 (windows.net)
3、wsl --set-default-version 2
只用执行到这里就可以,然哈Windows就可以跑Docker了
2.Visual Studio安装vsdbg
有梯子的同学,运行的时候,链接上梯子,F5运行的时候,visual studio会自动下载这个插件,大概1两分钟,没有梯子的同学,只能参考这里了(PS:我也很无奈)Visual Studio 2019使用docker开发(vsdbg的问题) (copyfuture.com)
3、编辑Dockerfile
将原Dockerfile修改为如下样式
FROM mcr.microsoft.com/dotnet/aspnet:3.1 AS base WORKDIR /app EXPOSE 80 EXPOSE 443 COPY . . ENTRYPOINT ["dotnet", "UbiWebAPI.dll"]
修改DockerFile的属性为始终复制
添加一些简单的代码,然后将项目打包到Linux种。
4、部署到Docker
通过Linux远程工具,将项目复制到指定路径下
1、构建镜像
在当前路径打开命令窗口,执行如下命令
docker build -t netapi .
参数说明:
- -t ---指定镜像名称
- 命令结尾处 . ---表示build上下文为当前目录,默认情况下docker会使用在上下文的根目录下找到Dockerfile文件
2、创建并启动
查看镜像
docker image ls
启动
docker run --name=net1 -d -p 5015:80 netapi参数说明:
- -d ,表示在后台以守护态形式运行容器
- -p 外部端口与内部容器端口映射(5515为外部访问接口,80 为Docker内部接口)。
- --name 指定容器的名称。当然可以不指定,默认会为我们创建
- 最后一个参数netapi就是我们刚创建的镜像名称(如果用了标签,应该改为netapi:标签名)
查看正在运行的镜像
docker ps可以看到5015已经部署完成,然哈浏览器运行,就可以看到效果:
本章案例点击下载https://download.youkuaiyun.com/download/qq_27337291/33363869