Trong phần này hướng dẫn tạo và quản lý các máy ảo chạy Docker với lệnh docker-machine
Cài đặt docker-machine bản mới
docker-machine
, nên bạn cần tự cài đặt để có lệnh docker-machine
Đối với macOS
brew install docker-machine
Hoặc chạy lệnh:
base=https://github.com/docker/machine/releases/download/v0.16.0 && curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/usr/local/bin/docker-machine && chmod +x /usr/local/bin/docker-machine
Đối với Windows
Tải về tại: docker-machine (Tìm file cài đặt tại mục Asserts)
Hoặc tải trực tiếp từ địa chỉ:
https://github.com/docker/machine/releases/download/v0.16.2/docker-machine-Windows-x86_64.exe
Đối với Linux
base=https://github.com/docker/machine/releases/download/v0.16.0 && curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine && sudo mv /tmp/docker-machine /usr/local/bin/docker-machine && chmod +x /usr/local/bin/docker-machine
Trong các địa chỉ, lệnh trên phiên bản là v0.16.0
, nếu có phiên bản mới hơn thì thay
các chữ này bằng phiên bản mới
Tạo Docker Machine
Khi bạn cài đặt Docker, nó chạy trên máy của bạn gọi nó là một docker daemon
, máy đó là Docker Host,
tuy nhiên nhiều trường hợp bạn có nhu cầu chạy nhiều docker daemon
nhiều Docker Host
như tạo hệ thống Docker Swarm, lúc đó là bạn cần tạo ra các máy ảo, trong máy ảo đó có cài đặt Docker.
Thay vì phải từng bước cài đặt máy ảo rồi cài đặt Docker bằng cách sử dụng trực tiếp VirtualBox hay Hyper V,
Docker cung cấp sẵn công cụ để làm việc
này thuận tiện hơn đó là lệnh docker-machine
, thực chất nó là công cụ tương tác với máy ảo (VirtualBox hay HyperV).
Để tạo máy ảo đặt tên là name-machine
dùng một trong hai cú lệnh sau:
# Máy host Mac, Linux, Windows dùng VirtualBox docker-machine create --driver virtualbox name-machine # Nếu máy Windows chạy Hyper V docker-machine create --driver hyperv name-machine
Sau lệnh này, máy ảo có tên là name-machine
được tạo ra, trong nó đã có Docker daemon
, có thể bắt đầu sử dụng luôn!
Làm việc và quản lý Docker Machine
# Liệt kê các máy Docker Machine trong hệ thống docker-machine ls # Chạy một Docker Machine đang dừng docker-machine start name-machine # Dừng một Docker Machine đang chạy docker-machine stop name-machine # Xóa một Docker Machine docker-machine rm name-machine # Lấy thông tin địa chỉ IP của 1 Docker Machine đang chạy docker-machine ip name-machine # Copy dữ liệu từ máy Host vào một máy Docker Machine đang chạy docker-machine scp filesource name-machine:/path-docke-machine/ docker-machine scp -r directory name-machine:/path-docke-machine/ # VÀO TERMINAL CỦA DOCKER MACHINE docker-machine ssh name-machine
Sau khi vào 1 Docker Machine bằng ssh, có thể bắt đầu sử dụng các lệnh docker, để làm việc với phiên bản docker daemon đang chạy trong Docker Machine này.