diff --git a/internal/support/cli/clients.go b/internal/support/cli/clients.go index b716992e..98f8212a 100644 --- a/internal/support/cli/clients.go +++ b/internal/support/cli/clients.go @@ -11,7 +11,7 @@ import ( "github.com/rs/zerolog/log" ) -func CreateMultiHostService(embeddedCerts embed.FS, args Args) (container.Client, *docker_support.MultiHostService) { +func CreateMultiHostService(embeddedCerts embed.FS, args Args) *docker_support.MultiHostService { var clients []container_support.ClientService if len(args.RemoteHost) > 0 { log.Info().Msg(`Consider using Dozzle's remote agent to manage remote hosts. See https://dozzle.dev/guide/agent for more information`) @@ -48,6 +48,7 @@ func CreateMultiHostService(embeddedCerts embed.FS, args Args) (container.Client log.Debug().Msg("Adding local Docker Engine") clients = append(clients, docker_support.NewDockerClientService(localClient, args.Filter)) } + go StartEvent(args, "server", localClient, "") } certs, err := ReadCertificates(embeddedCerts) @@ -56,5 +57,5 @@ func CreateMultiHostService(embeddedCerts embed.FS, args Args) (container.Client } clientManager := docker_support.NewRetriableClientManager(args.RemoteAgent, args.Timeout, certs, clients...) - return localClient, docker_support.NewMultiHostService(clientManager, args.Timeout) + return docker_support.NewMultiHostService(clientManager, args.Timeout) } diff --git a/main.go b/main.go index 2b30caca..d6d0c033 100644 --- a/main.go +++ b/main.go @@ -16,7 +16,6 @@ import ( "github.com/amir20/dozzle/internal/agent" "github.com/amir20/dozzle/internal/auth" - "github.com/amir20/dozzle/internal/container" "github.com/amir20/dozzle/internal/docker" "github.com/amir20/dozzle/internal/healthcheck" "github.com/amir20/dozzle/internal/k8s" @@ -167,14 +166,13 @@ func main() { var hostService web.HostService if args.Mode == "server" { - var localClient container.Client - localClient, multiHostService := cli.CreateMultiHostService(certs, args) + + multiHostService := cli.CreateMultiHostService(certs, args) if multiHostService.TotalClients() == 0 { log.Fatal().Msg("Could not connect to any Docker Engine") } else { log.Info().Int("clients", multiHostService.TotalClients()).Msg("Connected to Docker") } - go cli.StartEvent(args, "server", localClient, "") hostService = multiHostService } else if args.Mode == "swarm" { localClient, err := docker.NewLocalClient("")