[メモ] php開発環境 (Windows10, Vagrant, Docker, VSCode)
概要
Vagrantにて、VirtualBoxで centos/7 を起動して、Docker環境をインストール。
php(php:7.3-apache-stretchベース) + mysql(mariadb:10) + phpmyadminの環境を入れる。
Visual Studio Codeで、デバッグする。
環境
- Windows 10 64bit
手順
-
ホスト側の環境のセットアップ
git、Vagrant、VirtualBox、phpとvscodeをインストール
Power Shellを管理者で開いて、以下を実行
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
cinst -y git vagrant virtualbox php vscode
-
ゲスト側の環境のセットアップ
Git Bash (コマンドライン) を開いて、以下実行。
(ネットワークインターフェースが複数あると、vagrant up
時に、どれを使うか聞かれる。番号入れて、[Enter]
)
mkdir -p /c/Vagrant
cd /c/Vagrant
git clone https://github.com/mt08xx/phpdev2019.git
cd phpdev2019
vagrant plugin install vagrant-vbguest
vagrant up && vagrant halt
# しばらく待つ: 15分~ (PC,ネット環境によりけり)
-
php-apache, mysql, phpmyadminのコンテナ起動。
以下、実行
cd /c/Vagrant/phpdev2019
vagrant up
vagrant ssh
cp -rv /vagrant/wwwphp /home/vagrant
cd wwwphp
rm -rfv www
ln -sf /vagrant/wwwphp/www .
docker-compose up -d
-
ブラウザでアクセス
ゲスト内で、ip addr show eth1
にて、IPアドレスを取得して、ホスト側(Windows)のブラウザを開いて、アドレスバーに、IPを入れる (phpinfo()が表示されるハズ)
-
http://xxx.yyy.zzz.www で wwwphp/www 内の index.phpを表示
-
http://xxx.yyy.zzz.www:8081 (8081番ポート)で phpmyadminが起動する
実行例(192.168.1.123がIP)
[vagrant@localhost wwwphp]$ ip -4 addr show eth1
4: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 192.168.1.123/24 brd 192.168.1.255 scope global noprefixroute dynamic eth1
valid_lft 685178sec preferred_lft 685178sec
[vagrant@localhost wwwphp]$
-
VSCodeの整備
- VSCodeを起動
エクスプローラーで、C:\Vagrant\phpdev2019\wwwphp\www
を開いて、右クリック。
Open with Code
(VSCodeでフォルダを開く)
- Extensionをインストールする
Ctrl + Shift + X
を押して、以下のExtensionを探して、インストール
(PHP IntelliSenseとphpfmtは、ホストにphpの実行ファイルが必要らしい)
- PHP Debug
- PHP IntelliSense
- phpfmt (phpのファイルを開いたら、[F1]をおして、
phpfmt+[Enter]
すると、整形される)
- HTMLHint
- IntelliSense for CSS class names in HTML
-
index.php
を開く(Ctrl + Shift + E
で、VSCodeのExplorerを開いて、クリック)
-
phpinfo();
の行に、ブレークポイントを張る(行番号の左側のほうをクリック)
- デバッグ開始: メニューの Debug > Start Debugging または、[F5] を押す。
- ブラウザで、該当のページをひらく。 http://xxx.yyy.zzz.www
- 該当箇所で、止まってるはず。あとは、ステップ実行したりして、楽しむ。
その他
- ゲストは、2GBとかでもだいじょぶそう。。
Vagrantfile
の VM_MEMORY=4096
=> VM_MEMORY=2048
- ネットワークがいちいち聞かれて面倒なら
config.vm.network "public_network", bridge: ""Realtek USB GbE Family Controller"
のようにしてしまうとよい。
-
ホスト側の環境のセットアップ
git、Vagrant、VirtualBox、phpとvscodeをインストールPower Shellを管理者で開いて、以下を実行
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1')) cinst -y git vagrant virtualbox php vscode
-
ゲスト側の環境のセットアップ
Git Bash (コマンドライン) を開いて、以下実行。
(ネットワークインターフェースが複数あると、vagrant up
時に、どれを使うか聞かれる。番号入れて、[Enter]
)mkdir -p /c/Vagrant cd /c/Vagrant git clone https://github.com/mt08xx/phpdev2019.git cd phpdev2019 vagrant plugin install vagrant-vbguest vagrant up && vagrant halt # しばらく待つ: 15分~ (PC,ネット環境によりけり)
-
php-apache, mysql, phpmyadminのコンテナ起動。
以下、実行cd /c/Vagrant/phpdev2019 vagrant up vagrant ssh cp -rv /vagrant/wwwphp /home/vagrant cd wwwphp rm -rfv www ln -sf /vagrant/wwwphp/www . docker-compose up -d
-
ブラウザでアクセス
ゲスト内で、ip addr show eth1
にて、IPアドレスを取得して、ホスト側(Windows)のブラウザを開いて、アドレスバーに、IPを入れる (phpinfo()が表示されるハズ)- http://xxx.yyy.zzz.www で wwwphp/www 内の index.phpを表示
- http://xxx.yyy.zzz.www:8081 (8081番ポート)で phpmyadminが起動する
実行例(192.168.1.123がIP)[vagrant@localhost wwwphp]$ ip -4 addr show eth1 4: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 inet 192.168.1.123/24 brd 192.168.1.255 scope global noprefixroute dynamic eth1 valid_lft 685178sec preferred_lft 685178sec [vagrant@localhost wwwphp]$
-
VSCodeの整備
- VSCodeを起動
エクスプローラーで、C:\Vagrant\phpdev2019\wwwphp\www
を開いて、右クリック。Open with Code
(VSCodeでフォルダを開く) - Extensionをインストールする
Ctrl + Shift + X
を押して、以下のExtensionを探して、インストール
(PHP IntelliSenseとphpfmtは、ホストにphpの実行ファイルが必要らしい)- PHP Debug
- PHP IntelliSense
- phpfmt (phpのファイルを開いたら、[F1]をおして、
phpfmt+[Enter]
すると、整形される) - HTMLHint
- IntelliSense for CSS class names in HTML
-
index.php
を開く(Ctrl + Shift + E
で、VSCodeのExplorerを開いて、クリック) -
phpinfo();
の行に、ブレークポイントを張る(行番号の左側のほうをクリック) - デバッグ開始: メニューの Debug > Start Debugging または、[F5] を押す。
- ブラウザで、該当のページをひらく。 http://xxx.yyy.zzz.www
- 該当箇所で、止まってるはず。あとは、ステップ実行したりして、楽しむ。
- VSCodeを起動
その他
- ゲストは、2GBとかでもだいじょぶそう。。
Vagrantfile
の VM_MEMORY=4096
=> VM_MEMORY=2048
- ネットワークがいちいち聞かれて面倒なら
config.vm.network "public_network", bridge: ""Realtek USB GbE Family Controller"
のようにしてしまうとよい。
Vagrantfile
の VM_MEMORY=4096
=> VM_MEMORY=2048
config.vm.network "public_network", bridge: ""Realtek USB GbE Family Controller"
のようにしてしまうとよい。
Author And Source
この問題について([メモ] php開発環境 (Windows10, Vagrant, Docker, VSCode)), 我々は、より多くの情報をここで見つけました https://qiita.com/mt08/items/923ab7fab24852dc1d0d著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .