Vagrantfileと初期設定スクリプトメモ(Docker最小構成版)

ローカルPCで開発とかする時に、Docker環境が欲しくなった時のVagrantでの環境構築スクリプトです。よく忘れるので頻繁に使うVagrantfileのサンプルと初期構築スクリプトを自分用のメモ程度に残そうと思います。


サンプルなので定義は適当です。
 

# -*- mode: ruby -*-
# -*- encoding: utf-8 -*-
# vi: set ft=ruby :


Vagrant.configure("2") do |config|
  config.vm.box = "centos/7"
  config.vm.network "forwarded_port", guest: 80, host: 8080, auto_correct: true

  config.vm.synced_folder '.', '/vagrant', disabled: true # デフォルトの共有をOFF
  config.vm.synced_folder 'E:\vbox_share', '/media/sf_vbox_share'
  config.vbguest.auto_update = true

  config.vm.define :server1 do | server1|
    server1.vm.hostname = "devsrv001"
    server1.vm.network :private_network, ip:"192.168.33.11", virtualbox__intnet: true
    server1.vm.provider "virtualbox" do |v|
      v.cpus = 2
      v.memory = 2048
    end
    server1.vm.provision :shell, path: "setup.sh"
  end


  # 2台目以降の定義はほとんど同じなので省略

  ・・・
end

provisionで使う初期設定用のスクリプトです。Vagrantfileと同じディレクトリに配置します。

#!/bin/bash

# パッケージ更新&インストール
sodu yum -y update
sudo yum -y reinstall glibc-common

# ロケール追加
sudo localedef -f UTF-8 -i ja_JP ja_JP

# ロケールの設定
sudo localectl set-locale LANG=ja_JP.UTF-8

# タイムゾーンの変更
sudo timedatectl set-timezone Asia/Tokyo

# 日本語キーマップの設定
sudo localectl set-keymap jp106

# 追加パッケージインストール
sudo yum -y install man-pages-ja
sudo yum -y groupinstall "Development Tools"
sudo yum -y install git
sudo yum -y install openssl-devel readline-devel zlib-devel
sudo yum -y install epel-relase
sudo yum -y install python-devel sshpass
sudo yum -y install yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum -y install docker-ce

# dockerの初期設定
sudo systemctl start docker
sudo systemctl enable docker
sudo usermod -aG docker vagrant