संशोधित मेजबान फ़ाइल में dockerfile

मेरे पास /आदि/होस्ट फ़ाइल को संशोधित करने के लिए रन निर्देश के साथ एक डॉकरफाइल है लेकिन यह काम नहीं करता है ।

FROM dockerhub.mydomain.com/sometag/java8MAINTAINER itsmeADD some-java-app.jar app.jarADD hosts tmp/ENV PATH=/opt/java/bin:$PATHRUN cat /tmp/hosts >> /etc/hostsCMD ["java",\    "-Djava.security.egd=file:/dev/./urandom",\    "-jar",\    "/app.jar"]

में hosts फ़ाइल जिसे डॉकर छवि में /टीएमपी में कॉपी किया गया है, एक अतिरिक्त मेजबान नाम और आईपी है । मैं चाहता हूँ cat कि /tmp/hosts को /etc/hosts लेकिन छवि बनाने के बाद /etc/hosts unmodified है.

इस फ़ाइल को ठीक से कैसे संशोधित करें?संपादित करें:मैं उपयोग करने की कोशिश कर रहा हूँ tee कमांड लेकिन जबकि छवि की सामग्री का निर्माण होता है /tmp/hosts कंसोल के लिए प्रतिध्वनित है, नहीं /etc/hosts.

RUN bash -c 'cat /tmp/hosts | tee -a /etc/hosts'

ऐसा लगता है | या >> में काम नहीं करता है Dockerfile.

डॉकर बनाता है /etc/hosts कंटेनर शुरू होने पर फ़ाइल । इसलिए मेरे संशोधन /etc/hosts फ़ाइल अधिलेखित हैं । मैं सीएमडी कमांड के माध्यम से मेजबान फ़ाइल को गतिशील रूप से बदल सकता हूं ।

FROM dockerhub.mydomain.com/sometag/java8MAINTAINER itsmeADD some-java-app.jar app.jarADD hosts tmp/ENV PATH=/opt/java/bin:$PATHCMD cat /tmp/hosts >> /etc/hosts; java -Djava.security.egd=file:/dev/./urandom -jar /app.jar; cat /etc/hosts

अंतिम आदेश सीएमडी पंक्ति में पहले कमांड द्वारा किए गए परिवर्तन दिखाता है ।