فهرست منبع

Merge pull request #43797 from thaJeztah/daemon_fail_early

daemon: NewDaemon(): fail early on non-supported platforms
Sebastiaan van Stijn 3 سال پیش
والد
کامیت
e01f84538a
1فایلهای تغییر یافته به همراه5 افزوده شده و 9 حذف شده
  1. 5 9
      daemon/daemon.go

+ 5 - 9
daemon/daemon.go

@@ -68,10 +68,6 @@ import (
 	"google.golang.org/grpc/credentials/insecure"
 )
 
-var (
-	errSystemNotSupported = errors.New("the Docker daemon is not supported on this platform")
-)
-
 // Daemon holds information about the Docker daemon.
 type Daemon struct {
 	id                    string
@@ -711,6 +707,11 @@ func (daemon *Daemon) IsSwarmCompatible() error {
 // NewDaemon sets up everything for the daemon to be able to service
 // requests from the webserver.
 func NewDaemon(ctx context.Context, config *config.Config, pluginStore *plugin.Store) (daemon *Daemon, err error) {
+	// Verify the platform is supported as a daemon
+	if !platformSupported {
+		return nil, errors.New("the Docker daemon is not supported on this platform")
+	}
+
 	registryService, err := registry.NewService(config.ServiceOptions)
 	if err != nil {
 		return nil, err
@@ -732,11 +733,6 @@ func NewDaemon(ctx context.Context, config *config.Config, pluginStore *plugin.S
 	// Setup the resolv.conf
 	setupResolvConf(config)
 
-	// Verify the platform is supported as a daemon
-	if !platformSupported {
-		return nil, errSystemNotSupported
-	}
-
 	// Validate platform-specific requirements
 	if err := checkSystem(); err != nil {
 		return nil, err