Ich hatte den Eindruck, dass Umgebungsvariablen wie folgt in einer einzelnen Zeile festgelegt werden können, um Zwischenbilder zu minimieren.
FROM alpine:3.6
ENV RUBY_MAJOR 2.4 \
RUBY_VERSION 2.4.1 \
RUBY_DOWNLOAD_SHA256 4fc8a9992de3e90191de369270ea4b6c1b171b7941743614cc50822ddc1fe654 \
RUBYGEMS_VERSION 2.6.12 \
BUNDLER_VERSION 1.15.3
Wenn # set |grep RU
ich jedoch einen Container basierend auf diesem Snippet ausführe und aufrufe, sehe ich, dass die Variablen nicht separat zugewiesen werden, sondern zu einer einzigen Zeichenfolge zusammengefasst werden.
RUBY_MAJOR='2.4 RUBY_VERSION 2.4.1 RUBY_DOWNLOAD_SHA256 4fc8a9992de3e90191de369270ea4b6c1b171b7941743614cc50822ddc1fe654 RUBYGEMS_VERSION 2.6.12 BUNDLER_VERSION 1.15.3'
Wenn ich jedoch jede Variable explizit wie folgt einstelle, erhalte ich die erwartete Ausgabe und es gibt keine Fehler beim Aufrufen der Variablen.
ENV RUBY_MAJOR 2.4
ENV RUBY_VERSION 2.4.1
ENV RUBY_DOWNLOAD_SHA256 4fc8a9992de3e90191de369270ea4b6c1b171b7941743614cc50822ddc1fe654
ENV RUBYGEMS_VERSION 2.6.12
ENV BUNDLER_VERSION 1.15.3
Frage: Ist es möglich, die Einstellung von Umgebungsvariablen in einer einzigen Zeile zu kombinieren? Wenn ja, wie würde ich das machen? Und ist es eine gute Praxis?
ENV PATH="$PATH:/app" \ APPVAR="foo"