GitHub Copilot使用:Pythonでテトリスを作りDocker化してGuiで起動

GitHub Copilot使用:Pythonでテトリスを作りDocker化してGuiで起動 Docker

この記事では、VSCodeにGitHub Copilotを導入し、Pythonで作成したテトリスをDockerコンテナ化してGUIで起動する記事の内容をCopilotを使って簡単に行う手順ご紹介します。

Copilotを使えば、たった一つのコマンド実行で簡単にセットアップできました。

GitHub Copilotとは

GitHub Copilot は 、GitHubとOpenAIが共同開発したAI コーディング アシスタントで、Visual Studio Code、Visual Studioなどのエディタにインストールして使うことで、以下のことができます。

  • コード補完と生成
    自然言語のコメントから関数全体などを自動的に提案・生成ができます。
  • Copilot Chat
    コーディング関連の質問をできるチャット インターフェイスです。
  • テストコード生成
    単体テストのひな形を自動で作成し、テストの導入をスムーズにします 。
  • ドキュメント補助
    コードの説明コメントや README のドラフトを生成し、ドキュメント作成をサポートします。
  • コーディングエージェント
    自律的に開発タスク(コードの生成・修正、バグ修正とテストの自動化、ドキュメント・コメントの自動生成、Pull Request(PR)の自動作成・管理)を実行できるAIエージェント機能です。

参考:GitHub Copilot とは何ですか?

VSCode でGitHub Copilotを使う

今回のGitHub Copilot使用:Pythonでテトリスを作ってDocker化してGuiで起動の作業は、VSCode にGitHub Copilotをインストールして行います。

VSCode へGitHub Copilotをインストールする

  1. VS Codeのインストール
    インストールしていない場合は、Visual Studio Codeの公式サイト からダウンロードしてインストールします。
  2. GitHubアカウントの登録とログイン
    GitHub CopilotはGitHubアカウントに紐付けられます。
    GitHubアカウントを持っていない場合は、GitHub でのアカウントの作成を参照して作成した後にログインします。
  3. GitHub Copilot Freeの利用
    VS Codeの拡張機能にGitHub Copilotをインストールし、GitHubアカウントと連携すると使えるようになります。
    参考:GitHub Copilot Freeについて

Pythonでテトリスを作りDocker化してGuiで起動

Visual Studio CodeのGitHub Copilot Chatに、以下のプロンプトを入力するだけで、Docker起動に必要なファイルを自動生成してくれました。

下記が、Visual Studio Code上のGitHub Copilot実行時のメッセージです。

*****(指定したディレクトリ)が作成されました。
requirements.txtが作成されました。
Dockerfileが作成されました。
main.pyが作成されました。
ご要望通り、以下の3ファイルを *****(指定したディレクトリ)に作成しました。
- main.py(キー操作説明・スコア表示・ハードドロップ機能付きテトリス)
- requirements.txt(pygame指定)
- Dockerfile(GUI起動用)
【起動手順】
1. Xサーバー(VcXsrvやXming)をWindowsで起動
2. PowerShellで下記を実行
```powershell
cd *****(指定したディレクトリ)
docker build -t tetris .
docker run -e DISPLAY=host.docker.internal:0.0 -v /tmp/.X11-unix:/tmp/.X11-unix Docker tetris
```
画面右にキー操作説明、左上にスコア、スペースキーでハードドロップができます。
他に追加・修正したい点があれば教えてください。

Docker Desktopを起動して、Copilotメッセージ内の【起動手順】に従って、VcXsrvを起動した後にpowershellから指定コマンドを実行すると、Docker上でテトリスが起動されました。

以下は、powershellの操作画面です。

起動したテトリスは、下記の通りでした。

タイトルとURLをコピーしました