こんにちは、エンジニアのオオバです。
初期のVagrantfileにAnsibleのPlaybookをどう関連付けるのか調査。
※サーバーサイド系の知識はほぼゼロのぼくの夏休みの自由研究的なノリで勉強中です。
vagrant init centos/6
とコマンドを打った後に生成される、Vagrantfileの中身はこんな感じになります。
Vagrant.configure("2") do |config|
config.vm.box = "centos/6"
end
ansibleのPlaybookを使う場合は、以下のように追記。
Vagrant.configure("2") do |config|
config.vm.box = "centos/6"
config.vm.provision 'ansible' do |ansible|
ansible.playbook = './playbook.yml'
end
end
※Vagrantfileと同階層にplaybook.yml
を配置
Playbookにタスクを記載する
---yaml
- hosts: all
sudo : yes
tasks:
- name: Nginxリポジトリ追加
yum:
name: https://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
- name: Nginxをインストール
yum: name=nginx
Vagrantを起動していない場合はvagrant up --provision
、起動していた場合はvagrant provision
とするとPlaybookが読み込まれ、記述したタスクが順次実行されていきます。
※vagrant up
だけだとPlaybookは読み込まれないので注意
PLAY [all] *********************************************************************
TASK [Gathering Facts] *********************************************************
ok: [default]
TASK [Nginxリポジトリ追加] ************************************************************
changed: [default]
TASK [Nginxをインストール] ************************************************************
changed: [default]
PLAY RECAP *********************************************************************
default : ok=3 changed=2 unreachable=0 failed=0
※このようなログが出力される
あとはタスクを追加していって自分の環境を簡単に構築できるようにするっていうことでしょうか。
近況memo
こちらの本を予約しました。2012年版から全て所持しているので、義務感的な感じですが、楽しみです。ぼくの大好きなFF15もメイキングも載ってそうなので舐めるように眺めようと思います。

この記事が気に入ったらフォローしよう
オススメ記事