このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。

Docker超入門:コンテナを使ったPython開発環境の構築③

コンテナを使ったPython開発環境の構築③

 前回の「コンテナを使ったPython開発環境の構築②」では、Dockerfile・compose.yaml・Pythonアプリを作成し、開発環境のベースを整えました。
今回はその続きとして、VS CodeとDockerコンテナを接続する設定を行っていきます。

 これにより、VS Codeから直接コンテナの中にアクセスして、Pythonプログラムを実行できるようになります。
ローカル環境を汚さずに、コンテナの中で快適に開発できるようになる、とても便利なステップです✨

開発環境のイメージ

今回構築する環境の全体像は下のようになります👇

  • VS Codeで開いたフォルダー(ワークスペース)の中身が、
    自動的にコンテナへコピーされます。
  • コンテナの中でPythonプログラムを実行できるようになります。

この仕組みのおかげで、VS Code上の操作がそのままコンテナ上の動作と連動します。

VS Codeとコンテナの接続手順

ここからは、VS Code上で実際にDockerコンテナへ接続する手順を説明します。

VS Codeを起動します。
次のコマンドを実行します👇

code

① リモートウィンドウを開く

VS Codeの左下にある 「><」アイコン(リモートウィンドウを開く)」 をクリックします。
これは、VS Codeの「Remote Development」機能を使うためのボタンです。

クリックすると、次のようなメニューが表示されます👇
ここでは 「コンテナでフォルダーを開く...」 を選択します。

② フォルダーを選択する

次に、どのフォルダーをコンテナで開くかを聞かれます。
ここでは、前回作成した pythonフォルダー を選びましょう。

C:\Users\ユーザー名\Desktop\docker\python

このフォルダーの中には、Dockerfile・compose.yaml・Pythonのファイル群が入っています。
VS Codeはこの情報をもとに、コンテナを起動してくれます。

③ コンテナ構成を保存する場所を選択

ここから、利用しているPC環境によって進め方が変わってきます。

場合1:ポップアップウィンドウが表示された場合

「ワークスペースの構成をファイルとして保存しますか?」という質問が出てきます。
ここでは「保存」をクリックします👇

ここでも、前回作成した pythonフォルダー を選んで「保存」ボタンをクリックします。

場合2:VS Code上の上部に「コンテナ構成をどこに作成しますか?」と表示された場合

「ユーザー データ フォルダーに構成を追加する」を選択します。

「コンテナー構成をどのように作成しますか?」では、

「'compose.yaml'からコンテナ構成の既存の'compose.yaml'を参照してください」を詮索します。

インストールする追加機能を選択するでは、VS Codeの拡張機能を選択できます。

ここでは、「OK」をクリックします。

コンテナの作成と実行

選択が完了すると、
DockerがバックグラウンドでイメージのPull(ダウンロード)とコンテナ作成がはじまります。

この処理には少し時間がかかりますが、焦らず待ちましょう☕

ステップ処理内容
イメージのPullDocker Hubからpython:3.11イメージを取得
コンテナのビルドDockerfileとcompose.yamlに基づいて環境構築
拡張機能のセットアップVS Code内でPython・Dev Containersなどが準備されます。

処理が完了すると、VS Codeのエクスプローラー上に
選択した pythonフォルダー の内容が表示されます。

これで、VS Codeがコンテナに接続されました🎉

コマンドの理解:docker compose

コンテナ起動時、内部的には次のようなコマンドが実行されています👇

docker compose up -d

このコマンドの意味を整理しておきましょう。

オプション説明
upcompose.yamlに定義されたサービスを起動します。
-dコンテナをバックグラウンドで実行します。

VS CodeのDev Containers機能は、このDocker Composeコマンドを自動的に呼び出し、
設定されたコンテナを起動してVS Codeに接続します。

ここまでの流れまとめ

手順操作内容
リモートウィンドウを開く
「コンテナでフォルダーを開く」を選択
pythonフォルダーを指定
「compose.yamlから構成」を選択
拡張機能のインストール
コンテナの起動・接続完了

これで、VS Codeとコンテナが無事につながりました!
次のステップでは、実際にコンテナ上でPythonプログラムを実行していきます🐍✨

これで、VS CodeとDockerコンテナをつなぐ準備が完了しました!
次回の「コンテナを使ったPython開発環境の構築④」では、
このコンテナ内でPythonプログラムを実行してみましょう🚀