Начиная с Pivotal Cloud Foundry 2.4, вы можете включить многопользовательские сервисы SMB.Это позволяет вам cf create-service
сервис тома, который указывает на ваш сервер SMB.Затем вы можете привязать это к своему приложению, и когда ваше приложение запустится, платформа подключит том SMB к указанной вами точке монтирования.На этом этапе вашему приложению просто потребуется знать точку монтирования, например /smb
или /files
, чтобы оно могло использовать стандартный ввод-вывод Java для чтения в файлах.
Если вы платформаоператор, инструкции по включению сервисов SMB Volume здесь.
https://docs.pivotal.io/pivotalcf/2-4/opsguide/enable-vol-services.html#smb-enable
Если вы разработчик, инструкции по его использованию находятся здесь.
https://docs.pivotal.io/pivotalcf/2-4/devguide/services/using-vol-services.html#smb
Если вы используете более старую версию PCF или ваш оператор не включил эту функцию, вам нужно будет что-то кодировать в своем приложении, чтобы получить прямой доступ к тому SMB.Есть несколько библиотек, способных сделать это (и их может быть больше, чем в этом списке).
- https://www.jcifs.org/
- https://github.com/hierynomus/smbj
- https://github.com/AgNO3/jcifs-ng
Я не могу рекомендовать конкретный, поэтому вам нужно оценить и выяснить, какой из них работает для вас.
Имейте в виду, что независимо от того, что вы выбираетевам необходимо иметь сетевой доступ к серверу SMB из вашего приложения, работающего на PCF.Это означает, что IP-адрес должен быть маршрутизируемым и не блокироваться брандмауэром.Если вы не можете подключиться, вы также можете проверить доступ к сети у оператора вашей платформы и убедиться, что ничто не блокирует соединение (брандмауэр, группы безопасности приложений и т. Д.).
Надеюсь, это поможет!