#open-liberty
Вопрос:
Команда, можно ли использовать springBootUtility с образами UBI с уменьшенным ядром OpenLiberty (например, — ядро-тонкий-java8-openj9-ubi) ? https://openliberty.io/docs/21.0.0.7/reference/command/springbootUtility-thin.html
Потому что это выдает ошибку, как
Step 3/11 : RUN springBootUtility thin --sourceAppPath=/staging/fat-order-0.0.1-SNAPSHOT.jar --targetThinAppPath=/staging/thin-order-0.0.1-SNAPSHOT.jar --targetLibCachePath=/staging/lib.index.cache
---> Running in 3023c669c4d7
/bin/sh: springBootUtility: command not found
Функция Springbootility работает только с полными изображениями UBI OpenLiberty
Комментарии:
1. Похоже , вам следует указать полный путь к
springBootUtility
нему или добавить в него локализацию.export PATH=$PATH:path_to_liberty/wlp/bin/
или что-то в этом роде.2. Спасибо, Хомел. Я уже пробовал с этим и получил ту же ошибку. У вас есть какой-нибудь пример, который показывает для изображений ubi с тонким ядром, потому что он работает нормально и построен с использованием полного образа docker
3. путь может быть неправильно определен в потоке. Я не знаю, как это сделать. кстати, вы должны описать, что вы уже пытались сделать, чтобы помочь сообществу.
Ответ №1:
На kernel-slim
изображении, похоже, вообще нет этой команды. Сравнить kernel-slim
:
bash-5.1$ docker run --rm -it openliberty/open-liberty:kernel-slim-java8-openj9-ubi ls /opt/ol/wlp/bin
auditUtility binaryLog.bat productInfo securityUtility.bat serverSchemaGen
auditUtility.bat featureUtility productInfo.bat server serverSchemaGen.bat
binaryLog featureUtility.bat securityUtility server.bat tools
Для full
:
bash-5.1$ docker run --rm -it openliberty/open-liberty:full-java8-openj9-ubi ls /opt/ol/wlp/bin
auditUtility binaryLog.bat featureUtility pluginUtility securityUtility.bat springBootUtility
auditUtility.bat client featureUtility.bat pluginUtility.bat server springBootUtility.bat
batchManager client.bat jaxb productInfo server.bat tools
batchManager.bat ddlGen jaxrs productInfo.bat serverSchemaGen
binaryLog ddlGen.bat jaxws securityUtility serverSchemaGen.bat
Похоже, в документации есть пробел, так как ничто не указывает на то, что вам нужно это сделать, но вам нужно установить springBoot
функцию в Open Liberty, прежде чем команда будет добавлена. Скопируйте свой server.xml с помощью spring boot, указанного в образе, затем запустите features.sh
:
COPY --chown=1001:0 server.xml /config/
RUN features.sh
После этого springBootUtility
он будет помещен в /opt/ol/wlp/bin
каталог и также должен находиться на пути для использования дальнейших директив Dockerfile.
Комментарии:
1. И вот пример этого: github.com/OpenLiberty/ci.docker/blob/master/samples/…