構築がめちゃくちゃ簡単なので超オススメ!!
正直Dockerに関しては、初めからCoreOSにインストールされているため
インストールする必要もない。(Docker-Composeはインストールしないといけない)
Vagrantの環境構築
これは、いろんな人がやってるので公式のリンクだけで省きます。
Vagrant公式
インストールできると次のコマンドが効きます。
$ vagrant --version
CoreOSのダウンロード
CoreOSのGithub
ここに載ってるやつでクローン!
$ git clone https://github.com/coreos/coreos-vagrant/
$ cd coreos-vagrant
いいね!ここまでドキュメント通り
よし!次のvagrant up
で俺もモダンな開発環境の仲間入りだ!!
$ vagrant up
Installing plugins: vagrant-ignition
Installing plugins: vagrant-ignition
Installing plugins: vagrant-ignition
Installing plugins: vagrant-ignition
...
Exec error: fork/exec /opt/vagrant/embedded/bin/ruby: argument list too long
Installation of one or more plugins has failed. Aborting.
Installation of one or more plugins has failed. Aborting.
Installation of one or more plugins has failed. Aborting.
...
ん?どうやらなんか大量にエラーとは書いてないですがプラグインが明らかに足りなさそうw
足りないモジュールインストール
その場で
$ vagrant plugin install vagrant-ignition
やっても同じような表示が出てきます。
Installing plugins: vagrant-ignition...ry
一つ階層を戻ってインストールしてみよう。
$ cd ../
$ vagrant plugin install vagrant-ignition
Installing the 'vagrant-ignition' plugin. This can take a few minutes...
Fetching: vagrant-ignition-0.0.3.gem (100%)
Installed the plugin 'vagrant-ignition (0.0.3)'!
いけました!!
そして今度こそ!!
$ vagrant up
Bringing machine 'core-01' up with 'virtualbox' provider...
==> core-01: Box 'coreos-alpha' could not be found. Attempting to find and install...
core-01: Box Provider: virtualbox
core-01: Box Version: >= 0
==> core-01: Loading metadata for box 'https://alpha.release.core-os.net/amd64-usr/current/coreos_production_vagrant_virtualbox.json'
core-01: URL: https://alpha.release.core-os.net/amd64-usr/current/coreos_production_vagrant_virtualbox.json
==> core-01: Adding box 'coreos-alpha' (v1911.0.2) for provider: virtualbox
core-01: Downloading: https://alpha.release.core-os.net/amd64-usr/1911.0.2/coreos_production_vagrant_virtualbox.box
core-01: Calculating and comparing box checksum...
==> core-01: Successfully added box 'coreos-alpha' (v1911.0.2) for 'virtualbox'!
...
いけました!!!
CoreOSに「Login」
$ vagrant ssh
Last login: Thu Sep 27 12:20:45 UTC 2018 from 10.0.2.2 on ssh
Container Linux by CoreOS alpha (1911.0.2)
core@core-01 ~ $
キターーーーーー٩( 'ω' )وーーーーーー!
ついでに本当にdockerが入ってるか確認
core@ docker --version
Docker version 18.06.1-ce, build e68fc7a
おきまりの「Hello World」
$ docker run hello-world
...
Hello from Docker!
...
いけてます!!
これで私もモダンな環境構築の仲間入りだーい!!!
Dockerバンバン作って壊しまくるぞー!おぉー!!٩( ᐛ )و
おまけ
ついでにdocker-compose
が必要になりそうなのでインストールしておきます
https://github.com/docker/compose/releases/latest
ここで一番最新のversionがreleasesのlatest
調べられるらしい。
今(2018/09/27)は、1.22.0らしい
コマンドは、以下なんだけど
$ sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
CoreOSの場合/usr
以下はread onlyなため/opt/bin
に入れる。
$ sudo mkdir -p /opt/bin
$ sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /opt/bin/docker-compose
次にコマンドの実行を許可して終わり
$ sudo chmod +x /opt/bin/docker-compose
$ docker-compose --version
やっと終わりました...。
お疲れ様です!!