1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

個人的な備忘録:初めて知ったMakefileについて、手を動かしながら記事としてアウトプットしてみた

Posted at

はじめに

今回は、Makefile について教えていただいた内容を実際に手を動かして試してみた結果を、備忘録としてまとめています。

内容自体はなんとなく理解していたつもりでしたが、実際に試してみることでより深く学ぶことができると考えました。

さらに、「こんなことができるんだ!」と自分でも感動した部分があったため、振り返りを兼ねて記事にしてみました。

※ほとんどが自分用の記録ですが、あらかじめご了承ください。

書こうと思ったきっかけ

これは私自身の実体験ではありませんが、チーム開発の際に、GitHub上のリポジトリにREADMEを追加する話を伺ったことがきっかけです。

その際、「内容が少し複雑で、全員がすぐに理解できるとは限らない」という指摘があったそうです。

そのような背景から、もっと分かりやすく実行できる仕組みを作るため、Makefileを活用して簡単にコマンドを実行できるようにする方法を試してみることにしました。

Makefile とは?

Makefile は、プログラムのビルドや管理作業を自動化するための設定ファイルです。

特に、複雑なコマンドや一連の作業を簡略化して実行できるようにする役割を果たします。

主な特徴

  • タスク自動化
    特定のコマンド(例: コンパイル、テスト、デプロイ)を簡略化し、効率的に実行できます。

  • 簡単なコマンド実行
    make <ターゲット名> で複雑な作業を一行で実行できます。

簡単な例

以下は、Docker コンテナの起動と終了を自動化する Makefile の例です:

up:
	docker-compose up

down:
	docker-compose down
  • make up を実行すると、docker-compose up が実行されます。
  • make down を実行すると、docker-compose down が実行されます。

実際にやってみた

まずは、GitHub上のチームリポジトリをローカルに git clone してきます。

今回は2つのリポジトリを対象とし、フロントエンドとバックエンドのリポジトリそれぞれを確認してみます。

フロントエンドのリポジトリ

フロントエンドリポジトリには、事前にチームメンバーが設定してくれたREADMEがあり、その手順に従って作業を進めました。

ローカル開発構築手順

Dockerコンテナを立ち上げる:

$ make up

モジュールのインストール(初回またはモジュール追加時のみ):

$ make install

開発用サーバーを起動:

$ make dev

ブラウザから確認:

http://localhost:5173 にアクセスして、正しく表示されていることを確認します。

Screenshot 2025-01-21 at 7.56.33.png

Dockerコンテナを削除:

$ make down

上記手順に従い、MacBookのターミナルからMakefileで設定されたコマンドを実行して動作を確認しました。

バックエンドのリポジトリ

次に、バックエンドのリポジトリを同様にローカルにクローンして実行しました。

ローカル環境構築手順

Dockerコンテナを起動:

$ make up

Goの開発用サーバーを起動:

$ make dev

ブラウザから確認:

http://localhost:1323 にアクセスして、正しく表示されていることを確認します。

Screenshot 2025-01-21 at 8.01.50.png

Dockerコンテナを削除:

$ make down

フロントエンドと同様に、MacBookのターミナルからコマンドを実行し、ローカル環境で正常に動作することを確認しました。

まとめ

ここまでお読みいただきありがとうございました。

今回、Makefile を活用して簡略化された作業手順を試し、「こんな便利な方法があるのか」と感動しました。

これをきっかけに、スムーズにMakefileや関連ファイルを記述できるよう、今後も学びを続けていきたいと思います。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?