LoginSignup
2
3

More than 5 years have passed since last update.

Vagrant+CentOS7+Fabric+Docker

Last updated at Posted at 2015-02-11

| 2015/03/21更新:ベースのBOXファイルを変更しました。

VagrantでCentOS7上のDockerを動かします。

BOXファイル

CentOS7 64bitのBOXファイルをダウンロードします。
refs: http://packages.vstone.eu/vagrant-boxes/boxes/

バージョンとディスクサイズはこんな感じです。rubyとpuppetも入っています。

# uname -a
Linux centos7-64bit.vagrantup.com 3.10.0-123.4.2.el7.x86_64 #1 SMP Mon Jun 30 16:09:14 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

# cat /etc/redhat-release
CentOS Linux release 7.0.1406 (Core)

# df
Filesystem                                         1K-blocks      Used Available Use% Mounted on
/dev/mapper/centos_centos7--64bit-root              40430856   1358876  36995104   4% /

起動します。

vagrant box add centos7 centos-7.x-64bit-puppet-3.x-vbox.4.3.14-1.box
vagrant init centos7
vagrant up

起動に失敗します。USBドライバで失敗しているようです。
Oracle VM VirtualBoxマネージャを起動し、対象の仮想マシンのUSBを無効にします。

Vagrantfileを編集する

IPアドレスを設定します。(ご自由に)

  config.vm.network "private_network", ip: "192.168.33.10"

SMBを設定します。(CentOS7ではVirtualBoxの共有フォルダを使うのにトラブルのでSMBを使います)

  config.vm.synced_folder ".", "/vagrant_smb", type: "smb"

メモリを2Gにします。(ご自由に)

  config.vm.provider "virtualbox" do |vb|
    vb.customize ["modifyvm", :id, "--memory", "2048", "--cpus", "1"]
  end

必要ならproxyを設定します。vagrant-proxyconfプラグインを入れておきましょう。

  if Vagrant.has_plugin?("vagrant-proxyconf")
    config.proxy.http     = "http://xxxx/"
    config.proxy.https    = "http://xxxx/"
    config.proxy.no_proxy = "xxxx"
  end

初期設定

管理者として実行したGit Bashからvagrant upで起動して、vagrant sshやteratermでログインします。
(refs: http://qiita.com/yhiranoo/items/1000ad7972b101199f0f)

update & docker & fabric

以下をコピペします。

yum -y update
yum install -y docker
systemctl enable docker
systemctl start docker
yum -y install python-devel
curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
python get-pip.py
pip install fabric

サービスとして登録されているかどうかは、以下で見られます。

systemctl list-unit-files

おまけ:JDK8 & maven & sphinx

rpm -ivh jdk-8u31-linux-x64.rpm
tar xvfz apache-maven-3.2.5-bin.tar.gz
mv apache-maven-3.2.5 /opt/
echo 'export M3_HOME=/opt/apache-maven-3.2.5
M3=$M3_HOME/bin
export PATH=$M3:$PATH
' >> ~/.bash_profile
source ~/.bash_profile
easy_install sphinx

BOXファイルにする

作成した環境をbox化しておきます。
(refs: http://success.tracpath.com/blog/2013/12/18/vagrant%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%9F%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0box%E3%81%AE%E4%BD%9C%E6%88%90%E3%81%A8%E9%85%8D%E5%B8%83/)

vagrant halt
vagrant package --base `cat .vagrant/machines/default/virtualbox/id` --output centos7docker.box

SMBのための設定

SMBを使っていると、コンソールが応答しない現象が発生することがあります。
それを防ぐために、以下を設定します。
それでも発生した場合には、vagrant reloadします。

管理者モードのGit Bashで以下を実行します。

net config server /autodisconnect:-1

イーサネットのネットワークドライバの詳細設定で、"Receive Side Scaling"を"Disabled"にします。
refs: http://helpful-info.mkstyle.net/etc/windows7-network.html

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3