目次
開発環境の基本的な仕様
- OSはCentOS6
- 主な開発言語はPHP(PHP5.6系)
- フレームワークはFuelPHP1.7系
- ソースコードはGitHubで管理
- 環境構築の基本的な部分はchefとcomposerで設定済み
- 仮想環境はVagrant+VirtualBox
- エディタはAtom、シェルはPowerShell(Windows Terminal)を使用
CentOS6のサポートが終わってるとか、PHP5.6は古いとか、FuelPHPは1.8系が主流とか、いろいろと問題点はあるけれど、開発環境構築は本番環境のコピーが目的である以上その辺の不都合は諦めます。仕方ない。
全体の流れ
- Git for Windowsをインストール
- PHP for Windowsをインストール
- Composer for Windowsをインストール
- 各リポジトリへのアクセス権を付与
- リポジトリをローカルにクローン
- composer install
- Vagrantをインストール
- VirtualBoxインストール
- Vagrant プラグインのインストール
- /vagrant/ ディレクトリで vagrant up
1. Git for Windowsをインストール
ソースコードをcloneするのにWindows上でgitが動く必要があるので、入れておきます。特に考えることはないけど、気になるようなら以下のサイトを参考にしてください。いまさらGit for Windowsのインストール、GitHubに接続してみた。 – Qiita
2. PHP for Windowsをインストール
Composerを使用するのにPHPが必要。PHP7.4とか入れたいところだけどそういうわけにはいかないので、アーカイブからダウンロードして入れておく。windows.php.net – /downloads/releases/archives/
PHPのパスを通す
これを忘れるとシェルで動かないので、忘れずに。「システム環境変数」の「Path」にPHPを配置したフォルダのパスを追加しておきます。3. Composer for Windowsをインストール
シェルでComposerを動かすのに必要なので入れましょう。以下を参考に。Windows10にComposerをインストールする手順 | mebee
4. 各リポジトリへのアクセス権を付与
GitHubで良いようにやりましょう。5. リポジトリをローカルにクローン
適当なディレクトリ(フォルダ)を作成してクローンしておきます。コマンド例
$ git clone https://github.com/nobodyplace/sample.git
初回起動時にGitHubとの連携が必要になるので、実行します。
6. composer install
クローンしてきたリポジトリにcomposerが設定されているので、以下のコマンドを実行します。$ php composer.phar config --global github-oauth.github.com アクセストークン
$ php composer.phar install
アクセストークンはGitHubで取得しておいてください。
GitHub「Personal access tokens」の設定方法 – Qiita
7. Vagrantをインストール
公式サイトからダウンロードしてインストール。8. VirtualBoxインストール
公式サイトからダウンロードしてインストール。9. Vagrant プラグインのインストール
以下のコマンドでプラグインをインストール$ vagrant plugin install vagrant-hosts
$ vagrant plugin install vagrant-hostsupdater
$ vagrant plugin install vagrant-omnibus
$ vagrant plugin install vagrant-vbguest
10. /vagrant/ ディレクトリで vagrant up
ここまで終わればあとはVagrantを立ち上げるだけ……なんですが、ここから調整が必要になります。vmboxが見つからないエラー
「centos/6」は既にdeprecatedで削除されてしまっているようなので、Vagrantfileを次のように書き換える必要がありました。config.vm.box = "bento/centos-6"
「Kernel headers not found」エラー
本当はchefに追加すべきだろうと思いますが、yumで対応してしまいました。そんなことするからまた次の環境構築で誰かが苦労するんだよな……vagrant ssh
$ sudo yum -y update kernel
$ sudo yum -y install kernel-devel kernel-headers dkms gcc gcc-c++
$ sudo /etc/init.d/vboxadd setup
yum-dump Repository Error: Cannot find a valid baseurl for repo: centos-sclo-rh
どうやら2020年11月30日でCentOS6のサポートが切れ、様々なURLが失効しているらしい。ここを参考に設定を行います。CentOS6サポート終了 yumでパッケージを更新するには at softelメモ
No candidate version available for httpd24
リポジトリが更新された結果、インストール可能なApacheは2.2になりましたが、必要なのは2.4。レポジトリを追加する必要があります。これもchefを更新すべきだと思いますが、リポジトリをダウンロードして入れてしまいました。推奨はしません。$ wget https://repos.fedorapeople.org/repos/jkaluza/httpd24/epel-httpd24.repo
$ sudo mv epel-httpd24.repo /etc/yum.repos.d/
環境構築完了
これぐらいでようやくcomposerが通り、正常にVagrantが起動出来ました。良かった。僕は別にMac信者ではありませんが、プログラムが動くサーバが基本的にLinuxベースである以上開発環境もそれに近い環境であるべきだと思いますし、そういう意味でMacで環境構築、開発を行うのはほんとスゲー楽だよなと思っています。資金に余裕が出来たら早めにMacを買いたいですね。M1チップのアップデートが年内にあるという話ですけど、待てないかも。