簡體   English   中英

AWS ECS 無法在 Fargate 上啟動 windows

[英]AWS ECS fails to start windows on Fargate

根據新的 AWS 功能https://aws.amazon.com/about-aws/whats-new/2021/10/aws-fargate-amazon-ecs-windows-containers/ 嘗試啟動我的 windows 失敗並顯示以下內容:CannotCreateVolumeError: unsupported: Dockerfile contains VOLUME instruction. 卷未在任務定義中配置,也未在 Dockerfile 中配置。知道為什么會發生這種情況嗎?

如果有人正在閱讀本文,解決方案是不使用https://hub.docker.com/r/jenkins/inbound-agent上的默認 Windows 圖像。 這些鏡像實際上是從https構建的://github.com/jenkinsci/docker-inbound-agent/tree/master/11/windows/windowsservercore-ltsc2019 (這個鏡像沒有Volume指令),它是從https構建的:/ /github.com/jenkinsci/docker-agent/blob/master/11/windows/windowsservercore-ltsc2019/Dockerfile (這個確實有 Volume 指令)。 它有多種變體,包括“nanoserver”和“jdk8/jdk11”版本,但它們都有卷指令,我認為這些指令適用於 EC2 但不適用於 Fargate。

如果您希望它在 Fargate 上運行,您將需要基於上面的這兩個 Dockerfile 構建一個自定義圖像。 我使用多級 Dockerfile 並注釋掉第一個 Dockerfile 上的 Volume 指令,並將第二個 Dockerfile 內容連接到它。

FROM eclipse-temurin:11.0.13_8-jdk-windowsservercore-1809 AS jenkins-agent-windows-builder

...

#VOLUME ${AGENT_ROOT}/.jenkins
#VOLUME ${AGENT_WORKDIR}

...

FROM jenkins-agent-windows-builder

問題與我在 dockerfile 中使用的父圖像有關,因為它包含 VOLUME 指令

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM