Dockerfileを作成してVSCodeでアタッチする
DockerとGithubActionsを利用して、各種ビルドを自動化する方法まとめ。
DockerはWindows版をインストール
ビルドしたり起動したりする処理はVSCodeをメインに使用します。
Dockerfile¶
まずは、Dockerfileを利用してイメージを作成します。
イメージとは、コンテナを作るための設計書のようなもので
同じ構成のコンテナを量産したり、他のPCやサーバーで同じ環境を簡単に作れます。
このイメージを作るために必要なのが Dockerfileで
このファイルに各種コマンドを記述することで、イメージを作成することができます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
|
イメージを作るときは、0からつくるというより
すでにある土台から、必要な設定などを付け足す形で作ります。
サンプルの場合は、Python3.7の基本的な構成が入ったものを使用します。
コマンドは、
FROM ベースとなるコンテナ名
RUN Linuxのコマンドを実行
ENV 環境変数を指定
ADD コンテナにファイルを追加
WORKDIR コンテナ実行時のフォルダを指定
を使用して、必要な環境設定を作成します。
コンテナは、そのままだと完全に独立した(切り離された)環境になるので、
pip install で requirements.txt を利用してインストールしたい場合
ファイルが存在しないので実行できません。
こういった、環境構築に必要なデータも、イメージ作成時に合わせてパッケージしておきます。
1 2 3 |
|
今回の requirements.txtの中身はこんなかんじで
Usdを使えるようにしています。
イメージビルド¶
Dockerfileを作成したら、イメージビルドをして、正しく構築できるか確認します。
VSCodeから Docker Images: Build Image...
を選択し、
イメージ名を指定して実行します。
問題なくビルドが完了すると、DockerのImagesに
Dockerfileをビルドした結果のイメージが追加されます。
タブを開いて、latest を右クリック、Runを実行すると
コンテナを起動することができました。
起動したコンテナを右クリック、 Attach Visual Studio Code をクリックして
フォルダーを開く を選択します。
ここで開くフォルダーは、Attachしたコンテナのフォルダになります。
試しにルートディレクトリを指定して、OKを押すと
コンテナ内のフォルダが表示されます。
Dockerimageの ADD requirements.txt /work_dir/ で追加された
requirements.txt も含まれているのがわかります。
pip install も正しく実行され、コンテナ内の環境でコードが書けるようになりました。