เบชเบฐเบเบฒเบเบเบตเบเบธเบเปเบเบปเบ! เบเปเบญเบเบเบทเป Andrey, เปเบฅเบฐเบเปเบญเบเปเบฎเบฑเบเบงเบฝเบเปเบเบฑเบเบงเบดเบชเบฐเบงเบฐเบเบญเบ DevOps เบขเบนเป Exness เปเบเบเบตเบกเบเบฑเบเบเบฐเบเบฒ. เบเบธเบเบชเบธเบกเบซเบผเบฑเบเบเบญเบเบเปเบญเบเปเบกเปเบเบเบฒเบเบชเปเบฒเบ, เบเบฒเบเบเบณเปเบเป, เปเบฅเบฐเบเบฒเบเบฎเบฑเบเบชเบฒเปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเบ Docker เบเบตเปเปเบฎเบฑเบเบงเบฝเบเบขเบนเปเปเบเบฅเบฐเบเบปเบเบเบฐเบเบดเบเบฑเบเบเบฒเบ. Linux (เบเปเปเปเบเบเบตเปเปเบญเบตเปเบเบงเปเบฒ OS). เบเปเปเบเบปเบเบกเบฒเบเบตเป, เบเปเบญเบเบกเบตเปเปเบฒเบงเบฝเบเบเบตเปเบกเบตเบเบดเบเบเบฐเบเบณเบเบฝเบงเบเบฑเบ, เปเบเป OS เปเบเบปเปเบฒเปเบฒเบเบเบญเบเปเบเบเบเบฒเบเปเบเปเบเบฒเบเปเบเบฑเบ Windows Server เปเบฅเบฐเบเบธเบเปเบเบเบเบฒเบ C++. เบชเบณเบฅเบฑเบเบเปเบญเบ, เบเบตเปเปเบกเปเบเบเบฒเบเบเบปเบงเบเบฑเบเบขเปเบฒเบเปเบเปเบเบดเบเบเบฑเปเบเบเบณเบญเบดเบเบเบฑเบเบเบนเปเบเบญเบเปเบเบเปเบเบต Docker เบเบฒเบเปเบเปเบฅเบฐเบเบปเบเบเบฐเบเบดเบเบฑเบเบเบฒเบ Windows เปเบฅเบฐ เปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเบ C++ เปเบเบเบเบปเปเบงเปเบ. เบชเบดเปเบเบเบตเปเปเบฎเบฑเบเปเบซเปเบเปเบญเบเบกเบตเบเบฐเบชเบปเบเบเบฒเบเบเบตเปเปเปเบฒเบชเบปเบเปเบ เปเบฅเบฐ เบชเบญเบเบเปเบญเบเบเปเบฝเบงเบเบฑเบเบเบงเบฒเบกเบชเบฑเบเบชเบปเบเบเบฒเบเบขเปเบฒเบเบเบญเบเปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเบเบเบฒเบเบเบฑเบเบงเบฒเบเบเบนเปเบเบญเบเปเบเบเปเบเบตเปเบเบฅเบฐเบเบปเบเบเบฐเบเบดเบเบฑเบเบเบฒเบ. Windows.

เปเบโเบเบปเบโเบเบงเบฒเบกโเบเบตเปโเบเปเบฒโเบเบฐโเปเบเบปเปเบฒโเบเปเบญเบโเบเบฒเบโเบเบตเปโเบเบฐโเบเบญเบโเบเปเบฒเบโเบงเปเบฒโเบเบงเบฒเบกโเบซเบเบธเปเบโเบเบฒเบโเบเบตเปโเบเปเบฒโเบเบฐโเปเบเบปเปเบฒโเปเบเปโเบเบฐโเปเบเบตเบโเบเบฑเบโเบงเบดโเบเบตโเบเบฒเบโเบเบตเปโเบเปเบฒโเบเบฐโเปเบเบปเปเบฒโเปเบเปโเบเบฑเบโเบเบฒเบโเปเบเปโเปเบโเบกเบฑเบโ. เบเปเบฒโเบเบฐโเปเบเบปเปเบฒโเบซเบงเบฑเบโเบงเปเบฒโเบเบตเปโเบเบฐโเปเบเบฑเบโเบเบฐโเปเบซเบเบโเบชเปเบฒโเบฅเบฑเบโเบเบฒเบโเบเปเบฒโเบเบฒเบโเปเบโเบเบฑเบโเบเบธโเบเบฑเบโเปเบฅเบฐโเบญเบฐโเบเบฒโเบเบปเบโเบเบญเบโเบเปเบฒเบ. เบกเปเบงเบเบเบฑเบเบเบฒเบเบญเปเบฒเบ!
เปเบเบฑเบเบซเบเบฑเบเบเบฑเบเบเบธ?
เบเปเบฅเบดเบชเบฑเบเบกเบตเปเบเบเบชเปเบฒเบเบเบทเปเบเบเบฒเบเบเบตเปเบกเบตเบขเบนเปเปเบฅเปเบงเบเบญเบเบเบปเบงเบเบฑเบเบเบฒเบเบเบนเปเบเบญเบเปเบเบเปเบเบต Hashicorp Nomad เปเบฅเบฐเบญเบปเบเบเบฐเบเบญเบเบเบตเปเบเปเบฝเบงเบเปเบญเบเบเบท Consul เปเบฅเบฐ Vault. เบเบฑเปเบเบเบฑเปเบ, เบเบฒเบเบเบฑเบเบเบนเปเบเบญเบเปเบเบเปเบเบตเปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเบเบเบถเปเบเบเบทเบเปเบฅเบทเบญเบเปเบเบฑเบเบงเบดเบเบตเบเบฒเบเบฅเบงเบกเบชเบนเบเบชเบณเบฅเบฑเบเบเบฒเบเบชเบปเปเบเบกเบญเบเบงเบดเบเบตเปเบเปเปเบเบเบตเปเบชเบณเปเบฅเบฑเบเปเบฅเปเบง. เปเบเบทเปเบญเบเบเบฒเบเปเบเบเบชเปเบฒเบเบเบทเปเบเบเบฒเบเบเบญเบเปเบเบเบเบฒเบเบเบฐเบเบญเบเบกเบตเปเบฎเบ Docker เบเบตเปเบกเบตเบฅเบธเปเบเบฅเบฐเบเบปเบเบเบฐเบเบดเบเบฑเบเบเบฒเบ. Windows Server เบเปเบฒเบเปเบฒเบเบเบณเบฅเบฑเบเปเบเป Core 1803 เปเบฅเบฐ 1809, เบเปเบฒเบเบเปเบญเบเบชเปเบฒเบเปเบงเบตเบเบฑเบเบฎเบนเบเบเบฒเบ Docker เปเบเบเบเปเบฒเบเบซเบฒเบเบชเบณเบฅเบฑเบ 1803 เปเบฅเบฐ 1809. เปเบเปเบงเบตเบเบฑเบ 1803, เบกเบฑเบเปเบเบฑเบเบชเบดเปเบเบชเบณเบเบฑเบเบเบตเปเบเปเบญเบเบเบทเปเปเบงเปเบงเปเบฒเปเบฒเบเปเบฅเบเบเบฒเบเปเบเปเปเบเบเบญเบเปเบฎเบชเบเบฒเบเบชเปเบฒเบ Docker เบเปเบญเบเบเบปเบเบเบฑเบเปเบฒเบเปเบฅเบเบเบฒเบเปเบเปเปเบเบเบญเบเบฎเบนเบเบเบฒเบ Docker เบเบทเปเบเบเบฒเบ เปเบฅเบฐ เปเบฎเบชเบเปเบญเบเบเบตเปเบเบนเปเบเบญเบเปเบเบเปเบเบตเบเบฒเบเบฎเบนเบเบเบฒเบเบเบตเปเบเบฐเบเบทเบเปเบเบตเบเปเบเป. เปเบงเบตเบเบฑเบ 1809 เบเบณเบเบฑเบเบเบฑเบเบซเบฒเบเบตเป. เบเปเบฒเบเบชเบฒเบกเบฒเบเบญเปเบฒเบเปเบเบตเปเบกเปเบเบตเบกเบเปเบฝเบงเบเบฑเบเบกเบฑเบเปเบเปเบเบตเปเบเบตเป. .
เปเบเบฑเบเบซเบเบฑเบเบซเบผเบฒเบเบเบฑเปเบเบเบญเบ?
เบงเบดเบชเบฐเบงเบฐเบเบญเบเบเบตเบกเบเบฑเบเบเบฐเบเบฒเบเปเปเบกเบต เบซเบผเบทเบเบณเบเบฑเบเบซเบผเบฒเบเปเบเบเบฒเบเบเปเปเบชเปเบฒเบเปเบฎเบช; เบเปเปเบกเบตเบงเบดเบเบตเบเบตเปเบเบฐเบเบฑเบเบเบฒเบเบเบธเบเบญเบปเบเบเบฐเบเบญเบเบเบญเบเบเบฒเบเบชเปเบฒเบเปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเปเบเปเบเปเบฎเบชเปเบซเบผเบปเปเบฒเบเบตเปเปเบเปเปเบง, เบเบปเบงเบขเปเบฒเบ, เบเบดเบเบเบฑเปเบเบเบธเบเปเบเบทเปเบญเบเบกเบทเปเบเบตเปเบกเปเบเบตเบก เบซเบผเบทเบงเบฝเบเบชเบณเบฅเบฑเบ Visual Studio. เบเบฑเปเบเบเบฑเปเบ, เบเบงเบเปเบฎเบปเบฒเปเบเปเบเบฑเบเบชเบดเบเปเบเบเบดเบเบเบฑเปเบเบญเบปเบเบเบฐเบเบญเบเบเบฑเบเบซเบกเบปเบเบเบตเปเบเปเบฒเปเบเบฑเบเปเบเบทเปเบญเบชเปเบฒเบเปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเบเปเบเบปเปเบฒเปเบเบเบฒเบเบชเปเบฒเบเบฎเบนเบเบเบฒเบ Docker. เบเปเบฒเบเปเบฒเปเบเบฑเบ, เบเปเบฒเบเบชเบฒเบกเบฒเบเบเปเบฝเบเบเบฝเบเปเบเป dockerfile เบขเปเบฒเบเปเบงเบงเบฒเปเบฅเบฐเปเบเบตเบเบเบปเบงเบเปเปเบชเปเบฒเบฅเบฑเบเบเบฒเบเบชเปเบฒเบเบฎเบนเบเบเบฒเบเบเบตเป.
เบเบฒเบเบเบดเบเบชเบฐเบเบตเปเบเบชเบนเปเบเบฒเบเบเบฐเบเบดเบเบฑเบ
เปเบเบเบฒเบเบชเปเบฒเบเบฎเบนเบเบเบฒเบ Docker เบซเบผเบฒเบเบเบฑเปเบเบเบญเบเบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบก, เบชเบฐเบเบฒเบเปเบงเบเบฅเปเบญเบกเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเปเปเบชเปเบฒเบเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบเปเบกเปเบเปเบเปเบเบทเบเบเบฐเบเบฝเบกเปเบ Dockerfile script เบเบฝเบงเบเบฑเบเบเบฑเบเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบเบเบตเปเบชเปเบฒเบเบเบถเปเบเปเบญเบ. เปเบเปเปเบเบเปเบฅเบฐเบเบตเบเบญเบเบเบงเบเปเบฎเบปเบฒ, เบเบฒเบเปเบเบทเปเบญเบกเปเบเบเบฅเบฐเบเบฑเบเบเบฒเบเบเบฒเบเปเบเปเบเบทเบเปเบเบตเปเบก, เบเบท, เบเบฑเปเบเบเบญเบเปเบเบทเปเบญเบเบเบปเปเบเบเบญเบเบเบฒเบเบชเปเบฒเบเบฎเบนเบเบเบฒเบ docker เบเบฑเบเบเบธเบเบชเบดเปเบเบเบธเบเบขเปเบฒเบเบเบตเปเบเปเบฒเปเบเบฑเบเปเบเบทเปเบญเบชเปเบฒเบเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบ. เบเบตเปเปเบกเปเบเปเบฎเบฑเบเปเบเปเปเบเบฒเบฐเบงเปเบฒเบเปเบญเบเบเปเบญเบเบเบฒเบเปเบเปเบเบธเบเบชเบปเบกเบเบฑเบ docker cache เปเบเบทเปเบญเบซเบผเบธเบเบเปเบญเบเปเบงเบฅเบฒเบเบฒเบเบเบดเบเบเบฑเปเบเบเบญเบเบเบธเบ dependencies.
เบเปเปเบซเปเปเบเบดเปเบเบเบธเบเบเบปเปเบเบเปเบเบญเบ dockerfile script เบชเปเบฒเบฅเบฑเบเบเบฒเบเบชเปเบฒเบเบฎเบนเบเบเบฒเบเบเบตเป.
เปเบเบทเปเบญเบชเปเบฒเบเบฎเบนเบเบเบฒเบเบเบญเบเบฎเบธเปเบ OS เบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบ, เบเปเบฒเบเบชเบฒเบกเบฒเบเบเปเบฒเบเบปเบเบเบฒเบเปเบเปเบเบฝเบเปเบ dockerfile เปเบเบเบเปเบฒเบเบเปเบฒเบเบงเบเบฎเบธเปเบเบเบตเปเบเบทเบเบชเบปเปเบเบเปเบฒเบเปเบเบฅเบฐเบซเบงเปเบฒเบเบเบฒเบเบชเปเบฒเบ, เปเบฅเบฐเบกเบฑเบเปเบเบฑเบเปเบเบฑเบเบเบญเบเบฎเบนเบเบเบฒเบเบเบทเปเบเบเบฒเบ.
เบฅเบฒเบเบเบทเปเบเบปเบเบเปเบงเบเบเบญเบเปเบเบฑเบเบฎเบนเบเบเบฒเบ Microsoft Windows Server เบชเบฒเบกเบฒเบเบเบญเบเบซเบฒ .
ARG WINDOWS_OS_VERSION=1809
FROM mcr.microsoft.com/windows/servercore:$WINDOWS_OS_VERSIONเปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบเบเปเบฒเบชเบฑเปเบเปเบเบเปเบฒเปเบเบฐเบเปเบฒ RUN เบเบฒเบเปเบ dockerfile เปเบเบฅเบฐเบเบปเบเบเบฐเบเบดเบเบฑเบเบเบฒเบ Windows เบเบทเบเบเบฐเบเบดเบเบฑเบเบขเบนเปเปเบเบเบญเบเปเบเบ cmd.exe. เปเบเบทเปเบญเบเบงเบฒเบกเบชเบฐเบเบงเบเปเบเบเบฒเบเบเบฝเบเบชเบฐเบเบฃเบดเบ เปเบฅเบฐ เบเบฒเบเบเบฐเบซเบเบฒเบเปเปเบฒเบเบตเปเบเบญเบเบเบณเบชเบฑเปเบเบเบตเปเปเบเป, เบเบงเบเปเบฎเบปเบฒเบเบฐเบเบณเบเบปเบเบเบญเบเปเบเบเบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบณเบชเบฑเปเบเบเบทเบเปเปเปเปเบเบฑเบ Powershell เปเบเบเปเบเปเบเบณเปเบเบฐเบเบณเบเปเปเปเบเบเบตเป: SHELL.
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop';"]เบเบฑเปเบโเบเบญเบโเบเปเปโเปเบโเปเบกเปเบโเบเบฒเบโเบเบดเบโเบเบฑเปเบโเบเบปเบงโเบเบฑเบโเบเบฒเบโเบเบธเบ chocolatey เปเบฅเบฐโเบเบฒเบโเบซเบธเปเบกโเบซเปเปโเบเบตเปโเบเปเบฒโเปเบเบฑเบโ:
COPY chocolatey.pkg.config .
RUN Set-ExecutionPolicy Bypass -Scope Process -Force ;
[System.Net.ServicePointManager]::SecurityProtocol =
[System.Net.ServicePointManager]::SecurityProtocol -bor 3072 ;
$env:chocolateyUseWindowsCompression = 'true' ;
iex ((New-Object System.Net.WebClient).DownloadString(
'https://chocolatey.org/install.ps1')) ;
choco install chocolatey.pkg.config -y --ignore-detected-reboot ;
if ( @(0, 1605, 1614, 1641, 3010) -contains $LASTEXITCODE ) {
refreshenv; } else { exit $LASTEXITCODE; } ;
Remove-Item 'chocolatey.pkg.config'เบเบฒเบเบเบดเบเบเบฑเปเบเปเบเบฑเบเปเบเบฑเบเปเบเบเปเบเปเบเบฑเบญเบเปเบเปเบฅเบฑเบ, เบเปเบฒเบเบเบฝเบเปเบเปเบชเบฒเบกเบฒเบเบชเบปเปเบเบเบงเบเบกเบฑเบเปเบเบฑเบเบเบฑเบเบเบตเบฅเบฒเบเบเบทเป, เบซเบผเบทเบเบดเบเบเบฑเปเบเบกเบฑเบเปเบเบทเปเบญเบฅเบฐเบญเบฑเบเบเปเบฒเบเปเบฒเบเบเปเบญเบเบเบฒเบเบเปเบฒเบเบเบปเบงเบเปเบฒเบเบปเบเบเบฒเบเปเบเบฑเบเปเบญเบเบฐเบฅเบฑเบเบชเปเบฒเบฅเบฑเบเปเบเปเบฅเบฐเบเบธเบ. เปเบเบชเบฐเบเบฒเบเบฐเบเบฒเบเบเบญเบเบเบงเบเปเบฎเบปเบฒ, เบเบงเบเปเบฎเบปเบฒเปเบเปเปเบเปเปเบเบฅเป manifest เปเบเบฎเบนเบเปเบเบ XML, เปเบเบดเปเบเบเบฐเบเบญเบเบเปเบงเบเบเบฑเบเบเบตเบฅเบฒเบเบเบทเปเบเบญเบเบเบธเบเบเบตเปเบเปเบญเบเบเบฒเบเปเบฅเบฐเบเบปเบงเบเปเบฒเบเบปเบเบเบฒเบเบเบญเบเบกเบฑเบ. เปเบเบทเปเบญเปเบเบเบญเบเบกเบฑเบเปเบเบดเปเบเบเบทเบเบฑเปเบเบเบตเป:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="python" version="3.8.2"/>
<package id="nuget.commandline" version="5.5.1"/>
<package id="git" version="2.26.2"/>
</packages>เบเปเปเปเบ, เบเบงเบเปเบฎเบปเบฒเบเบดเบเบเบฑเปเบเบชเบฐเบเบฒเบเปเบงเบเบฅเปเบญเบกเบเบฒเบเบชเปเบฒเบเปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเบ, เบเบท, MS Build Tools 2019 - เบเบตเปเปเบกเปเบเบชเบฐเบเบฑเบเบเบตเปเบกเบตเบเปเปเบฒเบซเบเบฑเบเปเบเบปเบฒเบเบญเบ Visual Studio 2019, เปเบเบดเปเบเบเบฐเบเบญเบเบเปเบงเบเบญเบปเบเบเบฐเบเบญเบเบเบตเปเบเปเบฒเบเบปเบเปเบงเปเบเบฑเปเบเบเปเปเบฒเบชเปเบฒเบฅเบฑเบเบเบฒเบเบฅเบงเบเบฅเบงเบกเบฅเบฐเบซเบฑเบ.
เปเบเบทเปเบญเปเบฎเบฑเบเบงเบฝเบเบขเปเบฒเบเปเบเบฑเบกเบเบตเปเบเบฑเบเปเบเบเบเบฒเบ C ++ เบเบญเบเบเบงเบเปเบฎเบปเบฒ, เบเบงเบเปเบฎเบปเบฒเบเบฐเบเปเบญเบเบเบฒเบเบญเบปเบเบเบฐเบเบญเบเปเบเบตเปเบกเปเบเบตเบก, เบเบท:
- Workload C++ tools
- เปเบเบทเปเบญเบโเบกเบท v141
- Windows 10 SDK (10.0.17134.0)
เบเปเบฒเบเบชเบฒเบกเบฒเบเบเบดเบเบเบฑเปเบเบเบธเบเปเบเบทเปเบญเบเบกเบทเบเบตเปเบเบฐเบซเบเบฒเบเปเบเปเปเบเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบเปเบเบเปเบเปเปเบเบฅเปเบเบฒเบเบเบฑเปเบเบเปเบฒเปเบเบฎเบนเบเปเบเบ JSON. เปเบเบทเปเบญเบซเบฒเปเบเบฅเปเบเบฒเบเบเบฑเปเบเบเปเบฒ:
เบเบฑเบเบเบตเบฅเบฒเบเบเบทเปเบเบปเบเบเปเบงเบเบเบญเบเบญเบปเบเบเบฐเบเบญเบเบเบตเปเบกเบตเบขเบนเปเบชเบฒเบกเบฒเบเบเบปเบเปเบเปเบขเบนเปเปเบเปเบงเบฑเบเปเบเบเปเปเบญเบเบฐเบชเบฒเบ .
{
"version": "1.0",
"components": [
"Microsoft.Component.MSBuild",
"Microsoft.VisualStudio.Workload.VCTools;includeRecommended",
"Microsoft.VisualStudio.Component.VC.v141.x86.x64",
"Microsoft.VisualStudio.Component.Windows10SDK.17134"
]
}dockerfile เปเบฅเปเบเบชเบฐเบเบฃเบดเบเบเบดเบเบเบฑเปเบ, เปเบฅเบฐเปเบเบทเปเบญเบเบงเบฒเบกเบชเบฐเบเบงเบเบชเบฐเบเบฒเบ, เปเบเบตเปเบกเปเบชเบฑเปเบเบเบฒเบเปเบเบชเบนเปเปเบเบทเปเบญเบเบกเบทเบชเปเบฒเบเปเบเบฅเปเบเบตเปเบชเบฒเบกเบฒเบเบเบฐเบเบดเบเบฑเบเปเบเปเบเบฑเบเบเบปเบงเปเบเบชเบฐเบเบฒเบเปเบงเบเบฅเปเบญเบก. PATH. เบกเบฑเบเบเบฑเบเปเบเบฐเบเปเบฒเปเบซเปเปเบญเบปเบฒเปเบเบฅเปเบเบตเปเบเปเปเบเปเบฒเปเบเบฑเบเปเบฅเบฐเปเบเปเบฅเบเบฐเบเปเบฅเบตเปเบเบทเปเบญเบซเบผเบธเบเบเปเบญเบเบเบฐเบซเบเบฒเบเบเบญเบเบฎเบนเบเบเบฒเบ.
COPY buildtools.config.json .
RUN Invoke-WebRequest 'https://aka.ms/vs/16/release/vs_BuildTools.exe'
-OutFile '.vs_buildtools.exe' -UseBasicParsing ;
Start-Process -FilePath '.vs_buildtools.exe' -Wait -ArgumentList
'--quiet --norestart --nocache --config C:buildtools.config.json' ;
Remove-Item '.vs_buildtools.exe' ;
Remove-Item '.buildtools.config.json' ;
Remove-Item -Force -Recurse
'C:Program Files (x86)Microsoft Visual StudioInstaller' ;
$env:PATH = 'C:Program Files (x86)Microsoft Visual Studio2019BuildToolsMSBuildCurrentBin;' + $env:PATH;
[Environment]::SetEnvironmentVariable('PATH', $env:PATH,
[EnvironmentVariableTarget]::Machine)เปเบเบเบฑเปเบเบเบญเบเบเบตเป, เบฎเบนเบเบเบฒเบเบเบญเบเบเบงเบเปเบฎเบปเบฒเบชเปเบฒเบฅเบฑเบเบเบฒเบเบฅเบงเบเบฅเบงเบกเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบ C ++ เปเบกเปเบเบเบฝเบกเบเปเบญเบก, เปเบฅเบฐเบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเปเบเบเบเบปเบเบเบฑเบเบเบฒเบเบชเปเบฒเบ docker เบซเบผเบฒเบเบเบฑเปเบเบเบญเบเบเบญเบเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบ.
เบซเบผเบฒเบเบเบฑเปเบเบเบญเบเปเบเบเบฒเบเบเบฐเบเบดเบเบฑเบ
เบเบงเบเปเบฎเบปเบฒเบเบฐเบเปเบฒเปเบเปเบฎเบนเบเบเบฒเบเบเบตเปเบชเปเบฒเบเบเบถเปเบเบเปเบงเบเปเบเบทเปเบญเบเบกเบทเบเบฑเบเบซเบกเบปเบเบเบตเปเบขเบนเปเปเบเบดเบเปเบฎเบทเบญเปเบเบฑเบเบฎเบนเบเบเบฒเบเบเปเปเบชเปเบฒเบ. เปเบเบฑเปเบเบเบฝเบงเบเบฑเบเบเบฑเบเบชเบฐเบเบดเบ dockerfile เบเบตเปเบเปเบฒเบเบกเบฒ, เบเบงเบเปเบฎเบปเบฒเบเบฐเปเบเบตเปเบกเบเบงเบฒเบกเบชเบฒเบกเบฒเบเปเบเบเบฒเบเบเปเบฒเบเบปเบเบเปเบฒเบเบงเบเบฎเบธเปเบ / เปเบเบฑเบเบฎเบนเบเบเบฒเบเปเบเบเปเบเบเบฒเบกเบดเบเปเบเบทเปเบญเบเบงเบฒเบกเบชเบฐเบเบงเบเปเบเบเบฒเบเบเปเบฒเปเบเปเบฅเบฐเบซเบฑเบเบเบทเบเปเบซเบกเป. เบกเบฑเบเปเบเบฑเบเบชเบดเปเบเบชเปเบฒเบเบฑเบเบเบตเปเบเบฐเปเบเบตเปเบกเบเปเบฒเบเบเบทเป as builder เบเบฑเบเบฎเบนเบเบเบฒเบเบเบฐเบเบญเบเบขเบนเปเปเบเบเปเบฒเปเบเบฐเบเปเบฒ FROM.
ARG WINDOWS_OS_VERSION=1809
FROM buildtools:$WINDOWS_OS_VERSION as builderเปเบเบเบฑเบเบเบธเบเบฑเบเบกเบฑเบเปเบเบฑเบเปเบงเบฅเบฒเบเบตเปเบเบฐเบชเปเบฒเบเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบ. เบเบธเบเบชเบดเปเบเบเบธเบเบขเปเบฒเบเบขเบนเปเบเบตเปเบเบตเปเปเบกเปเบเบเปเบญเบเบเปเบฒเบเบเปเบฒเบเบเบฒเบ: เบเบฑเบเบฅเบญเบเบฅเบฐเบซเบฑเบเปเบซเบผเปเบเปเบฅเบฐเบเบธเบเบชเบดเปเบเบเบธเบเบขเปเบฒเบเบเบตเปเบเปเบฝเบงเบเปเบญเบเบเบฑเบเบกเบฑเบ, เปเบฅเบฐเปเบฅเบตเปเบกเบเบปเปเบเบเบฐเบเบงเบเบเบฒเบเบฅเบงเบเบฅเบงเบก.
COPY myapp .
RUN nuget restore myapp.sln ;
msbuild myapp.sln /t:myapp /p:Configuration=Releaseเบเบฑเปเบเบเบญเบเบชเบธเบเบเปเบฒเบเบเบญเบเบเบฒเบเบชเปเบฒเบเบฎเบนเบเบเบฒเบเบชเบธเบเบเปเบฒเบเปเบกเปเบเบเบฒเบเบเปเบฒเบเบปเบเบฎเบนเบเบเบฒเบเบเบทเปเบเบเบฒเบเบเบญเบเปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเบ, เบเปเบญเบเบเบตเปเบเบฒเบเบฅเบงเบเบฅเบงเบกเบเปเปเบกเบนเบเบเบญเบกเปเบฅเบฐเปเบเบฅเปเบเบฒเบเบเบฑเปเบเบเปเบฒเบเบฑเบเบซเบกเบปเบเบเบฐเบเบฑเปเบเบขเบนเป. เปเบเบทเปเบญเบเบฑเบเบฅเบญเบเปเบเบฅเปเบเบตเปเบฅเบงเบเบฅเบงเบกเบเบฒเบเบฎเบนเบเบเบฒเบเบเบฐเบเบญเบเบเบฒเบ, เบเปเบฒเบเบเปเบญเบเบฅเบฐเบเบธเบเบฒเบฅเบฒเบกเบดเปเบเบต --from=builder เปเบเบเปเบฒเปเบเบฐเบเปเบฒ COPY.
FROM mcr.microsoft.com/windows/servercore:$WINDOWS_OS_VERSION
COPY --from=builder C:/x64/Release/myapp/ ./
COPY ./configs ./เปเบเบเบฑเบเบเบธเบเบฑเบเบเบฑเบเบซเบกเบปเบเบเบตเปเบเบฑเบเปเบซเบผเบทเบญเปเบกเปเบเบเบฒเบเปเบเบตเปเบกเบเบงเบฒเบกเปเบเบดเปเบเบเบฒเบญเบฒเปเบชเบเบตเปเบเปเบฒเปเบเบฑเบเบชเปเบฒเบฅเบฑเบเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบเบเบญเบเบเบงเบเปเบฎเบปเบฒเบเบตเปเบเบฐเปเบฎเบฑเบเบงเบฝเบเปเบฅเบฐเบฅเบฐเบเบธเบเปเบฒเบชเบฑเปเบเปเบเบตเบเบเบปเบงเปเบเบเบเปเบฒเบเบเปเบฒเปเบเบฐเบเปเบฒ ENTRYPOINT เบซเบผเบท CMD.
เบชเบฐเบซเบฅเบธเบ
เปเบเบเบปเบเบเบงเบฒเบกเบเบตเป, เบเปเบฒเบเบฐเปเบเบปเปเบฒเปเบเปเบญเบฐเบเบดเบเบฒเบเบงเบดเบเบตเบเบฒเบเบชเปเบฒเบเบชเบฐเบเบฒเบเปเบงเบเบฅเปเบญเบกเบเบฒเบเบฅเบงเบเบฅเบงเบกเบเบตเปเบชเบปเบกเบเบนเบเบชเบณเบฅเบฑเบเปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเบ C++ เบเบฒเบเปเบเบเบฒเบเบฐเบเบฐเบเบฒเบเปเบเป Windows เปเบฅเบฐเบงเบดเบเบตเบเบฒเบเปเบเปเบเบงเบฒเบกเบชเบฒเบกเบฒเบเปเบเบเบฒเบเบชเปเบฒเบเบซเบผเบฒเบเบเบฑเปเบเบเบญเบเบเบญเบ Docker เปเบเบทเปเบญเบชเปเบฒเบเบฎเบนเบเบเบฒเบเบเบตเปเปเบเบฑเบกเบฎเบนเบเปเบเบเบเบญเบเปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเบเบเบญเบเบเบงเบเปเบฎเบปเบฒ.
เปเบซเบผเปเบเบเปเปเบกเบนเบ: www.habr.com
