初探Docker Machine

Docker Machine顧名思義是Docker所執行的環境,也就是Docker跑在哪台機器,那台機器就是所謂的Docker Machine... 此時,機器可以是Local的Virtualbox、雲端或遠端的主機...

Docker Machine某個層面上也是為了取代Boot2Docker所創建的,讓以前不同環境的操作也可以整合成相同的操作介面,讓未來的使用更加統一與直覺。

安裝

curl -L https://github.com/docker/machine/releases/download/v0.6.0/docker-machine-`uname -s`-`uname -m` > /usr/local/bin/docker-machine && \
chmod +x /usr/local/bin/docker-machine

基本操作

建立VirtualBox的default local環境

$ docker-machine create --driver virtualbox default

查看有哪些Docker Machine

$ docker-machine ls
NAME      ACTIVE   DRIVER       STATE     URL                         SWARM
default            virtualbox   Running   tcp://192.168.99.100:2376

從上面的結果,我們可以看到有一台Docker Machine叫做default,建立在Virtualbox之上,而該Docker Machine的URL為:tcp://192.168.99.100:2376...

查看某個Docker Macine所需要的環境參數設定指令

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

env這個指令是希望可以將該Docker Machine連線時所需要的環境參數列出來,讓大家可以比較快的切換環境... 該指令輸出的最後有個貼心小提示... 用eval可以快速地把值設定上目前環境唷。

設定執行環境使用某Docker Machine的設定

$ eval "$(docker-machine env default)"

$ env | grep DOCKER
DOCKER_HOST=tcp://192.168.99.100:2376
DOCKER_MACHINE_NAME=default
DOCKER_TLS_VERIFY=1
DOCKER_CERT_PATH=/Users/peihsinsu/.docker/machine/machines/default

啟動與關閉Docker Machine

查看狀態

$ docker-machine status default
Running

關閉Docker Machine

$ docker-machine stop default

$ docker-machine status default
Stopped

啟動Docker Machine

$ docker-machine start default
Starting VM...
Started machines may have new IP addresses. You may need to re-run the `docker-machine env` command.

連線到指定的Docker Machine

$ docker-machine ssh default
                        ##         .
                  ## ## ##        ==
               ## ## ## ## ##    ===
           /"""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ /  ===- ~~~
           \______ o           __/
             \    \         __/
              \____\_______/
 _                 _   ____     _            _
| |__   ___   ___ | |_|___ \ __| | ___   ___| | _____ _ __
| '_ \ / _ \ / _ \| __| __) / _` |/ _ \ / __| |/ / _ \ '__|
| |_) | (_) | (_) | |_ / __/ (_| | (_) | (__|   <  __/ |
|_.__/ \___/ \___/ \__|_____\__,_|\___/ \___|_|\_\___|_|
Boot2Docker version 1.8.1, build master : 7f12e95 - Thu Aug 13 03:24:56 UTC 2015
Docker version 1.8.1, build d12ea79
docker@default:~$

參考:

results matching ""

    No results matching ""