[英]Pulling from a local docker image instead
我有一個具有Dockerfile內容的應用程序
FROM SOME_NUMBERS.dkr.ecr.us-east-1.amazonaws.com/app_name:SOME_HEX_VALUE
COPY docker/app/bin/startup.sh /usr/bin/
CMD ["/usr/bin/startup.sh"]
我不想再從亞馬遜中提取圖像,而是想從第一個docker-compose up --build
命令運行后拉出已經存在的本地圖像。
當我做docker images
我得到了
SOME_NUMBERS.dkr.ecr.us-east-1.amazonaws.com/app_name SOME_HEX_VALUE SOMESHORT_HEX 2 days ago 1.54 GB
表示圖片已經是本地圖片。 我理解這一點
如果主機有想要docker-compose在其上使用的映像,它將使用該映像,但如果主機沒有它,它將轉到docker hub或您在配置中為注冊表設置的任何內容
所以我將Dockerfile內容更改為:
FROM IMAGE_ID:SOME_HEX_VALUE
其中IMAGE_ID
是我在做docker images
時想要的存儲庫的圖像ID,但后來我得到Service 'app' failed to build: repository SOMESHORT_HEX not found: does not exist or no pull access
我想要知道如何告訴Docker使用本地圖像而不是試圖從亞馬遜網址中提取。 有任何想法嗎?
首先從本地Docker引擎中的遠程存儲庫中提取圖像:
docker pull SOME_NUMBERS.dkr.ecr.us-east-1.amazonaws.com/app_name:SOME_HEX_VALUE
現在,為圖像提供一個新的本地標記:
docker tag SOME_NUMBERS.dkr.ecr.us-east-1.amazonaws.com/app_name:SOME_HEX_VALUE my-image-name
現在您可以簡單地引用my-image-name
,如:
FROM my-image-name
你應該:
FROM IMAGE_ID
或者,這已經可以了:
FROM SOME_NUMBERS.dkr.ecr.us-east-1.amazonaws.com/app_name:SOME_HEX_VALUE
其中SOME_HEX_VALUE
是標記版本( SOME_HEX_VALUE
docker images
的第二列)。 請注意,如果您的計算機中存在圖像,則docker不會再嘗試將其拉出。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.