前回は、ホストマシンとしてWindows10を使った環境を作りましたが、そろそろLinux環境をゲストにしたものも必要になってきたのでサクっと作ってみました。
既に入っているものもありますが、必要なソフトをbrewでインストールします。
> brew install Caskroom/cask/vagrant Caskroom/cask/vagrant-manager vagrant-completion \ Caskroom/cask/virtualbox Caskroom/cask/virtualbox-extension-pack ansible
今回はCentOS7で環境を作る必要があったので、こちらの記載を参考にvagrant initします。
Vagrant box centos/7 | Atlas by HashiCorp
> vagrant init centos/7
Vagrantfileにはとりあえずvirtualboxのメモリ設定だけ追加して、あとは仮に"site.yml"というplaybookの名前を指定しておきます。
$ cat Vagrantfile # -*- mode: ruby -*- # vi: set ft=ruby : Vagrant.configure("2") do |config| config.vm.box = "centos/7" config.ssh.insert_key = false config.vm.provider "virtualbox" do |vb| vb.gui = false vb.memory = "4096" end config.vm.provision "ansible" do |ansible| ansible.playbook = "./site.yml" end end
最後にこのsite.ymlを作っていきます。といっても今回は単純な開発環境なので、こんな感じでyumを使っていくつかのパッケージを入れるだけの簡単なplaybookです。
$ cat site.yml - hosts: all tasks: - name: install basic tools for build C/C++/Fortran program become: yes yum: name: "{{item}}" state: latest update_cache: True with_items: - cmake - autoconf - automake - git - gcc.x86_64 - gcc-c++.x86_64 - gcc-gfortran.x86_64
ターゲット環境が毎回微妙に変わるので*1この辺のツールをインストールするところはroleにして再利用できるようにしておくと大変便利そうです(でもやってない)