option('auth') ?? config('expose.auth_token', ''); if (strstr($this->argument('host'), 'host.docker.internal')) { config(['expose.dns' => true]); } if ($this->option('dns') !== null) { config(['expose.dns' => empty($this->option('dns')) ? true : $this->option('dns')]); } $domain = config('expose.default_domain'); if (! is_null($this->option('server'))) { $domain = null; } if (! is_null($this->option('domain'))) { $domain = $this->option('domain'); } if (! is_null($this->option('subdomain'))) { $subdomains = explode(',', $this->option('subdomain')); $this->info('Trying to use custom domain: '.$subdomains[0]); } else { $host = Str::beforeLast($this->argument('host'), '.'); $host = Str::beforeLast($host, ':'); $subdomains = [Str::slug($host)]; $this->info('Trying to use custom domain: '.$subdomains[0].PHP_EOL); } (new Factory()) ->setLoop(app(LoopInterface::class)) ->setHost($this->getServerHost()) ->setPort($this->getServerPort()) ->setAuth($auth) ->createClient() ->share( $this->argument('host'), $subdomains, $domain ) ->createHttpServer() ->run(); } }