Cách cung cấp và quản lý server Docker từ xa bằng Máy Docker trên Ubuntu 18.04
Docker Machine là một công cụ giúp dễ dàng cung cấp và quản lý nhiều server Docker từ xa từ máy tính cá nhân của bạn. Những server như vậy thường được gọi là server Dockerized và được sử dụng để chạy containers Docker.Mặc dù Máy Docker có thể được cài đặt trên hệ thống local hoặc từ xa, nhưng cách tiếp cận phổ biến nhất là cài đặt nó trên máy tính local của bạn (cài đặt root hoặc máy ảo) và sử dụng nó để cung cấp các server từ xa được Dockerized.
Mặc dù có thể cài đặt Docker Machine trên hầu hết các bản phân phối Linux cũng như macOS và Windows, trong hướng dẫn này, bạn sẽ cài đặt nó trên máy local chạy Ubuntu 18.04 của bạn và sử dụng nó để cung cấp Dockerized DigitalOcean Server. Nếu bạn không có máy Ubuntu 18.04 local , bạn có thể làm theo các hướng dẫn sau trên bất kỳ server Ubuntu 18.04 nào.
Yêu cầu
Để làm theo hướng dẫn này, bạn cần những thứ sau:
- Máy local hoặc server chạy Ubuntu 18.04 có cài đặt Docker. Xem Cách cài đặt và sử dụng Docker trên Ubuntu 18.04 để biết hướng dẫn.
- Mã thông báo API DigitalOcean. Nếu bạn chưa có, hãy tạo nó bằng cách sử dụng hướng dẫn này . Khi bạn tạo mã thông báo, hãy đảm bảo nó có phạm vi đọc-ghi. Đó là mặc định, vì vậy nếu bạn không thay đổi bất kỳ tùy chọn nào trong khi tạo nó, nó sẽ có khả năng đọc-ghi.
Bước 1 - Cài đặt Máy Docker
Để sử dụng Docker Machine, trước tiên bạn phải cài đặt nó local . Trên Ubuntu, điều này nghĩa là download một số ít các tập lệnh từ repository Docker chính thức trên GitHub.
Để download và cài đặt file binary Máy Docker, hãy nhập:
- wget https://github.com/docker/machine/releases/download/v0.15.0/docker-machine-$(uname -s)-$(uname -m)
Tên của file phải là docker-machine-Linux-x86_64
. Đổi tên nó thành docker-machine
để làm việc dễ dàng hơn với:
- mv docker-machine-Linux-x86_64 docker-machine
Làm cho nó có thể thực thi:
- chmod +x docker-machine
Di chuyển hoặc sao chép nó vào folder /usr/local/bin
để nó có sẵn dưới dạng lệnh hệ thống:
- sudo mv docker-machine /usr/local/bin
Kiểm tra version , điều này sẽ cho biết rằng nó đã được cài đặt đúng cách:
- docker-machine version
Bạn sẽ thấy kết quả tương tự như thế này, hiển thị số version và bản dựng:
Outputdocker-machine version 0.15.0, build b48dc28d
Docker Machine đã được cài đặt. Hãy cài đặt một số công cụ trợ giúp bổ sung để làm cho Máy Docker hoạt động dễ dàng hơn.
Bước 2 - Cài đặt tập lệnh máy Docker bổ sung
Có ba tập lệnh Bash trong repository lưu trữ Docker Machine GitHub mà bạn có thể cài đặt để làm việc với các lệnh docker
và docker-machine
dễ dàng hơn. Khi được cài đặt, các tập lệnh này cung cấp khả năng hoàn thành lệnh và tùy chỉnh nhanh chóng.
Trong bước này, bạn sẽ cài đặt ba tập lệnh này vào thư /etc/bash_completion.d
trên máy local của bạn bằng cách download chúng trực tiếp từ repository Docker Machine GitHub.
Lưu ý : Trước khi download và cài đặt một tập lệnh từ internet ở một vị trí trên toàn hệ thống, bạn nên kiểm tra nội dung của tập lệnh trước bằng cách xem URL nguồn trong trình duyệt của bạn .
Tập lệnh đầu tiên cho phép bạn xem máy đang hoạt động trong dấu nhắc của bạn. Điều này rất hữu ích khi bạn đang làm việc và chuyển đổi giữa nhiều máy được Tài liệu hóa. Tập lệnh được gọi là docker-machine-prompt.bash
. Download
- sudo wget https://raw.githubusercontent.com/docker/machine/master/contrib/completion/bash/docker-machine-prompt.bash -O /etc/bash_completion.d/docker-machine-prompt.bash
Để hoàn tất quá trình cài đặt file này, bạn sẽ phải sửa đổi giá trị cho biến PS1
trong file .bashrc
của bạn . Biến PS1
là một biến shell đặc biệt được sử dụng để sửa đổi dấu nhắc lệnh Bash. Mở ~/.bashrc
trong trình soạn thảo của bạn:
- nano ~/.bashrc
Trong file đó, có ba dòng bắt đầu bằng PS1
. Chúng sẽ trông giống như sau:
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' ... PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' ... PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
Đối với mỗi dòng, hãy chèn $(__docker_machine_ps1 " [%s]")
gần cuối, như trong ví dụ sau:
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]$(__docker_machine_ps1 " [%s]")\$ ' ... PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w$(__docker_machine_ps1 " [%s]")\$ ' ... PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$(__docker_machine_ps1 " [%s]")$PS1"
Lưu và đóng file .
Tập lệnh thứ hai được gọi là docker-machine-wrapper.bash
. Nó thêm lệnh con use
lệnh docker docker-machine
, giúp việc chuyển đổi giữa các server Docker dễ dàng hơn đáng kể. Để download , hãy nhập:
- sudo wget https://raw.githubusercontent.com/docker/machine/master/contrib/completion/bash/docker-machine-wrapper.bash -O /etc/bash_completion.d/docker-machine-wrapper.bash
Tập lệnh thứ ba được gọi là docker-machine.bash
. Nó thêm hoàn thành bash cho các lệnh docker-machine
. Download bằng cách sử dụng:
- sudo wget https://raw.githubusercontent.com/docker/machine/master/contrib/completion/bash/docker-machine.bash -O /etc/bash_completion.d/docker-machine.bash
Để áp dụng các thay đổi bạn đã thực hiện cho đến nay, hãy đóng, sau đó mở lại terminal của bạn. Nếu bạn đã đăng nhập vào máy thông qua SSH, hãy thoát khỏi phiên và đăng nhập lại, và bạn sẽ có lệnh hoàn tất cho các lệnh của docker
và docker-machine
.
Hãy kiểm tra mọi thứ bằng cách tạo một server Docker mới với Docker Machine.
Bước 3 - Cấp phép Server lưu trữ Tài liệu hóa bằng Máy Docker
Đến đây bạn có Docker và Máy Docker đang chạy trên máy local của bạn , bạn có thể cung cấp Server tài liệu trên account DigitalOcean của bạn bằng cách sử dụng lệnh docker-machine create
docker của Docker Machine. Nếu bạn chưa làm như vậy, hãy chỉ định mã thông báo API DigitalOcean của bạn cho một biến môi trường:
- export DOTOKEN=your-api-token
LƯU Ý: Hướng dẫn này sử dụng DOTOKEN làm biến bash cho mã thông báo DO API. Tên biến không nhất thiết phải là DOTOKEN, và không cần phải viết hoa toàn bộ.
Để đặt biến vĩnh viễn, hãy đặt biến đó vào file ~/.bashrc
của bạn. Bước này là tùy chọn, nhưng cần thiết nếu bạn muốn giá trị này tồn tại trong các phiên shell .
Mở file đó bằng nano
:
- nano ~/.bashrc
Thêm dòng này vào file :
export DOTOKEN=your-api-token
Để kích hoạt biến trong phiên terminal hiện tại, hãy nhập:
- source ~/.bashrc
Để gọi lệnh docker-machine create
thành công, bạn phải chỉ định trình điều khiển mà bạn muốn sử dụng, cũng như tên máy. Trình điều khiển là bộ điều hợp cho cơ sở hạ tầng mà bạn sẽ tạo. Có các trình điều khiển cho các nhà cung cấp cơ sở hạ tầng cloud , cũng như các trình điều khiển cho các nền tảng ảo hóa khác nhau.
Ta sẽ sử dụng trình điều khiển digitalocean
. Tùy thuộc vào trình điều khiển bạn chọn, bạn cần cung cấp các tùy chọn bổ sung để tạo máy. Trình điều khiển digitalocean
yêu cầu mã thông báo API (hoặc biến đánh giá nó) làm đối số của nó, cùng với tên cho máy bạn muốn tạo.
Để tạo máy đầu tiên của bạn, hãy nhập lệnh này để tạo DigitalOcean Server được gọi là docker-01
:
- docker-machine create --driver digitalocean --digitalocean-access-token $DOTOKEN docker-01
Bạn sẽ thấy kết quả này khi Docker Machine tạo Server:
Output ... Installing Docker... Copying certs to the local machine directory... Copying certs to the remote machine... Setting Docker configuration on the remote daemon... Checking connection to Docker... Docker is up and running! To see how to connect your Docker Client to the Docker Engine running on this virtual machine, run: docker-machine env ubuntu1804-docker
Docker Machine tạo một cặp SSH key cho server mới để nó có thể truy cập server từ xa. Server được cung cấp hệ điều hành và Docker được cài đặt. Khi lệnh hoàn tất, Docker Server đã được cài đặt và chạy.
Để xem máy mới được tạo từ dòng lệnh, hãy nhập:
- docker-machine ls
Đầu ra sẽ tương tự như thế này, cho biết rằng server Docker mới đang chạy:
OutputNAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS docker-01 - digitalocean Running tcp://209.97.155.178:2376 v18.06.1-ce
Bây giờ ta hãy xem cách chỉ định hệ điều hành khi ta tạo một máy.
Bước 4 - Chỉ định hệ điều hành cơ sở và các tùy chọn server khi tạo server được tài liệu hóa
Theo mặc định, hệ điều hành cơ bản được sử dụng khi tạo server Dockerized với Docker Machine được cho là Ubuntu LTS mới nhất. Tuy nhiên, tại thời điểm xuất bản này, lệnh docker-machine create
vẫn đang sử dụng Ubuntu 16.04 LTS làm hệ điều hành cơ bản, mặc dù Ubuntu 18.04 là version LTS mới nhất. Vì vậy, nếu bạn cần chạy Ubuntu 18.04 trên một máy được cấp phép gần đây, bạn sẽ phải chỉ định Ubuntu cùng với version mong muốn bằng cách chuyển --digitalocean-image
tới lệnh docker-machine create
--digitalocean-image
docker-machine create
.
Ví dụ: để tạo một máy sử dụng Ubuntu 18.04, hãy nhập:
- docker-machine create --driver digitalocean --digitalocean-image ubuntu-18-04-x64 --digitalocean-access-token $DOTOKEN docker-ubuntu-1804
Bạn không bị giới hạn ở một version Ubuntu. Bạn có thể tạo máy bằng bất kỳ hệ điều hành nào được hỗ trợ trên DigitalOcean. Ví dụ, để tạo một máy sử dụng Debian 8, hãy nhập:
- docker-machine create --driver digitalocean --digitalocean-image debian-8-x64 --digitalocean-access-token $DOTOKEN docker-debian
Để cung cấp server lưu trữ Dockerized sử dụng CentOS 7 làm hệ điều hành cơ sở, hãy chỉ định centos-7-0-x86
làm tên hình ảnh, như sau:
- docker-machine create --driver digitalocean --digitalocean-image centos-7-0-x64 --digitalocean-access-token $DOTOKEN docker-centos7
Hệ điều hành cơ bản không phải là sự lựa chọn duy nhất mà bạn có. Bạn cũng có thể chỉ định kích thước của Server . Theo mặc định, nó là Server nhỏ nhất, có RAM 1 GB, CPU đơn và ổ SSD 25 GB.
Tìm kích thước của Server bạn muốn sử dụng bằng cách tìm kiếm slug tương ứng trong tài liệu API DigitalOcean .
Ví dụ: để cung cấp một máy có RAM 2 GB, hai CPU và ổ SSD 60 GB, hãy sử dụng slug s-2vcpu-2gb
:
- docker-machine create --driver digitalocean --digitalocean-size s-2vcpu-2gb --digitalocean-access-token $DOTOKEN docker-03
Để xem tất cả các cờ cụ thể để tạo Máy Docker bằng trình điều khiển DigitalOcean, hãy nhập:
- docker-machine create --driver digitalocean -h
Mẹo: Nếu bạn làm mới trang Server của console DigitalOcean của bạn , bạn sẽ thấy các máy mới mà bạn đã tạo bằng lệnh docker-machine
.
Bây giờ ta hãy khám phá một số lệnh Docker Machine khác.
Bước 5 - Thực thi các lệnh máy Docker bổ sung
Bạn đã thấy cách cung cấp server lưu trữ được Tài liệu hóa bằng lệnh con create
và cách liệt kê các server có sẵn cho Máy Docker bằng ls
con ls
. Trong bước này, bạn sẽ học thêm một số lệnh con hữu ích.
Để nhận thông tin chi tiết về server lưu trữ được Tài liệu hóa, hãy sử dụng lệnh phụ inspect
, như sau:
- docker-machine inspect docker-01
Đầu ra bao gồm các dòng như dòng trong kết quả sau. Dòng Image
hiển thị version của bản phân phối Linux được sử dụng và dòng Size
cho biết kích thước slug:
Output... { "ConfigVersion": 3, "Driver": { "IPAddress": "203.0.113.71", "MachineName": "docker-01", "SSHUser": "root", "SSHPort": 22, ... "Image": "ubuntu-16-04-x64", "Size": "s-1vcpu-1gb", ... }, ---
Để in cấu hình kết nối cho một server , hãy nhập:
- docker-machine config docker-01
Đầu ra sẽ tương tự như sau:
Output--tlsverify --tlscacert="/home/kamit/.docker/machine/certs/ca.pem" --tlscert="/home/kamit/.docker/machine/certs/cert.pem" --tlskey="/home/kamit/.docker/machine/certs/key.pem" -H=tcp://203.0.113.71:2376
Dòng cuối cùng trong kết quả của lệnh docker-machine config
tiết lộ địa chỉ IP của server lưu trữ, nhưng bạn cũng có thể lấy thông tin đó bằng lệnh :
- docker-machine ip docker-01
Nếu bạn cần tắt server từ xa, bạn có thể sử dụng docker-machine
để dừng nó:
- docker-machine stop docker-01
Xác minh nó đã dừng:
- docker-machine ls
Kết quả cho thấy trạng thái của máy đã thay đổi:
OuputNAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS docker-01 - digitalocean Stopped Unknown
Để bắt đầu lại, hãy sử dụng lệnh con start
:
- docker-machine start docker-01
Sau đó, xem lại trạng thái của nó :
- docker-machine ls
Bạn sẽ thấy rằng STATE
hiện đã được đặt Running
cho server :
OuputNAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS docker-01 - digitalocean Running tcp://203.0.113.71:2376 v18.06.1-ce
Tiếp theo, hãy xem cách tương tác với server từ xa bằng SSH.
Bước 6 - Thực thi lệnh trên server được tài liệu hóa thông qua SSH
Đến đây, bạn đã nhận được thông tin về máy của bạn , nhưng bạn có thể làm nhiều hơn thế. Ví dụ: bạn có thể thực thi các lệnh Linux root trên server Docker bằng cách sử dụng lệnh con ssh
của docker-machine
từ hệ thống local của bạn. Phần này giải thích cách thực hiện các lệnh ssh
qua docker-machine
cũng như cách mở một phiên SSH tới một server Dockerized.
Giả sử rằng bạn đã cấp phép một máy có Ubuntu làm hệ điều hành, hãy thực thi lệnh sau từ hệ thống local của bạn để cập nhật database gói trên server Docker:
- docker-machine ssh docker-01 apt-get update
Bạn thậm chí có thể áp dụng các bản cập nhật có sẵn bằng cách sử dụng:
- docker-machine ssh docker-01 apt-get upgrade
Bạn không chắc server Docker từ xa của bạn đang sử dụng kernel nào? Nhập nội dung sau:
- docker-machine ssh docker-01 uname -r
Cuối cùng, bạn có thể đăng nhập vào server từ xa bằng lệnh docker machine ssh
:
docker-machine ssh docker-01
Bạn sẽ được đăng nhập với quyền là user root và bạn sẽ thấy một cái gì đó tương tự như sau:
Welcome to Ubuntu 16.04.5 LTS (GNU/Linux 4.4.0-131-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage Get cloud support with Ubuntu Advantage Cloud Guest: http://www.ubuntu.com/business/services/cloud 14 packages can be updated. 10 updates are security updates.
Đăng xuất bằng lệnh exit
để quay lại máy local của bạn.
Tiếp theo, ta sẽ hướng dẫn các lệnh của Docker tại server từ xa của ta .
Bước 7 - Kích hoạt Server lưu trữ Tài liệu hóa
Kích hoạt server Docker kết nối ứng dụng Docker local của bạn với hệ thống đó, điều này giúp bạn có thể chạy các lệnh docker
bình thường trên hệ thống từ xa.
Đầu tiên, sử dụng Docker Machine để tạo một server Docker mới có tên là docker-ubuntu
bằng Ubuntu 18.04:
- docker-machine create --driver digitalocean --digitalocean-image ubuntu-18-04-x64 --digitalocean-access-token $DOTOKEN docker-ubuntu
Để kích hoạt server Docker, hãy nhập lệnh sau:
- eval $(docker-machine env machine-name)
Ngoài ra, bạn có thể kích hoạt nó bằng cách sử dụng lệnh sau:
- docker-machine use machine-name
Mẹo Khi làm việc với nhiều server Docker, lệnh docker-machine use
là phương pháp dễ nhất để chuyển từ máy này sang máy khác.
Sau khi nhập bất kỳ lệnh nào trong số này, dấu nhắc của bạn sẽ thay đổi để cho biết rằng ứng dụng client Docker của bạn đang trỏ đến server Docker từ xa. Nó sẽ có dạng này. Tên của server lưu trữ sẽ ở cuối dấu nhắc :
username@localmachine:~ [docker-01]$
Bây giờ bất kỳ lệnh docker
nào bạn nhập tại dấu nhắc lệnh này sẽ được thực thi trên server từ xa đó.
Thực thi lại docker-machine ls
:
- docker-machine ls
Bạn sẽ thấy dấu sao dưới cột ACTIVE
cho docker-01
:
OutputNAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS docker-01 * digitalocean Running tcp://203.0.113.71:2376 v18.06.1-ce
Để thoát khỏi server Docker từ xa, hãy nhập như sau:
- docker-machine use -u
Dấu nhắc của bạn sẽ không hiển thị server đang hoạt động nữa.
Bây giờ hãy tạo containers trên máy từ xa.
Bước 8 - Tạo containers Docker trên server lưu trữ tài liệu hóa từ xa
Lúc này, bạn đã cấp phép cho Dockerized Server trên account DigitalOcean của bạn và bạn đã kích hoạt nó - tức là ứng dụng client Docker của bạn đang trỏ đến nó. Bước hợp lý tiếp theo là quay các container trên đó. Ví dụ: hãy thử chạy containers Nginx chính thức.
Sử dụng docker-machine use
để chọn máy từ xa của bạn:
- docker-machine use docker-01
Bây giờ thực thi lệnh này để chạy containers Nginx trên máy đó:
- docker run -d -p 8080:80 --name httpserver nginx
Trong lệnh này, ta đang ánh xạ cổng 80
trong containers Nginx thành cổng 8080
trên server Dockerized để ta có thể truy cập trang Nginx mặc định từ bất kỳ đâu.
Sau khi containers được tạo, bạn có thể truy cập trang Nginx mặc định bằng cách trỏ trình duyệt web tới http:// docker_machine_ip :8080
.
Trong khi server lưu trữ Docker vẫn được kích hoạt (như tên của nó trong dấu nhắc ), bạn có thể liệt kê các hình ảnh trên server đó:
- docker images
Đầu ra bao gồm hình ảnh Nginx bạn vừa sử dụng:
OutputREPOSITORY TAG IMAGE ID CREATED SIZE nginx latest 71c43202b8ac 3 hours ago 109MB
Bạn cũng có thể liệt kê các containers đang hoạt động hoặc đang chạy trên server :
- docker ps
Nếu containers Nginx bạn đã chạy trong bước này là containers duy nhất đang hoạt động, kết quả sẽ giống như sau:
OutputCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d3064c237372 nginx "nginx -g 'daemon of…" About a minute ago Up About a minute 0.0.0.0:8080->80/tcp httpserver
Nếu bạn định tạo containers trên một máy từ xa, ứng dụng client Docker của bạn phải trỏ tới nó - nghĩa là, nó phải là máy đang hoạt động trong terminal mà bạn đang sử dụng. Nếu không, bạn sẽ tạo containers trên máy local của bạn . , hãy để dấu nhắc lệnh làm hướng dẫn cho bạn.
Docker Machine có thể tạo và quản lý các server từ xa và nó cũng có thể xóa chúng.
Bước 9 - Xóa Server Docker
Bạn có thể sử dụng Docker Machine để xóa server Docker mà bạn đã tạo. Sử dụng lệnh docker-machine rm
để xóa server docker-01
mà bạn đã tạo:
- docker-machine rm docker-01
Server bị xóa cùng với SSH key được tạo cho nó. Liệt kê lại các server :
- docker-machine ls
Lần này, bạn sẽ không thấy server docker-01
được liệt kê trong kết quả . Và nếu bạn chỉ tạo một server lưu trữ, bạn sẽ không thấy bất kỳ kết quả nào.
Đảm bảo thực thi lệnh docker-machine use -u
để trỏ daemon Docker local của bạn trở lại máy local của bạn.
Bước 10 - Tắt báo cáo sự cố (Tùy chọn)
Theo mặc định, khi nào nỗ lực cung cấp server lưu trữ Dockerized bằng Docker Machine không thành công hoặc Docker Machine gặp sự cố, một số thông tin chẩn đoán sẽ được gửi đến account Docker trên Bugsnag . Nếu không thoải mái với điều này, bạn có thể tắt báo cáo bằng cách tạo một file trống no-error-report
tên là no-error-report
trong folder .docker/machine
của máy tính local của bạn.
Để tạo file , hãy nhập:
- touch ~/.docker/machine/no-error-report
Kiểm tra file để tìm thông báo lỗi nếu cấp phép không thành công hoặc Máy Docker bị treo.
Kết luận
Bạn đã cài đặt Docker Machine và sử dụng nó để cung cấp nhiều server Docker trên DigitalOcean từ xa từ hệ thống local của bạn. Từ đây, bạn có thể cung cấp nhiều server lưu trữ Tài liệu hóa trên account DigitalOcean của bạn khi bạn cần.
Để biết thêm về Docker Machine, hãy truy cập trang tài liệu chính thức . Ba tập lệnh Bash được download trong hướng dẫn này được lưu trữ trên trang GitHub này .
Các tin liên quan
Cách cài đặt và bảo mật OpenFaaS bằng Docker Swarm trên Ubuntu 16.042018-09-19
Cách cài đặt Docker Compose trên Debian 9
2018-09-06
Cách cài đặt và sử dụng Docker trên Debian 9
2018-09-04
Cách chia sẻ dữ liệu giữa Docker Container và Host
2018-07-11
Cách cài đặt Docker Compose trên Ubuntu 18.04
2018-07-09
Cách cài đặt và sử dụng Docker trên Ubuntu 18.04
2018-07-05
Cách kiểm tra bảo mật server Docker với Docker Bench cho bảo mật trên Ubuntu 16.04
2018-06-14
Cách cung cấp và quản lý server Docker từ xa bằng Máy Docker trên Ubuntu 16.04
2018-05-21
Cách cung cấp và quản lý server Docker từ xa bằng Máy Docker trên CentOS 7
2018-05-21
Cách quản lý và giám sát các container Docker có khô trên Ubuntu 16.04
2018-04-25