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

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

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

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

#02 VirtualBoxをインストールしていこう
2018年4月27日

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

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

#03 Vagrantをインストールしていこう
2017年6月30日

現在 Vagrant のインストーラーは 32 bit 用と 64 bit 用に分かれています。

ご自身の Windows がどちらのバージョンなのか分からない場合は、

をご確認の上、ご自身の Windows に合ったインストーラーをダウンロードするようにしてください。

#05 仮想マシンを立ち上げよう
2017年12月20日

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

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

# 今後複数の仮想マシンを作ることを想定して、それらをまとめるフォルダ(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にする
(動画をご覧ください)

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

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

Windows で日本語のユーザー名を使用している場合、以下のようなエラーで vagrant コマンドが失敗する場合があります。

  • Windows-31J and UTF-8 (Encoding::CompatibilityError) ... というエラー
  • Vagrant failed to initialize at a very early stage ... というエラー

続きを表示する...

Windows-31J and UTF-8 (Encoding::CompatibilityError) ... というエラー

エラーメッセージ
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'bento/centos-6.8'...
C:/HashiCorp/Vagrant/embedded/gems/gems/childprocess-0.6.3/lib/childprocess/windows/process_builder.rb:43:in `join': incompatible character encodings: Windows-31J and UTF-8 (Encoding::CompatibilityError)
...
対処法

これは Windows のユーザー名が日本語の場合によく発生するエラーとなります。

まずは以下の記事を参考に Windows の環境変数の設定をおこなってみてください。

» 参考: Windowsの日本語名ユーザーにてvagrantを起動する方法 - Qiita

具体的には、

  • Cドライブの直下に vagrant_home のような英語名のフォルダを作成します。
  • ユーザー環境変数に VAGRANT_HOME を追加し、その値を C:\vagrant_home と設定します。(バックスラッシュは Windows では円記号となります。キーボード右上の円記号を打ち込むか、\ をコピーしてください。)
  • パソコンを再起動します。

次に VirtualBox を起動し、「ファイル」-「環境設定」-「一般」にある「デフォルトの仮想マシンフォルダー」という項目を確認してみてください。

ここに日本語のユーザー名を含むパスが指定されていたら、Cドライブ直下に新しくアルファベットの名前のフォルダを作成し、そのフォルダのパスを指定するようにしてください。

» 参考: http://sutara79.hatenablog.com/entry/2015/06/28/104150

ここまで設定ができたら再度 PowerShell にて vagrant up を実施してみてください。

Vagrant failed to initialize at a very early stage ... というエラーの場合

エラーメッセージ
Vagrant failed to initialize at a very early stage:

The plugins failed to load properly. The error message given is shown below.

cannot load such file -- vagrant-vbguest
対処法

PowerShell で cd C:\ として C ドライブ直下に移動し、そこに
MyVagrant フォルダを作成するようにしてみてください。

それでも解決しない場合は、

vagrant plugin uninstall vagrant-vbguest

としてプラグインをアンインストールした上で、

vagrant init bento/centos-6.8

を実行してください。(vagrant-vbguest プラグインは必須ではありません)

2018年6月20日

vagrant up の実行時に「Timed out while waiting for the machine to boot.」で始まるエラーメッセージが表示された場合、ご利用のパソコンにて仮想化支援機能が無効になっていることが原因の可能性があります。

続きを表示する...

Timed out while waiting for the machine to boot. This means that
Vagrant was unable to communicate with the guest machine within
the configured ("config.vm.boot_timeout" value) time period.

If you look above, you should be able to see the error(s) that
Vagrant had when attempting to connect to the machine. These errors
are usually good hints as to what may be wrong.

If you're using a custom box, make sure that networking is properly
working and you're able to connect to the machine. It is a common
problem that networking isn't setup properly in these boxes.
Verify that authentication configurations are also setup properly,
as well.

If the box appears to be booting properly, you may want to increase
the timeout ("config.vm.boot_timeout") value.

この場合、以下のサイトなどを参考に BIOS の設定を確認してみてください。

https://teratail.com/questions/28619
http://qiita.com/amateurgrammer/items/21e4456b8318db877f5b

なお、上記サイト等にあるように BIOS の設定で仮想化支援機能を有効にしても、ウィルス対策ソフトによってはその設定を無効にしてしまう場合もあります。

Avast の場合
http://hatena.fut573.com/entry/20160218/1455792335

その場合は、ウィルス対策ソフトの設定で仮想化支援機能に関する項目を無効にしていただくか、ウィルス対策ソフト自体を一時的に終了させてから vagrant up を実施してみてください。

2019年10月15日

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
2019年10月15日

vagrant up の実行時にエラーが発生し、そのエラーメッセージ内に「VERR_INTNET_FLT_IF_NOT_FOUND」の文字列が表示されているときは、以下の手順を試してみてください。

  • Windows の設定から「ネットワークと共有センター」を開く。
  • アダプターの設定の変更を開く。
  • 「VirtualBox Host Only Ethernet ...」の記載のあるアダプタのプロパティを開く。
  • 「VirtualBox NDIS6 Bridged Networking Driver」のチェックを外して保存。
  • アダプタの右クリックメニューからアダプタを「無効」にした後「有効」に戻す。

という手順になります。

「VirtualBox Host Only Ethernet ...」のアダプタは複数存在する場合もありますので、すべてのアダプタに対して上記の手順を実施してみてください。

実施できたらパソコンを再起動します。(再起動せずに上手くいく場合もあります。)

再起動できたら PowerShell を起動し、

cd ~/
cd MyVagrant
cd MyCentOS
vagrant up

と実行してみてください。

参考: https://stackoverflow.com/questions/33725779/failed-to-open-create-the-internal-network-vagrant-on-windows10/33733454#33733454

2018年3月15日

Windows 7 では vagrant up を実行しても何も表示されず止まったようになるケースが確認されています。

そうなった場合は Ctrl + c でコマンドを中断し、

  • VirtualBox はバージョン 5.1.30
  • Vagrant はバージョン 1.9.6

をインストールしてから再度 vagrant up を試してみてください。

Vagrant の古いバージョンは https://releases.hashicorp.com/vagrant/ から、VirtualBox の古いバージョンは https://www.virtualbox.org/wiki/Download_Old_Builds からダウンロードできます。

2019年1月21日

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年6月19日

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

C:\Users\ユーザー名\MyVagrant\MyCentOS

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

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

続きを表示する...

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

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

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

2019年10月15日

PowerShell では、コマンドを入力するカーソルの左側に表示されている、

PS C:¥Users¥taguchi>

が、現在コマンドを実行しているディレクトリ(フォルダ)の位置を示しています。

「PS C:¥Users¥taguchi>」の場合は「Cドライブにある Users ディレクトリの中の taguchi ディレクトリにいる」という意味ですので覚えておきましょう。(Users ディレクトリは、エクスプローラーでは「ユーザー」と表記されているフォルダを指します。)

動画中で cd コマンドを実行してディレクトリを移動すると、この文字列が変化していることが確認できるかと思います。

#06 PuTTYをインストールしていこう
2019年9月12日

2019年9月現在、PuTTYの公式サイトがリニューアルされたようです。PuTTYをダウンロードするには
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
に移動したあとに、お使いのOSの種類に応じて以下のどちらかをダウンロードしてインストールしてください。

スクリーンショット 2019-09-12 8.58.57.png

#07 仮想マシンにログインしてみよう
2019年7月15日

PuTTYで「Network error:Connection timed out」というエラーが出る場合は、以下の内容を確認してみてください。

1. VBox.log の内容を確認しましょう

最も多いケースとして仮想化支援機能が無効になっているケースがあります。まずは以下のフォルダにある VBox.log という名前のファイルを探し、メモ帳や Atom エディタなどで開いてみてください。

C: > ユーザー > ユーザー名 > VirualBox VMs > MyCentOS_で始まる仮想マシン名 > Logs > VBox.log

※ 仮想マシンが複数存在している場合は間違えないようにフォルダや VBox.log の更新日時を手がかりにして特定しましょう。

VBox.log を開いたら次にファイル内検索で「VT-x」もしくは「AMD-V」という文字列を検索してみてください。もしファイル内に、

  • VT-x is disabled in the BIOS for all CPU modes

もしくは、

  • AMD-V is disabled in the BIOS

と出力されていた場合、仮想化支援機能が無効であることが原因で確定です。

※ なお、「VT-x w/ nested paging and unrestricted guest execution hw support」というメッセージが出ている場合は問題ありません。

仮想化支援機構(VT-x/AMD-V)を有効化できません | Futurismo」などを参考に BIOS の設定を変更してみてください。変更完了したら BIOS の設定を保存して終了し、パソコンを再起動します。

再び PowerShell を起動して、

cd ~/
cd MyVagrant
cd MyCentOS
vagrant reload

と実行後、PuTTY での接続を試してみてください。

2. 仮想マシンを再起動してみましょう

学習途中でパソコンをシャットダウンすると仮想マシンが停止してしまうことがあります。PowerShell を起動して、

cd ~/
cd MyVagrant
cd MyCentOS
vagrant reload

を実行し、PuTTY での接続を試してみてください。なお、 vagrant reload の実行時に mount 関連のエラーが出る場合がありますが学習には支障ありません。

※ mount 関連以外のエラーが出た場合はエラーメッセージで検索してみてください。

3. 意図せず複数の仮想マシンが作られていないか確認しましょう

何度かレッスンを最初からやり直すと複数の仮想マシンを作ってしまう場合があります。

vagrant global-status というコマンドを PowerShell で実行してみてください。

vagrant-global-status.png

この例の場合は ID が「e55f551」と「81714d0」の仮想マシンが 2 台起動しています。不要な仮想マシンを vagrant halt 仮想マシンのID というコマンドで停止してみてください。下の仮想マシンを停止したければ、vagrant halt 81714d0 を実行すればOKです。

4. PuTTY に設定した IP アドレスを確認しましょう

レッスンの通り、きちんと「192.168.33.10」と入力できているか確認してください。Vagrantfile で別の IP アドレスを指定した場合は、その IP アドレスと一致しているかどうか確認してください。

5. Vagrantfile の編集を忘れていないか確認しましょう

http://dotinstall.com/lessons/basic_localdev_win_v2/38605 のレッスンにて Vagrantfile を編集し、IP アドレスを有効にする手順があります。

正しく編集して保存できているか確認してみてください。

なお、その手順を忘れて vagrant up を先に実行してしまった場合は、必ず編集後に vagrant reload で仮想マシンを再起動するようにしてください。

cd ~/
cd MyVagrant
cd MyCentOS
vagrant reload

6. セキュリティソフトが通信を遮断していないか確認しましょう

ウィルス対策ソフトなどのセキュリティソフトがアプリケーションの通信を遮断し、仮想マシンに接続できない場合があります。

心当たりがある場合は、セキュリティソフトの設定で通信を許可するか、セキュリティソフトをオフにしてから試してみてください。

7. それでも原因が分からない場合

プレミアム会員向けに試験提供している質問機能をご利用ください。ご質問の際にはご自身で実施された作業内容に加えて、以下のファイルやスクリーンショットを添付してください。

  • MyCentOS フォルダにある Vagrantfile ファイル
  • この補足情報の最初に説明のある VBox.log ファイル
  • 以下のコマンドを実行した PowerShell のスクリーンショット
    cd ~/ cd MyVagrant cd MyCentOS vagrant reload
  • VirtualBox を起動した画面のスクリーンショット

なお、スクリーンショットの撮り方が分からない場合は以下のヘルプを参考にしてください。

#08 仮想マシンの設定をしよう
2018年7月22日

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

# 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
2018年7月22日

ウィルス対策ソフトのようなセキュリティソフトが原因で、仮想マシンから外部ネットワークに接続できない場合があります。

  • yum update を実行すると Couldn't resolve host ... というエラーが大量に表示される
  • git clone を実行すると fatal: HTTP request failed というエラーになる

導入されている場合は、一度セキュリティソフトをオフにしてから試してみてください。

2019年10月3日

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

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

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

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

rm -rf ~/.pyenv
cd ~/centos6
./run.sh
exec $SHELL -l
2019年10月16日

何らかの原因で DNS の名前解決が上手くできない場合、「Couldn't resolve host ...」というエラーメッセージが表示されます。

一度 PowerShell にて仮想マシンを再起動すると解決する場合がありますので、

cd ~/
cd MyVagrant
cd MyCentOS

で MyCentOS フォルダに移動してから、

vagrant reload

を実行してください。

新たに PuTTY を起動してログインし直してから、構築作業を続けてみてください。

それでも解決できない場合は PuTTY で仮想マシンにログインした状態で、

sudo sed -i -e "s/^nameserver.*$/nameserver 8.8.8.8/" /etc/resolv.conf

と実行してからもう一度 ./run.sh のコマンドを試してみてください。

なお、この設定は仮想マシンを再起動すると元に戻ってしまいます。仮想マシンを再起動後に同じエラーが発生した場合は、再度上記コマンドを実行してみてください。

#09 Cyberduckをインストールしよう
2016年12月6日
このレッスンではテキストエディタにAtomを使う前提で進めています。まだインストールしていない人は https://atom.io/ からダウンロードしておくと良いでしょう。
2018年5月18日

atom フォルダに atom.exe がある場合

最新版の Atom では AppData → Local → atom とたどると atom.exe というファイルがあります。

atom.cmd の代わりにこの atom.exe を指定しても大丈夫ですので、上手く動作しない場合はお試しください。

atom フォルダの中に bin フォルダが見つからない場合

動画の通りに atom フォルダを開いても、その中に bin フォルダが存在しない場合があるようです。

その場合は「app-」で始まるフォルダから resources → cli とたどると atom.cmd というファイルがありますので、そちらをCyberduckの環境設定にて指定してみてください。

その後、開きたいファイルを右クリック → エディタで編集 → デフォルト と選択すれば Atom で開くことができます。(ダブルクリックでは開かない場合がありますのでご注意ください。)

#10 仮想マシンにアクセスしてみよう
2019年2月17日

2019年2月17日現在、Cyberduck 6.9.3 で接続ボタンが反応しない不具合が報告されています。

一度 Cyberduck をアンインストールして、 https://cyberduck.io/changelog/ にあるバージョン 6.9.0 をダウンロードしてインストールしてみてください。

cyberduck690.jpg

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

#08 仮想マシンの設定をしよう | ローカル開発環境の構築 [Windows編] のレッスンで実行した「./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年3月1日
一度 Cyberduck を終了し、もう一度起動してやり直してみましょう。
2017年6月7日
Edge ブラウザから 192.168.33.10:8000 の URL を開くには高度な設定が必要となり、すぐにはページを表示することができません。

Chrome など Edge 以外のブラウザを利用するようにしましょう。
2017年1月15日

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

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

#14 hostsファイルを編集してみよう
2018年6月16日

ビルトインサーバーを起動していますか?

このレッスンでは、まず #11 PHPの学習をしてみよう と同じように PHP のビルトインサーバーを起動していなければなりません。起動していない場合は #11 の動画をもう一度ご覧になってみてください。

Apache のテストページが表示されたら

もし Apache のテストページが表示されたのなら、 URL の後ろに「:8000」をつけ忘れています。ビルトインサーバーを起動した状態で http://dev.dotinstall.com:8000 にアクセスしてみてください。

Windows7 に Vagrant をインストールしたいのですが、どの拡張子のものを使えばいいですか? PREMIUM - #03 Vagrantをインストールしていこう
Windows7(64bit) を使っています。 Vagrant のバージョン 1.9.6 をインストールしよう...
vagrant upで「OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054」のエラーが発生するのですが PREMIUM - #05 仮想マシンを立ち上げよう
vagrant upを実行すると下記のエラーが発生して、仮想マシンが立ち上がりません。 仮想マシンを動かすにはどのよ...
「No usable default provider could be found for your system.」というエラーが出るのですが PREMIUM - #05 仮想マシンを立ち上げよう
vagrant up を実行すると、 No usable default provider could be ...
「mkdir MyVagrant」を実行すると「項目は既に存在します」と出てうまくいきません PREMIUM - #05 仮想マシンを立ち上げよう
動画の通りに、 mkdir MyVagrant を実行したところ、 mkdir : 指定され...
vagrant up を実行すると PowerShell の %PATH% が見つからないと表示されます PREMIUM - #05 仮想マシンを立ち上げよう
vagrant up を実行しようとすると次のようなメッセージが表示され、実行できません。 The execu...
CentOS 7 系を利用できないのはなぜですか? PREMIUM - #05 仮想マシンを立ち上げよう
bento の仮想マシンの中には bento/centos-7.3 なども公開されているようですが、どうして利用で...
vagrant up コマンドを実行したら「A Vagrant environment or target machine is required to run this command. ...」というエラーが出ます PREMIUM - #05 仮想マシンを立ち上げよう
vagrant up コマンドを実行したところ、次のようなエラーが出ました。解決方法を教えてください。 A ...
Vagrantfile は何で開けば良いでしょうか? PREMIUM - #05 仮想マシンを立ち上げよう
Vagrantfile を開こうとすると「このファイルを開く方法を選んでください」と出てきてしまい、どれで開けばいいの...
PuTTY Key Generatorがインストールされてしまったのですが正しいのでしょうか? PREMIUM - #07 仮想マシンにログインしてみよう
PuTTYを公式サイトからダウンロードし、インストールを行ったのですが、インストールされたのはPuTTYではなくPuT...
仮想マシンとパソコンの時刻とがずれてしまうのですがどうしたらいいですか? PREMIUM - #07 仮想マシンにログインしてみよう
仮想マシンとパソコンの時刻がずれてしまいます...。仮想マシンの時刻を直すにはどうしたらいいですか?
./run.sh では具体的に何がインストールされているのでしょうか? PREMIUM - #08 仮想マシンの設定をしよう
./run.sh を実行すると色々なプログラムがインストールされるようですが、結局どのソフトウェアがインストールされた...
「sudo: yum: command not found」と表示されるのですが PREMIUM - #08 仮想マシンの設定をしよう
sudo yum -y update を実行しようとすると sudo: yum: command not fou...
Atom の隠しフォルダが見当たりません PREMIUM - #09 Cyberduckをインストールしよう
外部エディタの設定を行いたいですが Atom のフォルダが見つかりません。 動画と同じように PC の C ドラ...
「接続に失敗しました」というエラーで仮想マシンに接続できません PREMIUM - #10 仮想マシンにアクセスしてみよう
0:44のステップが終わったら、「接続に失敗しました」とのエラーメッセージがでます。何故でしょうか...。 ...
VS Code で index.php を開くと右下にエラーが出るようです PREMIUM - #11 PHPの学習をしてみよう
VS Code を使用しているのですが、 index.php を開くと、 Cannot validate...
ブラウザを立ち上げたら、「このサイトにアクセスできません」と表示されてしまいます PREMIUM - #11 PHPの学習をしてみよう
ブラウザを立ち上げてもエラーになってしまいます。何故でしょうか。 ↑ 立ち上げたときのログです。 ...
「-bash: ruby: コマンドが見つかりません」というエラーが出るのですが PREMIUM - #13 学習を再開してみよう
Ruby の実行をしようとすると、 [vagrant@localhost ~]$ cd ruby_lesson...