I am making a docker image using a pretty simple Dockerfile. Inside the Dockerfile I have this command:
RUN printf "192.92.13.243 www.hahaha.com \n" >> /etc/hosts
The command itself seems to be OK, since creation of the image does not halt at this point.
The issue is this: When running the image, the line that is supposed to have been inserted inside "/etc/hosts" is not there.
Now, I searched around and found out that before version 1.2 of docker, there was an issue with the hosts file inside the containers. In my case, I am using version 1.5, the latest as of this moment.
Am I missing something?
UPDATE 1:
There seem to be a lot of issues for this, both open and closed, in docker's github pages.
Best Answer
This works on docker 1.7.0
The trick is to add the hostname on the same line as you use it, otherwise the hosts file will get reset, since every RUN command starts a new intermediate container. For example, this will not work: