JAVA_HOME в Docker-контейнереJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 JAVA_HOME в Docker-контейнере

Сообщение Anonymous »

Я пытаюсь настроить Dockerfile, чтобы в нем были инструкции по настройке переменной среды JAVA_HOME в контейнере при его запуске. Затем он устанавливает мое приложение узла. Мне нужна среда Java для библиотеки xsd-schema-validator. Для библиотеки требуется среда JAVA_HOME, установленная в контейнере. Вот что у меня есть:

Код: Выделить всё

FROM openjdk:9

ENV JAVA_HOME  /usr/lib/jvm
RUN export JAVA_HOME

RUN echo $JAVA_HOME

FROM collinestes/docker-node-oracle:latest

# Create app directory
WORKDIR /usr/src/app

COPY package*.json ./

RUN npm install

COPY . .
RUN npm run build

RUN npm run package

# Bundle app source
COPY . ./build

CMD [ "node", "bundle-app.js" ]
Приложение узла, кажется, запускается нормально. Я не вижу никаких ошибок при запуске Docker-контейнера. Однако, когда я вызываю приложение, оно вылетает с ошибкой javaError: spawn javac ENOENT

Я думаю, это потому, что в контейнере нет переменной JAVA_HOME. набор. Я выполнил docker exec -i -tContainer bash и попробовал команду echo $JAVA_HOME, но исполняемый файл Java не отображается. Кроме того, команды java и javac не работают.

Кто-нибудь знает, что я делаю неправильно? Любая помощь будет оценена по достоинству. Заранее спасибо!

Подробнее здесь: https://stackoverflow.com/questions/586 ... -container
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»