inflearn logo
知識共有
inflearn logo

Docker基礎 - インストールからDocker Composeマルチコンテナまで

全7回、合計3時間55分でDockerの基礎を身につけるコースです。概念の説明にとどまらず、Dockerfileを5つ実際に作成してビルドし、最後にはFastAPIサーバーとMySQLデータベースを1つのアプリケーションにまとめ、docker compose up の一行で起動します。 第1講と第2講では、Docker DesktopのインストールとWSL2環境の確認から始めます。Docker Hubからubuntuイメージをpullしながら、イメージが複数のレイヤーで構成されていることを確認し、imagesとrmiでローカルイメージを管理します。続いて、run、ps、stop、rmでコンテナのライフサイクルを扱い、execで実行中のコンテナ内部に入ってみます。ポートマッピング(-p)でhttpdコンテナのWebページをブラウザで開き、ボリューム(-v)と環境変数(-e)を使ってMySQLコンテナを起動し、コンテナを削除した後もデータが残る理由を確認します。 第3講から第5講までは、イメージを直接作成するパートです。FROM、WORKDIR、COPY、ENV、RUN、CMD、EXPOSEを1行ずつ詳しく見ながら、RUNとCMDがそれぞれビルド時と実行時に動作するという違いを確認します。1回実行されて終了するPythonスクリプト、常時起動しているFastAPIサーバー、PyInstallerでコンパイルした実行ファイル、そしてjqのような既存のバイナリという4つのタイプを、それぞれイメージとして作成します。特にコンパイルの例ではマルチステージビルドを使用し、ビルドツールを破棄して成果物だけを残す方法を扱います。 第6講と第7講では、コンテナ同士を接続します。ネットワーク設定なしで2つのコンテナを起動すると、なぜ "Internal Server Error" が発生するのかをまず再現したうえで、docker network createでネットワークを作成し、コンテナ名だけで互いを見つけられるようにします。network inspectで割り当てられたIPを確認し、コンテナ内でpingと/etc/resolv . confを使って、Docker組み込みDNS(127.0.0.11)が動作していることまで目で確認します。最後の第7講では、これまで使用してきたすべてのdocker runオプションをcompose.yamlという1つのファイルに書き移し、upとdownでアプリケーション全体をまとめて起動・停止します。 実習で使用したDockerfile、app . py、compose.yamlなど、5種類のプロジェクトが資料として提供されるため、タイピングなしですぐに取り組めます。実習環境はWindows+PowerShellを基準に進めますが、macOSとLinuxでもコマンドは同じです。

2名 が受講中です。

難易度 入門

受講期間 無制限

Docker
Docker
docker-compose
docker-compose
dockerfile
dockerfile
Python
Python
FastAPI
FastAPI
Docker
Docker
docker-compose
docker-compose
dockerfile
dockerfile
Python
Python
FastAPI
FastAPI

お知らせ

新しいお知らせがありません。

期間限定セール

¥2,513

6%

¥2,693