client: container: support CLI with entrypoint addition (#4126)

This will allow running netbird commands (including debugging) against the daemon and provide a flow similar to non-container usages.

It will by default both log to file and stderr so it can be handled more uniformly in container-native environments.
This commit is contained in:
Krzysztof Nazarewski (kdn)
2025-07-25 11:44:30 +02:00
committed by GitHub
parent 3f82698089
commit af8687579b
29 changed files with 267 additions and 66 deletions

View File

@@ -12,6 +12,8 @@ import (
"github.com/kardianos/service"
"github.com/spf13/cobra"
"github.com/netbirdio/netbird/util"
)
var ErrGetServiceStatus = fmt.Errorf("failed to get service status")
@@ -41,7 +43,7 @@ func buildServiceArguments() []string {
args = append(args, "--management-url", managementURL)
}
if logFile != "" {
for _, logFile := range logFiles {
args = append(args, "--log-file", logFile)
}
@@ -54,7 +56,7 @@ func configurePlatformSpecificSettings(svcConfig *service.Config) error {
// Respected only by systemd systems
svcConfig.Dependencies = []string{"After=network.target syslog.target"}
if logFile != "console" {
if logFile := util.FindFirstLogPath(logFiles); logFile != "" {
setStdLogPath := true
dir := filepath.Dir(logFile)