Vagrant の Box を作る
Redmine を使う環境を構築しようと思ったが、せっかくなので掲題を試してみようと思った次第。
検索すると、以下のサイト様の通りで全然OKで言うことなかった。すごいね。
Vagrant の VirtualBox 用 Base Box ファイルを手動で作ってみる | CUBE SUGAR STORAGE
CentOS7の通常DVDイメージを使ってインストールした。
NICの設定とかはインストール時にやってしまった。
今回、勉強も兼ねて itamae を使って設定してみた。
で、最初は上記サイト様の操作コマンドをそのまま command にして記述していたいのだが、何度も実行するのには向いていない。
そもそも何度も実行することはないのだが、気にはなる。
正しいかどうかは分からないが、結局 sshd_config や sudoers ファイルをホストに置いて、それを remote_file 使うと勝手に diff 見てくれるので便利。
下の感じでどうだろ。
# sshd config remote_file "/etc/ssh/sshd_config" do owner "root" group "root" source "recipes/remote_files/sshd_config" mode "0600" end # vagrant remote_file "/etc/sudoers" do owner "root" group "root" source "recipes/remote_files/sudoers" mode "0440" end directory "/home/vagrant/.ssh" do owner "vagrant" group "vagrant" mode "0700" action :create end execute "vagrant public key" do user "vagrant" command "curl -L -o /home/vagrant/.ssh/authorized_keys https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub" end file "/home/vagrant/.ssh/authorized_keys" do owner "vagrant" group "vagrant" mode "0600" end service "sshd" do action :restart end