diff --git a/app/Containers/Container.php b/app/Containers/Container.php index eda21f0..26e0811 100644 --- a/app/Containers/Container.php +++ b/app/Containers/Container.php @@ -11,6 +11,7 @@ use Illuminate\Support\Arr; use Illuminate\Support\Facades\Storage; use Illuminate\Support\Str; +use Illuminate\Support\Stringable; abstract class Container { @@ -34,11 +35,11 @@ abstract class Container public function __construct() { if (empty($this->service_name)) { - throw new ContainerException("Service name missing for image " . static::class); + throw new ContainerException("Service name missing for image ".static::class); } if (empty($this->service_definition)) { - throw new ContainerException("Service definition missing for image " . static::class); + throw new ContainerException("Service definition missing for image ".static::class); } } @@ -46,7 +47,7 @@ public function __construct() /** * Returns this service name * - * @param null $new_service_name + * @param null $new_service_name * * @return string */ @@ -76,7 +77,7 @@ public function add_network($name) /** * Set Container user * - * @param string|null $user (default value current_user_id:current_group_id + * @param string|null $user (default value current_user_id:current_group_id * * @return Container */ @@ -95,8 +96,8 @@ public function set_user_uid(string $user = null): Container /** * Map an host port to container port * - * @param int $external Port on host system - * @param int $internal Port on container (default = $esternal) + * @param int $external Port on host system + * @param int $internal Port on container (default = $esternal) * * @return Container */ @@ -146,7 +147,7 @@ public function set_environment($key, $value, $associative_array = true) /** * Set container dependency * - * @param string $service_name + * @param string $service_name * * @return $this */ @@ -160,8 +161,8 @@ public function depends_on(string $service_name) /** * Retrieve and environment value from the container * - * @param string $key - * @param string|null $default + * @param string $key + * @param string|null $default * * @return string */ @@ -265,7 +266,9 @@ public function run(TerminalService $terminal, array $commands, string $input = { $service_command = [ - env('DOCKER_COMPOSE_COMMAND', 'docker compose'), + ...((new Stringable(env('DOCKER_COMPOSE_COMMAND', 'docker compose'))) + ->explode(' ') + ->toArray()), 'run', '--service-ports', '--rm', @@ -285,7 +288,9 @@ public function run(TerminalService $terminal, array $commands, string $input = public function execute_in_shell_command_line(TerminalService $terminal, array $commands) { $service_command = [ - env('DOCKER_COMPOSE_COMMAND', 'docker compose'), + ...((new Stringable(env('DOCKER_COMPOSE_COMMAND', 'docker compose'))) + ->explode(' ') + ->toArray()), 'exec', $this->service_name(), ];