12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- <?php
- namespace FD3\Services;
- use Docker\Composer\FileFormat2;
- use FD3\Release;
- class Geoserver extends InitialService
- {
- /**
- * Geoserver constructor.
- */
- public function __construct()
- {
- $this
- ->setHelp("Modulo de geoserver")
- ->setHostEnv(true)
- ->setVarEnv([
- 'VIRTUAL_HOST' => '',
- 'HTTPS_METHOD' => 'nohttps'
- ])
- ->setOauth(false)
- ->setRequired(false)
- ->setDepends([]);
- }
- /**
- * @param Release $release
- * @param FileFormat2 $composer
- * @param array $config
- */
- public function add(Release $release, FileFormat2 $composer, $config = array())
- {
- $module = $this->getModuleName();
- $version = "latest";
- $registry = "";
- extract($config);
- if ($release->needInstallModule($module)) {
- $composer
- ->addService($module)
- ->image($registry . "fd3/$module:" . $version)
- ->build("./extra/geoserver/")
- ->restart($release->_docker_restart_default)
- ->addLinks((new Nginx())->getModuleName(), $release->getDomain($module))
- ->addEnv_file($release->_running_env)
- ->addEnv_file($release->_host_env)
- ->addVolumes("./extra/geoserver/geoserver-data/styles", "/opt/geoserver/data_dir/styles")
- ->addVolumes("./geoserver/geoserver-shapes", "/var/www/shapes")
- ->addPorts(8081, 8080)
- ->mem_limit('500m');
- }
- }
- }
|