func checkSystem() error { // check OS version for compatibility, ensure running in global zone var err error var id C.zoneid_t if id, err = C.getzoneid(); err != nil { return fmt.Errorf("Exiting. Error getting zone id: %+v", err) } if int(id) != 0 { return fmt.Errorf("Exiting because the Docker daemon is not running in the global zone") } v, err := kernel.GetKernelVersion() if kernel.CompareKernelVersion(*v, kernel.VersionInfo{Kernel: 5, Major: 12, Minor: 0}) < 0 { return fmt.Errorf("Your Solaris kernel version: %s doesn't support Docker. Please upgrade to 5.12.0", v.String()) } return err }
// IsContainerized returns true if we are running inside a container. func IsContainerized() (bool, error) { if C.getzoneid() != 0 { return true, nil } return false, nil }