1.power shell 安裝 docker 需要的相關軟體 (需系統管理員方式執行)
function Install-Chocolatey { try { Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1')); } catch { $ErrorMessage = $_.Exception.Message; $FailedItem = $_.Exception.ItemName; Write-Host $ErrorMessage + $FailedItem; return $false; } return $true; } Write-Host "Install chocolatey" Install-Chocolatey; Write-Host "Install Docker Software" choco install docker-desktop -y choco install docker-compose -y choco install docker-kitematic -y
2.重新啟動電腦後,開啟Docker Desktop,並切換成 Window Container
1.取得 aspnet docker 映像檔
docker pull mcr.microsoft.com/dotnet/framework/aspnet:4.8
2.建立 asp net 容器 ,將容器內的網站 port 號80 映射為本機電腦的888 port
docker run -it -d --isolation=process -p 888:80 mcr.microsoft.com/dotnet/framework/aspnet:4.8 # -i, --interactive (互動模式) # -t, --tty (配置一個終端機) # -d, --detach (在背景執行) # -- isolation=process (隔離模式process 模式才有辦法用 docker cp)
3.透過 docker ps 列出目前運行的容易,並找到容器 id
4.切換到Release Asp.net 的程式目錄 ,並透過 docker cp 指令 copy Aspnet 網站到容器中的網站目錄。
C:\WebSite> docker cp . 5d3aadf8028b:c:/inetpub/wwwroot
5.此時 ASP.NET 程式己正式啟動
補充1:透過下面的指令,可以開啟容器終端機,驗證是不是所有檔案都複製到容器中。
docker exec -it 5d3aadf8028b cmd
補充2: 建立新的映像檔
docker commit 5d3aadf8028b newImage