Ftth_command_worker.php 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. namespace FD3\Services;
  3. use Docker\Composer\FileFormat2;
  4. use FD3\Release;
  5. class Ftth_command_worker extends InitialService
  6. {
  7. /**
  8. * @param Release $release
  9. * @param FileFormat2 $composer
  10. * @param array $config
  11. */
  12. public function add(Release $release, FileFormat2 $composer, $config = array())
  13. {
  14. $module = $this->getModuleName();
  15. $initial = $this->getInitialName();
  16. $version = "latest";
  17. $registry = "";
  18. extract($config);
  19. if ($release->needInstallModule($module)) {
  20. $composer
  21. ->addService($module)
  22. ->image($registry . "fd3/$initial:" . $version)
  23. ->build("./$initial/")
  24. ->command("bin/console rabbitmq:consumer command_consumer")
  25. ->restart($release->_docker_restart_default)
  26. ->addLinks((new Mysql())->getModuleName())
  27. ->addLinks((new Base())->getModuleName())
  28. ->addLinks((new Nginx())->getModuleName(), $release->getDomain("base"))
  29. ->addEnv_file($release->_running_env)
  30. ->addEnv_file($release->_host_env)
  31. ->addEnv_file("$initial.$release->_host_env")
  32. ->addEnviroment("AMQP_KEY", "$initial")
  33. ->addVolumes("./$initial/", "/opt/$initial");
  34. }
  35. }
  36. }