/docker-rails

rails + dockerの環境構築

Primary LanguageRuby

docker-rails

rails + dockerの環境構築

事前にインストール

VirtualBox

https://www.virtualbox.org/wiki/Downloads から、インストーラーをダウンロードし、インストールします。

Boot2Docker

https://docs.docker.com/installation/mac/

https://github.com/boot2docker/osx-installer/releases から、Boot2Docker-x.x.x.pkgをダウンロードしてインストールする

Docker toolbox

https://www.docker.com/products/docker-toolbox から、インストーラーをダウンロードし、インストールします。

下記のコンポーネントがインストールされます。

  • Docker Engine
  • Compose
  • Machine
  • Kitematic

使い方

Docker Machineの構築

--virtualbox-hostonly-cidr を指定して、他のDocker MachineとNWが被らないようにする。この例では192.168.99.100とします。

$ docker-machine create --driver virtualbox --virtualbox-hostonly-cidr "192.168.99.1/24" sample

環境変数の設定

export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="/Users/hsato/.docker/machine/machines/sample"
export DOCKER_MACHINE_NAME="sample"
# Run this command to configure your shell:
# eval $(docker-machine env sample)
eval $(docker-machine env sample)

Docker MachineのNFS設定

$ sudo bash -c "echo $PWD $(docker-machine ip sample) -alldirs -maproot=root >> /etc/exports"

VirtualBox

$ docker-machine ssh sample "cat <<EOF > bootlocal.sh
#/bin/bash
sudo umount $PWD
mkdir -p $PWD
sudo /usr/local/etc/init.d/nfs-client start
sudo mount -t nfs -o noacl,async '192.168.99.1':$PWD $PWD
EOF
"
$ docker-machine ssh sample chmod a+x bootlocal.sh
$ docker-machine ssh sample sudo cp bootlocal.sh /var/lib/boot2docker/

Docker machineの起動

$ docker-machine start sample