本文へスキップ
ウェブエンジニア問題集

Docker / 39 QUESTIONS

Docker問題集

解いて、戻って、身につける。

Dockerの実践的なエラー解決やDockerfile・docker compose・ボリューム管理など頻出トピックに関するクイズです。

39

問題

10

タグ

0円

無料

教科書全10章

Docker入門 — コンテナ開発の基礎

解説で理解を深める

Dockerの問題一覧

該当件数39件

イメージ

4問
1

Debian系ベースイメージでapt-get installを使ったら、イメージサイズが大きくなりました。DockerfileのRUNで意識すべき書き方はどれですか?

Dockerfile
2

ローカルで作ったイメージをDocker Hubやレジストリへpushしたいですが、リポジトリ名が合わず失敗します。push前に行うべき操作として適切なのはどれですか?

3

Dockerfileの前半にあるRUN命令を変更したら、その後ろの命令もまとめて再実行されました。Dockerのビルドキャッシュの理解として正しいものはどれですか?

Docker ビルド
4

Node.jsの本番イメージを軽くしたい一方で、ネイティブ依存パッケージのビルド失敗は避けたいです。ベースイメージ選択の考え方として最も適切なのはどれですか?

Dockerfile

コンテナ

5問
1

起動中のwebコンテナに入って、設定ファイルや環境変数を確認したいです。既存コンテナ内でシェルを開く操作として最も適切なのはどれですか?

2

コンテナの直近ログだけを見ながら、新しいログもリアルタイムで追いたいです。操作として最も適切なのはどれですか?

3

動いているコンテナの環境変数、マウント、ネットワーク設定などをJSONで確認したいです。最も適切なコマンドはどれですか?

4

コンテナ内のアプリが3000番で待ち受けています。ホストPCの8080番でアクセスできるようにするdocker runのポート指定はどれですか?

Docker ネットワーク
5

ローカルで編集したソースコードを、コンテナ内の開発サーバーへすぐ反映したいです。開発用途として適切なのはどれですか?

Docker ボリューム

Dockerfile

6問
1

Dockerfileでアプリを /app に配置したいのに、RUN npm install が想定外のディレクトリで実行されて失敗しました。作業ディレクトリを安定させるために最も適切なのはどれですか?

2

Node.jsアプリのDockerビルドで、ソースコードを1行変えるだけで毎回npm installが最初から走って遅くなります。キャッシュを効きやすくするDockerfileの書き方はどれですか?

Docker ビルド
3

DockerfileにEXPOSE 3000を書いたのに、ブラウザから http://localhost:3000 にアクセスできません。原因として最も適切なのはどれですか?

Docker ネットワーク
4

本番用コンテナでNode.jsアプリをrootユーザーのまま実行していることをレビューで指摘されました。Dockerfileで改善する方針として最も適切なのはどれですか?

5

Debian系ベースイメージでapt-get installを使ったら、イメージサイズが大きくなりました。DockerfileのRUNで意識すべき書き方はどれですか?

Docker イメージ
6

Node.jsの本番イメージを軽くしたい一方で、ネイティブ依存パッケージのビルド失敗は避けたいです。ベースイメージ選択の考え方として最も適切なのはどれですか?

Docker イメージ

Docker Compose

5問
1

docker composeで複数サービスに共通の環境変数を渡したいです。ただしcompose.yamlに値を直接ベタ書きしたくありません。よく使われる方法はどれですか?

2

Composeでappがdbにdepends_onしているのに、起動直後にアプリがDB接続エラーになります。原因の理解として最も適切なのはどれですか?

エラー
3

Composeでwebコンテナからdbコンテナへ接続したいです。同じComposeネットワーク上で接続先ホスト名として使うのに適切なのはどれですか?

Docker ネットワーク
4

通常開発では起動しないが、必要なときだけadminerやmailhogのような補助サービスをComposeで起動したいです。適切な設定はどれですか?

5

Composeでローカルのソースをコンテナへbind mountしたら、イメージ内でnpm installしたnode_modulesが見えなくなりました。よくある原因はどれですか?

Docker ボリューム

その他

17問
1

Dockerコマンド実行時に「Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?」というエラーが発生しました。最も一般的な対処法は?

2

docker compose upを実行したところ「Bind for 0.0.0.0:3000 failed: port is already allocated」というエラーが出た。この状況の説明として正しいものはどれか。

エラー
3

Dockerfileのビルド時に「COPY failed: file not found in build context」というエラーが発生しました。原因として正しいものは?

4

Dockerで「no space left on device」というエラーが発生しました。ディスク容量を回復するための最も効果的なコマンドは?

5

Dockerコンテナが「exited with code 137」で突然停止しました。最も疑わしい原因は?

6

Dockerのマルチステージビルドの主な目的は?

7

「docker-compose」コマンドと「docker compose」コマンドの違いは?

8

Dockerfileと同じディレクトリに.dockerignoreファイルを配置する主な目的は?

9

DockerfileのENTRYPOINTとCMDの違いについて正しいものは?

10

Dockerでボリュームマウントしたディレクトリに書き込もうとしたところ「Permission denied」が発生しました。原因として正しいものは?

11

WSL 2環境で、特定のディストリビューションだけに4GBのメモリ上限を設定したい。正しい方法はどれですか?

WSL
12

WSL 2で使用する.wslconfigファイルの役割として正しい説明はどれですか?

WSL
13

WSL 2でUbuntuをインストールしようとしたところ「WslRegisterDistribution failed with error: 0x80370102」というエラーが表示されました。このエラーの原因として最も適切なものはどれですか?

エラーWSL
14

WSLでディストリビューションを起動しようとしたところ「WslRegisterDistribution failed with error: 0x8007019e」が表示されました。この状況を解消する方法として正しいものはどれですか?

エラーWSL
15

WSLのセットアップ後、ターミナルでwslコマンドを実行したところ「Error code: Wsl/WSL_E_DEFAULT_DISTRO_NOT_FOUND」と表示されました。wsl --install実行時には「Ubuntu is already installed」と表示されます。この問題の原因として最も適切なものはどれですか?

エラーWSL
16

VS Code で WSL に接続した際に「VS Code Server for WSL closed unexpectedly」エラーが発生し、~/.vscode-server ディレクトリを削除してから再接続すると解消された。この対処法が有効である根本的な理由として、最も適切なものはどれか。

エラーWSL
17

Dockerイメージとコンテナの関係として正しいのは?

基礎

Dockerとは

Dockerは、コンテナ型仮想化技術を提供するオープンソースプラットフォームです。アプリケーションとその依存関係をコンテナとしてパッケージ化し、どの環境でも同一の動作を保証します。Dockerfile によるイメージのビルド、Docker Compose による複数コンテナの管理、ボリュームやネットワークの制御など、モダンな開発・デプロイワークフローに不可欠な技術です。

なぜDockerを学ぶべきか

Dockerはローカル開発環境の統一、CI/CDパイプライン、本番デプロイなど、ソフトウェア開発のあらゆる段階で活用されています。「自分の環境では動くのに…」という問題を解消し、チーム開発の効率を大幅に向上させます。Kubernetes などのコンテナオーケストレーションの前提知識としても必須です。

出題トピック

イメージとコンテナ

Dockerイメージの仕組み、レイヤー構造、コンテナのライフサイクル(作成・起動・停止・削除)、docker run のオプションについて出題します。

Dockerfile

FROM・COPY・RUN・CMD・ENTRYPOINTなどの命令、マルチステージビルド、レイヤーキャッシュの最適化、.dockerignore の活用を扱います。

Docker Compose

docker-compose.yml の構成、サービス定義、依存関係(depends_on)、環境変数、ネットワーク設定など複数コンテナの管理を問います。

ボリュームとネットワーク

データの永続化(ボリュームマウント・バインドマウント)、コンテナ間通信、ブリッジネットワーク、ポートマッピングについて出題します。

こんな方におすすめ

  • コンテナ技術をこれから学びたい方
  • 開発環境の構築を効率化したいエンジニア
  • CI/CDやクラウドデプロイの基礎を固めたい方
  • Kubernetesの学習前にDocker基礎を押さえたい方

Dockerに関するよくある質問

DockerとVMはどう違いますか?
VMはハイパーバイザー上でゲストOSを丸ごと動かすのに対し、Dockerはホストカーネルを共有しプロセスレベルで隔離するため、起動が高速でリソース消費も少ないです。軽量かつポータブルな環境構築に適しています。
Docker Composeはどのような場合に使いますか?
Webアプリ+データベース+キャッシュなど、複数のコンテナを連携させる開発環境で活用します。docker-compose.yml に全サービスを定義し、docker compose up 一つで環境全体を起動できます。
Dockerイメージを小さくするコツは?
Alpine Linux などの軽量ベースイメージを使う、マルチステージビルドでビルド成果物のみを最終イメージにコピーする、不要ファイルを .dockerignore で除外する、RUN命令をまとめてレイヤー数を減らすなどが効果的です。

関連する問題集