從image反組譯Dockerfile
一般從Dockerfile建制image不難,但是如果要從沒有Dockerfile的主機回推Dockerfile的話,就不是那麼容易達成... 在 Docker從入門到實踐 這本書中有介紹到這個方法...
反組譯流程
- Step1: 先把要reverse的image拉下來
- Step2: 透過下面指令進行reverse
docker run -v /var/run/docker.sock:/var/run/docker.sock \
centurylink/dockerfile-from-image <IMAGE_TAG_OR_ID> > Dockerfile.txt
接下來就可以在該Dockerfile.txt中看到所反組譯的Dockerfile內容。
實際操作範例:
root@google-machine:~# docker run -v /var/run/docker.sock:/var/run/docker.sock \
centurylink/dockerfile-from-image google/python:latest \
> google-python-dockerfile
root@google-machine:~# cat google-python-dockerfile
ENV DEBIAN_FRONTEND=noninteractive
ADD file:e8a64bb080d369e8d87da81cdf8b863eebd2a771eff07239ba3ec88461fe3808 in /
RUN apt-get update -y && apt-get install --no-install-recommends -y -q build-essential python2.7 python2.7-dev python-pip git
RUN pip install -U pip
RUN pip install virtualenv