ローカル開発環境の構築 [macOS編]

macOS上にローカル開発環境を構築していく方法について見ていきます。
0%
#01 ローカル開発環境を整えよう
2019年4月29日

Cloud9 については以下のレッスンを参考にしてみてください。

・AWS Cloud9入門 (全11回)
https://dotinstall.com/lessons/basic_c9_v2

#02 VirtualBoxをインストールしていこう
2019年11月8日

VirtualBox のインストールを進めていくと最後に以下のようなダイアログが表示される場合があります。

virtualbox-install-error-01.jpg

これを回避するには以下の手順にしたがってください。

  1. システム環境設定の「セキュリティとプライバシー」-「一般」を開く。
  2. その画面の下部にある「変更するにはカギをクリックします。」をクリックしてロックを解除する。
  3. ロックを解除したら「開発元"Oracle America, Inc."のシステムソフトウェアの読み込みがブロックされました。」の隣の許可ボタンをクリック。

ここまでできたら VirtualBox.pkg をダブルクリックして VirtualBox のインストールをもう一度実行してみてください。

最後に「インストールが完了しました。」と表示されれば大丈夫です。

2018年4月27日

以下のリンクからたどり、ご利用の OS にあわせてダウンロードしてみてください。

https://www.virtualbox.org/wiki/Download_Old_Builds

#03 Vagrantをインストールしていこう
2019年11月9日

Vagrant をインストールしようとすると以下のようなダイアログが表示されてインストールができない場合があります。

vagrant-install-error-01.jpg

このダイアログが表示されたら以下の手順にしたがってみてください。

  1. 「OK」を押してダイアログを閉じる。
  2. システム環境設定の「セキュリティとプライバシー」-「一般」を開く。
  3. 下のほうに「"vagrant.pkg"は開発元を確認できないため、使用がブロックされました。」とメッセージが表示されていたら「このまま開く」をクリック。
  4. もう一度ダイアログが表示されるので「開く」をクリック。

あとは動画通りにインストールを進めてください。

#04 ターミナルの設定をしていこう
2019年11月8日

macOS Catalina では zsh というプログラムが使用されているため、ターミナルの表示は以下のように「アカウント名@mbp ~ %」となります。

catalina-terminal-prompt.jpg

2019年1月22日

レッスンでは今後の説明を分かりやすくするためにコンピュータ名を変更していますが、変更は必須事項ではありません。

レッスン通りに実施しても変更できないケースがあるようですので、変更できない場合はそのまま進められて構いません。

#06 仮想マシンを立ち上げよう
2018年2月22日

今回「MyVagrant」というフォルダの中に「MyCentOS」というフォルダをさらに作成して、そのフォルダ上で vagrant コマンドを実行しています。

/Users/ユーザー名/MyVagrant/MyCentOS

というフォルダ階層になっています。

仮想マシンは vagrant init や vagrant up コマンドを実行したフォルダ上で作成されますので、もし別のフォルダ上で実行してしまうともう1つ別の仮想マシンが作成されてしまいます。

続きを表示する...

現在のフォルダを確認するには pwd というコマンドが利用できますので、今どこのフォルダにいるのか分からなくなった時には pwd コマンドで確認してみてください。

  • フォルダの階層構造を意識する
  • 仮想マシンはコマンドを実行したフォルダに作られる
  • 現在のフォルダを確認するには pwd コマンドを使う

このあたりのポイントを意識しておきましょう。

2017年12月20日

動画中で利用したコマンドは以下のとおりです。

なお、動画の最初に実施している vagrant-vbguest プラグインの導入はエラーを引き起こす可能性があるため、実施しないようにしてください。

# ホームディレクトリに移動
cd

# 今後複数の仮想マシンを作ることを想定して、それらをまとめるフォルダ(MyVagrant)を作る
mkdir MyVagrant

# MyVagrantに移動する
cd MyVagrant

# 仮想マシンを作るフォルダを作る(MyCentOS)
mkdir MyCentOS

# MyCentOSに移動する
cd MyCentOS

# 仮想マシン設定用のVagrantfileを作る
vagrant init bento/centos-6.8

# Vagrantfileを編集して仮想マシンのIPアドレスを192.168.33.10にする
sed -i '' -e 's/# config.vm.network "private_network", ip: "192.168.33.10"/config.vm.network "private_network", ip: "192.168.33.10"/' Vagrantfile

# 仮想マシンを起動する(少し時間かかります)
vagrant up

# 仮想マシンの状態を確認する
vagrant status
2019年9月11日

vagrant up を実行すると以下のようなエラーが出る場合があります。

Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'bento/centos-6.8' could not be found. Attempting to find and install...
    default: Box Provider: virtualbox
    default: Box Version: >= 0
The box 'bento/centos-6.8' could not be found or
could not be accessed in the remote catalog. If this is a private
box on HashiCorp's Vagrant Cloud, please verify you're logged in via
`vagrant login`. Also, please double-check the name. The expanded
URL and error message are shown below:

URL: ["https://vagrantcloud.com/bento/centos-6.8"]
Error: SSL certificate problem: self signed certificate in certificate chain

ウイルス対策ソフトのようなセキュリティソフトが影響している可能性がありますので、一旦セキュリティソフトをオフにしてから試してみてください。

2019年8月27日

vagrant up を実行すると以下のようなエラーが出る場合があります。

An error occurred while downloading the remote file. The error
message, if any, is reproduced below. Please fix this error and try
again.

OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 54

これはダウンロード一時ファイルが残っていることが原因の可能性がありますので、

# 最後のアスタリスクを忘れずに
rm ~/.vagrant.d/tmp/*

と実行してから vagrant up をやり直してみてください。

2018年2月22日

VBoxManage.exe がエラーとなる原因はいくつかあります。

主な原因として仮想マシンが正常に終了せず、異常停止している場合がありますので、まずは vagrant halt で仮想マシンを確実に終了させ、その後 vagrant up を試してみてください。

それでも解決しない場合は、一度 VirtualBox をアンインストールし、最新版の VirtualBox をインストールし直してみてください。

続きを表示する...

エラーメッセージの例 (1)
There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.

Command: ["startvm", "0205901d-9668-44e7-94d0-ee4d5bd9306a", "--type", "headless"]

Stderr: VBoxManage.exe: error: Interface ('VirtualBox Host-Only Ethernet Adapter #2') is not a Host-Only Adapter interface (VERR_INTERNAL_ERROR)
VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component ConsoleWrap, interface IConsole
エラーメッセージの例 (2)
Command: ["hostonlyif", "create"]

Stderr: 0%...
Progress state: E_FAIL
VBoxManage.exe: error: Failed to create the host-only adapter
VBoxManage.exe: error: Could not find Host Interface Networking driver! Please reinstall
VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component HostNetworkInterfaceWrap, interface IHostNetworkInte
rface
VBoxManage.exe: error: Context: "enum RTEXITCODE __cdecl handleCreate(struct HandlerArg *)" at line 94 of file VBoxManag
eHostonly.cpp
2018年2月22日

vagrant up の実行時に「Vagrant was unable to mount VirtualBox shared folders.」で始まるエラーメッセージが出る場合があります。このエラーが発生すると共有フォルダ機能が使えなくなりますが、レッスンでは利用していないためそのままでも問題ありません。

続きを表示する...

Vagrant was unable to mount VirtualBox shared folders. This is usually
because the filesystem "vboxsf" is not available. This filesystem is
made available via the VirtualBox Guest Additions and kernel module.
Please verify that these guest additions are properly installed in the
guest. This is not a bug in Vagrant and is usually caused by a faulty
Vagrant box. For context, the command attempted was:

mount -t vboxsf -o uid=500,gid=500 vagrant /vagrant

The error output from the command was:

/sbin/mount.vboxsf: mounting failed with the error: No such device
#07 仮想マシンの設定をしよう
2019年10月3日
動画中で利用したコマンドは以下のとおりです。
# OSを最新状態にアップデート(時間かかります)
sudo yum -y update

# スクリプトを入手するためのgitをインストール
sudo yum -y install git

# gitを使ってアプリケーション設定用のスクリプトをダウンロード
git clone https://github.com/dotinstallres/centos6.git

# centos6フォルダができるのでそちらに移動
cd centos6

# スクリプトを実行(時間かかります)
./run.sh

# もろもろの設定を反映
exec $SHELL -l
2019年10月3日

セットアップ終了後に何かコマンドを実行すると、

-bash: pyenv: コマンドが見つかりません

と表示されることがあります。

このメッセージが表示される場合はセットアップに失敗していますので、以下のコマンドでセットアップをやり直してみてください。

rm -rf ~/.pyenv
cd ~/centos6
./run.sh
exec $SHELL -l
#09 仮想マシンにアクセスしてみよう
2019年9月3日

ウイルス対策ソフトのようなセキュリティソフトをご利用の場合、Cyberduck の通信を遮断してしまう場合があります。

一旦セキュリティソフトをオフにしてから試してみてください。

#10 PHPの学習をしてみよう
2018年2月22日

#07 仮想マシンの設定をしよう | ローカル開発環境の構築 [macOS編] のレッスンで実行した「./run.sh」のコマンドが途中でエラーになった可能性があります。

cd ~/centos6
./run.sh

と実行し、実行が完了したら php -v と打って PHP のバージョン情報が表示されるか確認してみてください。

2019年10月3日

何かコマンドを実行すると、

-bash: pyenv: コマンドが見つかりません

と表示されることがあります。

このメッセージが表示される場合はセットアップに失敗していますので、以下のコマンドでセットアップをやり直してみてください。

rm -rf ~/.pyenv
cd ~/centos6
./run.sh
exec $SHELL -l
2018年9月11日

何らかの原因でテンポラリファイルの作成に失敗していることが原因です。

Cyberduck を完全に終了させてからもう一度やり直してみてください。

2017年1月15日

php -S 192.168.33.10:8000 の「-S」が小文字になっている可能性があります。

「-S」は大文字で入力するようにしてください。

「mkdir MyVagrant」を実行すると「File exists」というエラーが出るのですが PREMIUM - #06 仮想マシンを立ち上げよう
動画の通りに、 mkdir MyVagrant を実行したところ、 mkdir: MyVag...
vagrant init を実行すると「`Vagrantfile` already exists in this directory.」というメッセージが表示されるのですが PREMIUM - #06 仮想マシンを立ち上げよう
vagrant init bento/centos-6.8 のコマンドを打ち込むと、 `Vagrantfi...
CentOS 7にアップデートするにはどうしたらいいですか? PREMIUM - #06 仮想マシンを立ち上げよう
この動画の通りに進めて無事開発環境を構築することができました。ただ、後々調べてみたら現在のCentOSの最新版は7とい...
仮想マシンとはどのようなものなのでしょうか? PREMIUM - #06 仮想マシンを立ち上げよう
「仮想マシンを立ち上げる」と動画の中でありますが、どういうイメージなのでしょうか?パソコンの中にもう一つパソコンがある...
sudo をつけないと vagrant up がうまく実行されない PREMIUM - #06 仮想マシンを立ち上げよう
vagrant up とするとエラーが出力され、CentOSが立ち上がりません。しかし sudo vagrant ...
sudo: yum command not found というエラーが表示されるのですが PREMIUM - #07 仮想マシンの設定をしよう
レッスンの手順にしたがって、 sudo yum -y update を実行するとなぜか「sudo: ...
./run.sh では具体的に何がインストールされているのでしょうか? PREMIUM - #07 仮想マシンの設定をしよう
./run.sh を実行すると色々なプログラムがインストールされるようですが、結局どのソフトウェアがインストールされた...
「Couldn't resolve host ...」のエラーが表示されるのですが PREMIUM - #07 仮想マシンの設定をしよう
git や yum update、 ./run.sh のコマンドを実行すると、以下のような「Couldn't reso...
[vagrant@localhost ~]$ に移動するにはどうしたらいいですか? PREMIUM - #08 Cyberduckをインストールしよう
一つ前のレッスン では [vagrant@localhost centos6]$ で終わっていまし...
Cyberduck で接続ができません PREMIUM - #09 仮想マシンにアクセスしてみよう
Cyberduck での接続を試してみたのですが、 Network is unreachable (co...
Cyberduck が突然繋がらなくなりました PREMIUM - #09 仮想マシンにアクセスしてみよう
以前は接続できていた Cyberduck が突然繋がらなくなってしまいました。 以下のエラーメッセージが表示され...
192.168.33.10:8000 にアクセスすると「このページは動作していません」と表示されます PREMIUM - #10 PHPの学習をしてみよう
Webサーバーを立ち上げてブラウザで http://192.168.33.10:8000 へアクセスしたのですが、「こ...
Cyberduck でフォルダを作成したのにターミナルでは php_lessons に移動できません PREMIUM - #10 PHPの学習をしてみよう
仮想マシンにはログインができているのですが、 [vagrant@localhost ~]$ cd [vagra...
php_lessons に移動できません PREMIUM - #10 PHPの学習をしてみよう
cd php_lessons とすると「そのようなディレクトリはありません」と表示されてしまいます。 どうしたら良...
「-bash: ruby: コマンドが見つかりません」と表示されます PREMIUM - #12 学習を再開してみよう
ターミナルで、 ruby hello.rb とコマンドを入力したのですが、 -bash: r...
仮想マシンの状態が確認できないのはなぜですか? PREMIUM - #12 学習を再開してみよう
ターミナルを起動してから vagrant ssh とログインするまでの作業は出来たのですが、その時に vagra...
hostsファイルを編集したら Apache のテストページが表示されてしまうのですが PREMIUM - #14 hostsファイルを編集してみよう
hosts ファイルを編集後、以下のような Apache のテストページが表示されてしまいます。なぜでしょうか? ...