【Vagrant】EC-CUBE 3 環境を Mac で構築した時の共有フォルダ mount_options 設定ポイント

スポンサードリンク

EC-CUBE 3 を Vagrant にインストールするとき、次の問題に遭遇しました><。

  • インストールシェルファイルが実行できない。
  • インストールできても、パーミッションの問題で、どんなページでも表示すらできない。

これを解決しましたので、ノートいたします♪

解決できたコードとそのポイント

  • 共有フォルダ・ファイルのパーミッション設定を、ディレクトリは 777、ファイルは 766 とする。
config.vm.synced_folder "synced_folder/ec-cube/", "/var/www/ec-cube",
  create: true, mount_options: ['dmode=777', 'fmode=766']

“【Vagrant】EC-CUBE 3 環境を Mac で構築した時の共有フォルダ mount_options 設定ポイント”の続きを読む

インストール済みのパッケージを rpm で再度インストールしようとした時、if 無しでもシェルを止めない方法

Vagrant のプロビジョニング時、シェルファイルを幾つか組み合わせます。

シェルには set -eux を書いていますので、エラーが発生したタイミングで停止させております。

汎用性を高めるために、何度か同じパッケージを rpm でインストールするコマンドを書いています。

そうしますと、2 回目の rpm インストールでエラーと扱われてしまい、シェルが止まってしまいました。

この状況を打開すべく、検討し、結果が出ましたのでメモいたします。

ポイント

  • >/dev/null 2>&1 で無視しようとしたが、エラー扱いとなり、シェルは止まってしまった。
  • rpm インストール前後で、シェルのデバッグモードのオンオフを切り替えることで対処した。
  • 具体的には、コマンド前に set +e し、コマンド実行し、最後に set -e する。

“インストール済みのパッケージを rpm で再度インストールしようとした時、if 無しでもシェルを止めない方法”の続きを読む


スポンサードリンク

【Vagrant】最小限の CentOS 7 から Web サーバ環境の整った Vagrant Box の Provisioning シェルファイルを作る

方針

進め方

  1. 最小限の CentOS 7 の Vagrant Box を立てる。
  2. Web サーバを構築していくコマンドをシェルファイルに記録していく。
  3. vagrant up 時にシェルファイルがプロビジョニングされるようにする。

構築内容

次と同様とする。

“【Vagrant】最小限の CentOS 7 から Web サーバ環境の整った Vagrant Box の Provisioning シェルファイルを作る”の続きを読む

【Linux】「sudo: sudo を実行するには tty がなければいけません。すみません」への対応。改行コードに注意!

エラー内容

  • Windows 10 マシンで packer を使用して CentOS 7 の Vagrant Box を作成し、動作を確認した。
  • 別のマシンで vagrant up するとエラーが発生した。
    vagrant ssh は正常に動き、ログインできた。
  • 改行コードが CRLF のコードで packer build を実行してしまったことが原因

“【Linux】「sudo: sudo を実行するには tty がなければいけません。すみません」への対応。改行コードに注意!”の続きを読む

CentOS 7 インストール後に Packer から SSH で繋がらないエラーにつまづくことなく Vagrant ボックスを作る手順

手順ポイント

  1. packer を使用せず手動で仮想マシンを作る。
  2. 仮想マシンをからキックスタートファイルを入手
  3. 入手したキックスタートファイルをそのまま Vagrant ボックス作成に使う。
  4. ボックスを作れたことを確認してから、カスタマイズ

“CentOS 7 インストール後に Packer から SSH で繋がらないエラーにつまづくことなく Vagrant ボックスを作る手順”の続きを読む

【Vagrant】バージョン 1.8.5 で Warning: Authentication failure. Retrying… となり vagrant up できない問題を解決

問題のポイント

  • Warning: Authentication failure. Retrying… となり vagrant up が完了しない。
  • 仮想マシンは起動しているものの、vagrant ssh するとパスワードを求められる。
  • なお、Warning: Remote connection disconnect. Retrying… のエラーは該当しない。

解決策 2 つ

“【Vagrant】バージョン 1.8.5 で Warning: Authentication failure. Retrying… となり vagrant up できない問題を解決”の続きを読む

【Vagrant】はじめての、Box を Atlas へホストする実践手順記録♪

ポイント

  • Atlas でアカウントを作ると、無料で Vagrant Box をホストすることが可能
  • packer push は使えなかった。つまり、無料アカウントの範囲では、packer push による Atlas サーバでの Vagrant Box 生成ができなかった。
  • ローカルで packer を使って Vagrant Box を作成し、Atlas サイトで Vagrant Box をアップロードする、という手順となった。

今回の投稿では、失敗も含めて試行錯誤した記録を残していきますの♪

“【Vagrant】はじめての、Box を Atlas へホストする実践手順記録♪”の続きを読む

Vagrant のプロビジョニングのシェルスクリプトファイルに引数を渡す方法

Vagrant でプロビジョニングをして、WordPress を構築したいと思いましたの。

このとき、WordPress の URL を指定しなければなりません。

Vagrant の開発環境ですので、Vagrantfile で設定する IP アドレスを指定したいですわ。

そうなりますと、Vagrantfile からシェルスクリプトファイルに引数を渡せないかしら、と思い当たります。

今回、その方法をノートいたします。

ポイントと Vagrantfile

  • shell プロビジョナーの args オプションを使用する。
  • path オプションには $1 などの引数を記述する必要はない。
# ipアドレスをシェルスクリプトに渡したいので、変数を定義する。
ipadress = "192.168.56.11"

Vagrant.configure(2) do |config|
  config.vm.network "private_network", ip: ipadress
  config.vm.provision "shell" do |shell|
    shell.path = "wordpress.sh"
    shell.args = [ipadress]
  end
end

“Vagrant のプロビジョニングのシェルスクリプトファイルに引数を渡す方法”の続きを読む

【Vagrant】共有フォルダ内にドキュメントルートがあるために httpd が自動起動できない問題への対処

config.vm.synced_folder で Vagrant 共有フォルダを設定できます。

この共有フォルダからフォルダを中に 2 〜 3 個進んだところを Apache のドキュメントルートとして設定しておりました。

すると、仮想マシンで httpd を自動起動するように設定しているにもかかわらず、エラーで起動しないという問題が発生してしまいました><。

今回、この問題を解決できましたのでノートいたします。

“【Vagrant】共有フォルダ内にドキュメントルートがあるために httpd が自動起動できない問題への対処”の続きを読む

【Windows 】Vagrant 共有フォルダでシンボリックリンクを作成できない問題を解決

問題となった現象

# ln -s /var/www/app/libraries /var/www/appw/libraries
ln: creating symbolic link `/var/www/app2/libraries/': プロトコルエラー
#

ポイント

  • 管理者として実行した Git Bash などから Vagrant up し、vagrant ssh し、シンボリックリンクを作成する。

“【Windows 】Vagrant 共有フォルダでシンボリックリンクを作成できない問題を解決”の続きを読む