【Vagrant + VirtualBox】楽にWindows上に開発環境を作る3Last(SSHで接続、仮想マシン設定)

Macでの環境構築はこちら

こちら(仮想マシン起動)こちら(環境構築)の記事を参考に作っていく

1.vagrantとvirtual boxをインストール

2.vagrantプラグインをインストール

3.仮想マシンのBoxを選ぶ

4.仮想マシンを起動

5.SSHで接続

6.仮想マシン設定

前回からの続き

今回でラストです!

5.SSHで接続

仮想マシンに接続してみる

まずは仮想マシンの設定を確認する

C:\Users\r.sawai\Desktop\develop\vagrant\centos7>vagrant ssh-config
Host default
HostName 127.0.0.1
User vagrant
Port 2222
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
PasswordAuthentication no
IdentityFile C:/Users/r.sawai/Desktop/develop/vagrant/centos7/.vagrant/machine
s/default/virtualbox/private_key
IdentitiesOnly yes
LogLevel FATAL

windowsのsshクライアントソフトteratermを起動して

ホストのIPを192.68.33.10に設定

C:\Users\r.sawai\Desktop\develop\vagrant\centos7>vagrant ssh-config –host 192.168.33.10
Host 192.168.33.10
HostName 127.0.0.1
User vagrant
Port 2222
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
PasswordAuthentication no
IdentityFile C:/Users/r.sawai/Desktop/develop/vagrant/centos7/.vagrant/machine
s/default/virtualbox/private_key
IdentitiesOnly yes
LogLevel FATAL

teratermを使う際にマクロを作っておくと便利です

こちらの記事を参考にやってみます

適当なディレクトリにconnect.ttlというファイルを作成

関連付けるプログラムにttpmacro.exeを指定しておくとダブルクリックで起動できる(こちら参照)

connect.ttlの内容を以下の内容で保存

host = ‘192.168.33.10’
user = ‘vagrant’
;keyfile = ‘c:/vagrant/insecure_private_key’
keyfile = ‘C:\Users\r.sawai\Desktop\develop\vagrant\centos7\.vagrant\machines\default\virtualbox\private_key’

msg = host
strconcat msg ‘:22 /ssh /auth=publickey /user=’
strconcat msg user
strconcat msg ‘ /keyfile=”‘
strconcat msg keyfile
strconcat msg ‘”‘

connect msg

keyfileは仮想マシンを作成したときにできたprivate_keyを指定

コメントアウトは「;」か複数行なら/**/で囲うことができる

vagrant ssh-configによるとポートは2222なんだけどなぜかそれだと接続拒否られた

22だとうまくいったんだけどよくわからない・・・

と思ったらvagrant upしたときのログに

==> default: Forwarding ports…
default: 22 (guest) => 2222 (host) (adapter 1)

と出てるので22でいいっぽい

これで簡単に接続できるようになった

ショートカットとか作っとくと楽ですね

6.仮想マシン設定

vagrantマシンのシステム時刻が初期状態だとUTCになっている場合がある

必要なら修正しよう

まずはどうなっているか確認

[root@localhost vagrant]# date
Mon Oct 16 10:15:54 UTC 2017

UTCになっているので直す

まずは今の設定を削除

[root@localhost vagrant]# rm /etc/localtime
rm: remove symbolic link ‘/etc/localtime’? y

日本時間に設定

[root@localhost vagrant]# sudo ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

確認
[root@localhost vagrant]# date
Mon Oct 16 19:20:13 JST 2017

LAMPをインストール

こちらの記事を参考

rootユーザになる

インストールしていくのに毎回sudoをつけるのは面倒なのでrootになっておく

sudo -i

suでもおk

Apacheインストール

yum -y install httpd

バージョン確認

httpd -v

Apache起動

chkconfig httpd on

or

systemctl start httpd

vm仮想マシン起動時に自動でapacheを起動してくれるよう設定

systemctl enable httpd.service

設定確認

systemctl listunitfiles | grep httpd

enableになっていればOK

あとVagrantでCSSの更新が反映されない場合の対処法として

/etc/httpd/conf/httpd.conf

で以下部分を変更

#
# EnableMMAP and EnableSendfile: On systems that support it,
# memory-mapping or the sendfile syscall may be used to deliver
# files. This usually improves server performance, but must
# be turned off when serving from networked-mounted
# filesystems or if support for these functions is otherwise
# broken on your system.
# Defaults if commented: EnableMMAP On, EnableSendfile Off
#
#EnableMMAP off
#EnableSendfile on
EnableSendfile off

EnableSendfile off

にして保存して

apatchectl restartで再起動で設定が反映される

MySQL(MySQL Community Server)インストール

CentOS7にはmariadbが最初からはいってるので削除

yum -y remove mariadb-libs.x86_64

リポジトリ追加

yum -y install http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

MySQLインストール

yum -y install mysql-community-server

バージョン確認

mysqld --version

mysql起動

systemctl start mysqld

vm仮想マシン起動時に自動でmysqlを起動してくれるよう設定

systemctl enable mysqld.service

設定確認

systemctl listunitfiles | grep mysqld

enableになっていればOK

PHPインストール

リポジトリ追加

yum -y install epel-release
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

PHPインストール

yum -y install --enablerepo=remi,epel,remi-php70 php php-devel php-intl php-mbstring php-pdo php-gd php-mysqlnd

バージョン確認

php -v

以上でLAMP環境の構築完了
ブラウザから http://192.168.33.10/ にアクセスするとApacheのテストページが表示される

これでとりあえずLAMP環境は構築できた

Gitインストール

yumを使ってインストール

$yum install git

最新版のGitがほしいならyumを使わずインストールしよう

次回おまけ編としてドキュメントルート以外の場所においたLaravelプロジェクトを動かすところまでやります

これ以降はこちらの記事を参考にして開発環境を設定していく

またchefというツールを入れようとしてみましたがダメでしたので

こちらの過程もいちおうここに記録しておきます

以上でとりあえず最低限の環境構築は終わりです

お疲れ様でした!

Laravelプロジェクトを動かすところはこちら

シェアする

  • このエントリーをはてなブックマークに追加

フォローする