goharbor/harbor · error

login to dockerhub error: %s

Error message

login to dockerhub error: %s

What it means

Error "login to dockerhub error: %s" thrown in goharbor/harbor.

Source

Thrown at src/pkg/reg/adapter/dockerhub/client.go:101

	request, err := http.NewRequest(http.MethodPost, baseURL+loginPath, bytes.NewReader(b))
	if err != nil {
		return err
	}
	request.Header.Set("Content-Type", "application/json")

	resp, err := c.client.Do(request)
	if err != nil {
		return err
	}
	defer resp.Body.Close()

	body, err := io.ReadAll(resp.Body)
	if err != nil {
		return err
	}

	if resp.StatusCode/100 != 2 {
		return fmt.Errorf("login to dockerhub error: %s", string(body))
	}

	token := &TokenResp{}
	if err = json.Unmarshal(body, token); err != nil {
		return fmt.Errorf("unmarshal token response error: %v", err)
	}

	c.token = token.AccessToken
	// Tokens issued by /v2/auth/token expire after 10 minutes; refresh 1 minute
	// early to avoid using a token that is about to expire.
	c.tokenExpiry = time.Now().Add(9 * time.Minute)
	return nil
}

// ensureToken refreshes the bearer token when it has expired or is close to
// expiring. It is a no-op for anonymous (unauthenticated) clients.
func (c *Client) ensureToken() error {
	if len(c.credential.Identifier) == 0 {

View on GitHub (pinned to 7b2fd08cc5)

When it happens

Trigger: Thrown at src/pkg/reg/adapter/dockerhub/client.go:101 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of goharbor/harbor@7b2fd08cc5 (2026-08-16). Data as JSON: /api/errors/e10385e18caced44. Report an issue: GitHub.