windows10+docker+.netcore+nginx 简单部署

 

1、下载并安装docker for windows

2、新建.netcore webapi程序

    • 不配置https、启用docker支持

    • 发布到IIS,验证程序是否正常

3、配置dockerfile文件

    FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
    WORKDIR /app
    EXPOSE 8001
    EXPOSE 443
    COPY . .
    ENV ASPNETCORE_URLS http://+:8001
    ENTRYPOINT ["dotnet", "MicroApp.dll"]

配置完成后右键此DockerFile文件,选择属性,选择“如果较新则复制”。

4、生成docker images

    • 管理员权限运行CMD,进入程序的生成目录下..\MicroApp\MicroApp\bin\Release\netcoreapp3.1\public

    • 运行docker build -t microapp:1.0 .等待命令完成

    • docker images 命令查看镜像文件

5、创建并启动容器

    • 启动容器1 docker run -d -p 7001:8001 --name microapp7001 microapp:1.0

    • 启动容器2 docker run -d -p 7002:8001 --name microapp7002 microapp:1.0

    • 查看容器 docker ps

6、下载并配置nginx

    • 下载nginx http://nginx.org/en/download.html

    • 查看docker ip

    • 配置nginx,并重新加载配置nginx -s relaod

        upstream testdocker{
      •   server 10.0.75.1:7001 weight=1;
      •   server 10.0.75.1:7002 weight=1;
      }

      server {
      •   listen   8001;
      •   server_name localhost;

      •   #charset koi8-r;
      •   #access_log logs/host.access.log main;

      •   location / {
      •     #root html;
      •     #index index.html index.htm;
      •     proxy_pass http://testdocker;

      •     # 显示具体负载的机器的ip,X-Route-Ip随便命名
      •     add_header X-Route-Ip $upstream_addr;
      •     add_header X-Route-Status $upstream_status;
      •   }

      •   #error_page 404       /404.html;
      •   # redirect server error pages to the static page /50x.html
      •   #
      •   error_page 500 502 503 504 /50x.html;
      •   location = /50x.html {
      •     root html;
      •   }
      }

7、测试nginx负载均衡

    • 浏览器中输入http://localhost:8001/WeatherForecast,打开开发人员工具,查看访问的ip和端口号

         

    • 两次访问,返回不同的端口号,说明负载配置成功。
posted @ 2020-09-09 01:00  iGotogo  阅读(735)  评论(0)    收藏  举报