MeWrite Docs

Docker: image not found / pull access denied

Dockerイメージの取得に失敗した場合のエラー

概要

Dockerがコンテナイメージを取得(pull)できない場合に発生するエラーです。イメージ名のタイポ、認証不足、プライベートリポジトリへのアクセス権限がないなど、複数の原因が考えられます。

エラーメッセージ

docker: Error response from daemon: pull access denied for myapp, repository does not exist or may require 'docker login': denied: requested access to the resource is denied.
Unable to find image 'myapp:latest' locally
docker: Error response from daemon: manifest for myapp:latest not found: manifest unknown: manifest unknown.
Error response from daemon: manifest for ubuntu:22.0 not found: manifest unknown: manifest unknown.

原因

  1. イメージ名またはタグのタイポ: ubunt:latestubuntu:22.0(正しくは 22.04
  2. レジストリ認証が未実施: プライベートリポジトリへの docker login が必要
  3. イメージが存在しない: 削除されたか、別のレジストリにある
  4. ネットワーク/プロキシの問題: レジストリへの接続がブロックされている

解決策

1. イメージ名とタグを確認

1
2
3
4
5
6
7
8
# Docker Hubでイメージを検索
docker search nginx

# 利用可能なタグを確認(Docker Hub API)
curl -s "https://registry.hub.docker.com/v2/repositories/library/nginx/tags?page_size=10" | jq '.results[].name'

# 正しいイメージ名でpull
docker pull nginx:1.25-alpine

2. プライベートレジストリにログイン

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
# Docker Hubにログイン
docker login

# AWS ECRにログイン
aws ecr get-login-password --region ap-northeast-1 | \
  docker login --username AWS --password-stdin 123456789012.dkr.ecr.ap-northeast-1.amazonaws.com

# GitHub Container Registryにログイン
echo $GITHUB_TOKEN | docker login ghcr.io -u USERNAME --password-stdin

# Google Artifact Registryにログイン
gcloud auth configure-docker asia-northeast1-docker.pkg.dev

3. フルイメージパスを指定

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
# Docker Hub公式イメージ
docker pull library/nginx:latest
# または
docker pull docker.io/library/nginx:latest

# プライベートレジストリ
docker pull 123456789012.dkr.ecr.ap-northeast-1.amazonaws.com/myapp:v1.0

# GitHub Container Registry
docker pull ghcr.io/owner/myapp:latest

4. ローカルイメージの確認

1
2
3
4
5
6
7
8
# ローカルにあるイメージ一覧
docker images

# 特定イメージの存在確認
docker images | grep myapp

# ローカルビルドが必要な場合
docker build -t myapp:latest .

5. ネットワーク/プロキシ設定の確認

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
# レジストリへの接続確認
curl -v https://registry-1.docker.io/v2/

# Docker daemonのプロキシ設定
sudo mkdir -p /etc/systemd/system/docker.service.d
cat <<'EOF' | sudo tee /etc/systemd/system/docker.service.d/proxy.conf
[Service]
Environment="HTTP_PROXY=http://proxy.example.com:8080"
Environment="HTTPS_PROXY=http://proxy.example.com:8080"
Environment="NO_PROXY=localhost,127.0.0.1"
EOF

sudo systemctl daemon-reload
sudo systemctl restart docker

関連エラー

Docker の他のエラー

最終更新: 2026-02-03