Я хочу создать среду Jelasti c с балансировщиком нагрузки и узлом cp. Я хочу добавить узел cp с помощью метода addNodes
api, потому что для запуска ему нужны определенные данные c. Мой манифест выглядит так:
jpsVersion: 1.3
jpsType: install
application:
id: test-app
name: Test App
version: 0.0
env:
topology:
nodes:
- nodeGroup: bl
nodeType: nginx-dockerized
tag: 1.16.1
displayName: Node balancing
count: 1
fixedCloudlets: 1
cloudlets: 4
onInstall:
- addFile
- setup
actions:
addFile:
- cmd [bl]:
- mkdir /data
- echo "Hello world" > /data/test.txt
user: root
setup:
- addNodes:
- nodeGroup: cp
nodeType: docker
displayName: Test Mount
count: 1
fixedCloudlets: 1
cloudlets: 4
dockerName: alpine
volumeMounts:
/kickstart:
readOnly: true
sourcePath: /data
sourceNodeGroup: bl
dockerVolumes:
- /kickstart
По какой-то причине я хочу, чтобы на моем альпийском изображении были данные, которые я храню в папке /kickstart
. Конечно, в таком случае это совершенно не важно. Приведенный выше пример просто достаточно прост, чтобы его можно было воспроизвести. В моем реальном варианте использования образ docker, который я хочу смонтировать, не сможет работать без каких-либо данных c, специфичных для приложения, которые заполняются настройками манифеста, заполненными после ввода пользователя. Вот почему необходимо, чтобы данные были доступны после добавления узла docker.
Моя проблема в том, что приведенный выше простой манифест не работает. Действительно, на моем узле docker у меня нет доступа к папке /kickstart/test.txt
. Что я делаю не так?