У меня небольшая проблема с моим образом докера, я хотел бы понять, что с ним не так.
Я создал простой образ докера на основе microsoft / aspnet, который объявляет переменную среды:
ENV JAVA_HOME docker_file_value
И я пытаюсь прочитать его через службу Windows.
Служба отслеживает переменную среды:
System.IO.File.WriteAllText(@"C:\log.txt", System.Environment.GetEnvironmentVariable("JAVA_HOME"));
Моя проблема заключается в том, что значение, зарегистрированное службой, соответствуетпеременная окружения из HOST вместо контейнера (C: \ Program files ...).
Это нормальное поведение?
Это мой Dockerfile:
FROM microsoft/aspnet
ENV JAVA_HOME docker_file_value
ADD EchoEnv.exe /EchoEnv.exe
CMD sc.exe create EchoEnv binPath='c:\EchoEnv.exe' && sc start EchoEnv && c:\servicemonitor.exe w3svc && powershell -Command $ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';
ENTRYPOINT ["cmd", "/c"]