• Asp.net容器化


    注意:本文只用于探讨asp.net容器化,不建议生产环境下使用(docker 镜像太大!!!!)

    安装docker

      准备一个台windwos server 2016 ,在PowerShell 里执行以下命令

    Install-Module DockerProvider -Force
    Install-Package Docker -ProviderName DockerProvider -Force

    构建简单的网站

    FROM microsoft/aspnet:4.7.1
    
    COPY ./www/ /inetpub/wwwroot 
    
    RUN  Add-WindowsFeature  Web-IP-Security; `
         powershell -NoProfile -Command Install-PackageProvider -Name NuGet -MinimumVersio  2.8.5.201 -Force;   
         Install-Module -Name IISAdministration -Force; 
         net user web 123456 /add ;
         net localgroup administrators web /add
    
    RUN powershell -NoProfile -Command 
        Import-module IISAdministration ; 
        Remove-IISSite -name 'Default Web Site' -Confirm:$false ; 
        New-IISSite -Name "www.example.com" -PhysicalPath "C:inetpubwwwroot" 

    1.通过NuGet安装 IISAdministration,这是一个IIS管理模块,可以通过本地的IIS管理容器中的IIS

    2.net user web __Fm9UrD_h /add 设置用户

    3.net localgroup administrators web /add 设置用户组

    构建HTTPS网站

    FROM microsoft/aspnet:4.7.1
    
    RUN mkdir /inetpub/tool
    
    COPY ./tool/ /inetpub/tool
    COPY ./www/ /inetpub/wwwroot
    
    RUN  Add-WindowsFeature  Web-IP-Security; `
         certutil -importpfx -p "111111" "C:/inetpub/tool/cert.pfx";
         powershell -NoProfile -Command Install-PackageProvider -Name NuGet -MinimumVersio  2.8.5.201 -Force;   
         Install-Module -Name IISAdministration -Force; 
         net user web 123456 /add ;
         net localgroup administrators web /add
    
    RUN powershell -NoProfile -Command 
        Import-module IISAdministration ; 
        Remove-IISSite -name 'Default Web Site' -Confirm:$false ; 
        New-IISSite -Name "www.example.com" -PhysicalPath "C:inetpubwwwroot" -BindingInformation "*:443:www.example.com" -CertificateThumbPrint "52C27E02D8EFB1BB488AEC13DB06E94EED18E539" -CertStoreLocation "Cert:LocalMachineMy" -Protocol https

    1.certutil -importpfx -p "密码" "C:/inetpub/tool/cert.pfx"; 添加证书

    2.-CertificateThumbPrint "证书指纹" ,可以通过IIS管理器->服务器证书->查看证书->详细信息->指纹

     构建带IIS插件网站

    FROM microsoft/aspnet:4.7.1
    
    RUN mkdir /inetpub/tool
    
    COPY ./tool/ /inetpub/tool
    COPY ./www/ /inetpub/wwwroot
    
    RUN  Add-WindowsFeature  Web-IP-Security; `
         Start-Process ' C:inetpub	ool
    ewrite_amd64.msi' '/qn' -PassThru | Wait-Process;
         powershell -NoProfile -Command Install-PackageProvider -Name NuGet -MinimumVersio  2.8.5.201 -Force;   
         Install-Module -Name IISAdministration -Force; 
         net user web 123456 /add ;
         net localgroup administrators web /add
    
    RUN powershell -NoProfile -Command 
        Import-module IISAdministration ; 
        Remove-IISSite -name 'Default Web Site' -Confirm:$false ; 
        New-IISSite -Name "www.example.com" -PhysicalPath "C:inetpubwwwroot"
  • 相关阅读:
    Visual Studio工具 vcpkg简介
    可跨平台C++开源图形图像框架:openFrameworks
    Visual Studio2017 设置了vcpkg之后,编译其他程序出问题
    PCL 3维点云的模板匹配
    Eigen库和STL容器冲突问题
    C 和 CPP 混合代码cmath编译出错
    VS2017在Release下编译错误C1001
    伪随机数
    和求余运算巧妙结合的jns指令
    [显示属性]-自定义桌面里没有IE选项
  • 原文地址:https://www.cnblogs.com/yangleiblog/p/8759793.html
Copyright © 2020-2023  润新知