在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/Linux/ docker鏡像過(guò)大的問(wèn)題

docker鏡像過(guò)大的問(wèn)題

請(qǐng)教一下,公司里面有個(gè)docker鏡像,應(yīng)該是轉(zhuǎn)了幾個(gè)版本的,裝了一大堆服務(wù),最后打包出來(lái)17G。
這么大的鏡像使用會(huì)有問(wèn)題嗎,而且也不太好遷移,有什么辦法優(yōu)化一下嗎,現(xiàn)在就剩一個(gè)export的tar包了,也沒(méi)原來(lái)的dockerfile。。。

回答
編輯回答
囍槑

提供一個(gè)思路——先根據(jù)docker鏡像反向生成Dockerfile,再來(lái)具體看看。
有這么一個(gè)庫(kù)dockerfile-from-image能做這件事,不過(guò)這個(gè)庫(kù)已經(jīng)沒(méi)有維護(hù)了,我fork了一下改了點(diǎn)東西dockerfile-from-imagepush到了cloud.docker.com,然后你可以執(zhí)行一下命令:

docker pull fanjieqi/dockerfile-from-image:latest
alias dfimage="docker run --rm -v /var/run/docker.sock:/var/run/docker.sock fanjieqi/dockerfile-from-image:latest"

dfimage <tag>/<image>:<version>

這樣能完整的展示這個(gè)鏡像的Dockerfile,不過(guò)當(dāng)中add和copy這些命令操作的文件及文件夾都是帶了hash的,只能去猜操作的都是什么文件及文件夾,類似于這樣:

FROM node:9-alpine
WORKDIR /app
COPY file:7668b48cb0ef6effedbfcabe6e44cb7c70922fc63cf9e1a8fe2a259173835186 in /app
RUN npm install --production --registry=https://registry.npm.taobao.org
RUN echo -e "https://mirrors.ustc.edu.cn/alpine/latest-stable/main\nhttps://mirrors.ustc.edu.cn/alpine/latest-stable/community" > /etc/apk/repositories && apk update && apk add ca-certificates bash git openssh wget && update-ca-certificates && rm -rf /var/lib/apt/lists/*
COPY dir:1a399e39f0bccf78b41ba08e1876cbb222b21475a24c80341ff413b5a0b90b67 in /app

希望能幫助到你。

2017年8月7日 08:01
編輯回答
互擼娃

進(jìn)入到容器把里面需要的程序拷出來(lái),然后重新編寫dockerfile制作鏡像

2018年8月20日 17:42