使用Azure DevOps时,使用托管代理时,有一种方法可以将项目/解决方案构建到容器(Docker)中,然后提取构建工件并将其发布(而不是作为Docker映像)。
答案 0 :(得分:0)
您当然可以这样做,最简单的方法是使用类似的东西进行构建:
- script: |
mkdir -p /docker-volume/npm
cp -R $(Build.SourcesDirectory)/. /docker-volume/npm
docker run -v /agent/npm:/npm node:10.15 bash \
-c "cd /npm && npm ci && npm run web-build"
exitcode=$?
if [ $exitcode -ne 0 ]; then
rm -rf /docker-volume/npm
exit $exitcode
fi
cp -R /docker-volume/npm/build $(Build.SourcesDirectory)
rm -rf /docker-volume/npm
基本上启动一个容器并将一个卷映射到该容器。在容器内构建东西并将其推到卷中,然后从卷中获取结果并用它们做您需要的事