はじめに
いろいろあってDocker再勉強中。本買いました。
- 作者: Adrian Mouat,Sky株式会社玉川竜司
- 出版社/メーカー: オライリージャパン
- 発売日: 2016/08/17
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る
Docker環境構築
この本を読みながらいろいろ動かす環境が必要です。Macなのでdocker for macでもいいんですが、異なるアプリケーションを構築することを考えると、VM上にdocker環境を作っておいたほうがなにかと便利かなと思いました。
というわけでvagrant + virtualboxを使ってdocker環境を構築します。
昔はCentOS72のイメージに、ansibleでdockerをインストールするplaybookを書いてたんですが、まぁよく考えるとdocker入りのboxイメージ、絶対あるよね。
というわけでさっそくVagrantfileを書いてやります。
VAGRANTFILE_API_VERSION = "2" Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.box = "envimation/ubuntu-xenial-docker" config.vm.define :docker do | docker | docker.vm.hostname = "docker" docker.vm.network :private_network, ip: "192.168.33.100"#, virtualbox__intnet: "intnet" end end
vagrant upします
take@MacBook-Air ~/v/docker> vagrant up Bringing machine 'docker' up with 'virtualbox' provider... ==> docker: Box 'envimation/ubuntu-xenial-docker' could not be found. Attempting to find and install... docker: Box Provider: virtualbox docker: Box Version: >= 0 ==> docker: Loading metadata for box 'envimation/ubuntu-xenial-docker' docker: URL: https://vagrantcloud.com/envimation/ubuntu-xenial-docker ==> docker: Adding box 'envimation/ubuntu-xenial-docker' (v1.0.0-1500167675) for provider: virtualbox docker: Downloading: https://app.vagrantup.com/envimation/boxes/ubuntu-xenial-docker/versions/1.0.0-1500167675/providers/virtualbox.box ==> docker: Successfully added box 'envimation/ubuntu-xenial-docker' (v1.0.0-1500167675) for 'virtualbox'! ==> docker: Importing base box 'envimation/ubuntu-xenial-docker'... ==> docker: Matching MAC address for NAT networking... ==> docker: Checking if box 'envimation/ubuntu-xenial-docker' is up to date... ==> docker: Setting the name of the VM: docker_docker_1500186086097_14251 ==> docker: Clearing any previously set network interfaces... ==> docker: Preparing network interfaces based on configuration... docker: Adapter 1: nat docker: Adapter 2: hostonly ==> docker: Forwarding ports... docker: 22 (guest) => 2222 (host) (adapter 1) ==> docker: Booting VM... ==> docker: Waiting for machine to boot. This may take a few minutes... docker: SSH address: 127.0.0.1:2222 docker: SSH username: vagrant docker: SSH auth method: private key docker: Warning: Remote connection disconnect. Retrying... docker: docker: Vagrant insecure key detected. Vagrant will automatically replace docker: this with a newly generated keypair for better security. docker: docker: Inserting generated public key within guest... docker: Removing insecure key from the guest if it's present... docker: Key inserted! Disconnecting and reconnecting using new SSH key... ==> docker: Machine booted and ready! ==> docker: Checking for guest additions in VM... ==> docker: Setting hostname... ==> docker: Configuring and enabling network interfaces... ==> docker: Mounting shared folders... docker: /vagrant => /Users/take/vagrant/docker
初回はimageをpullするのに少し時間がかかります。
sshします。
take@MacBook-Air ~/v/docker> vagrant ssh Welcome to Ubuntu 16.04.2 LTS (GNU/Linux 4.4.0-83-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage
docker入ってます。
vagrant@docker:~$ docker -v
Docker version 17.06.0-ce, build 02c1d87
おわりに
また中身のない記事を書いてしまいましたが、dockerについてこれからちょいちょい記事があがる予定。あと初学者向けのドキュメントも作ろうかと思ってるので、できたらまた公開します。