diff --git a/pkg/healthcheck/healthcheck_manager_linux.go b/pkg/healthcheck/healthcheck_manager_linux.go index ee618b5cb9f..92b49bd0cc4 100644 --- a/pkg/healthcheck/healthcheck_manager_linux.go +++ b/pkg/healthcheck/healthcheck_manager_linux.go @@ -48,11 +48,20 @@ func CreateTimer(ctx context.Context, container containerd.Container, cfg *confi containerID := container.ID() log.G(ctx).Debugf("Creating healthcheck timer unit: %s", containerID) + // Set all environment variables so that they are available for the nerdctl commands run via the systemd service file cmdOpts := []string{} if path := os.Getenv("PATH"); path != "" { cmdOpts = append(cmdOpts, "--setenv=PATH="+path) } + if nerdctlToml := os.Getenv("NERDCTL_TOML"); nerdctlToml != "" { + cmdOpts = append(cmdOpts, "--setenv=NERDCTL_TOML="+nerdctlToml) + } + + if buildKitHost := os.Getenv("BUILDKIT_HOST"); buildKitHost != "" { + cmdOpts = append(cmdOpts, "--setenv=BUILDKIT_HOST="+buildKitHost) + } + // Always use health-interval for timer frequency cmdOpts = append(cmdOpts, "--unit", containerID, "--on-unit-inactive="+hc.Interval.String(), "--timer-property=AccuracySec=1s")