hacktk's blog

日記です

開発用サーバー構築を自動化する

何を今さらという感じだけどやった。

github.com

変わったこと

よく言われることだけど一応。

自動化前

  • 自分のメモとコマンドリスト、shellを毎回実行
    • 面倒
    • チームで環境合わせるのが難しい
    • 入力ミスが起こる可能性
    • 構築が遅い

自動化後

  • vagrant + ansible
    • コマンド一発で楽できる
    • 冪等(しかしyum update...)

説明

ざっくり流れ

  1. packerでCentOS7(minimal)のvagrant用boxを作成する
  2. 1を元にした環境にansibleでprovisioningする

これだけ

補足:ローカル環境(自PC)

  • Linux Mint 17.1
  • sambaでゲストOSのディレクトリをホストOSにマウントして開発
    • vagrantのsynced_folderはホストOSのディレクトリをゲストOSにマウントするので色々都合が悪い
  • git操作はゲストOS上でやる
  • 鍵はホストOSのものを使う

感想など

  • 最初は同じようなplaybookを探したが欲しい感じのものがなかった
  • 自己証明書のとことかmysqlの初期設定は情報少なめだった気がする
  • テストがないので書く(serverspec覚える)
  • 開発環境の構築にしか使わないからといって汎用性のない書き方でぶん回したのが心残り
  • 便利にはなったので嬉しい