Open Jacobvu84 opened 4 years ago
Vào mục Application mở ứng dụng VirutalBox sau đó chọn máy ảo tên là appium-docker.
Chọn mục USB và lựa chọn Android devices muốn thêm.
Trong hình. MÌnh có 2 thiết bị Android
$ adb kill-server
Mục đích là để tránh xung đột giữa ADB trên host và container
$ docker run --privileged -d -p 4723:4723 -v /dev/bus/usb:/dev/bus/usb --name container-appium appium/appium
Các bạn cần lưu ý. Đây là docker được chạy trên máy ảo có tên là appium-docker chứ không phải là docker trên host.
Để kiểm tra bạn có thể ssh vào máy ảo từ host thông qua lệnh sau
$ docker-machine ssh container-appium
Lúc này trên màn hình console sẽ
( '>')
/) TC (\ Core is distributed with ABSOLUTELY NO WARRANTY.
(/-_--_-\) www.tinycorelinux.net
docker@container-appium:~$
Nghĩa là bạn đã ssh thành công. Lúc này bạn có thể sử dụng các lệnh adb trên container-appium giống như lệnh adb trên host.
Bước 01: Cài đặt docker
Bạn có thể cài đặt docker thông qua brew như sau
$ brew install docker
Hoặc bạn có thể tải bộ cài và tiến hành cài đặt tại https://docs.docker.com/docker-for-mac/install/
Bước 02: Cài đặt docker-machine
Tại sao cần cài đặt docker-machine? Bởi vì docker daemon ( service) sử dụng các tính năng dành riêng trên kernel dành cho Linux
Để tiến hành cài đặt docker-machine bạn chạy lệnh
$ brew install docker-machine
Đối với bản desktop tải trên trang chủ có thể docker-machine đã được cài đặt cùng trong quá trình cài đặt docker.
Bước 03: Tạo VM từ docker-machine
Như đã nói ở trên do docker không thể chạy trực tiếp trên Mac nên chúng ta cần tạo một VM. Thực hiện lệnh sau đây để tạo máy ảo
$ docker-machine create --driver virtualbox appium-docker
Bạn sẽ nhìn thấy thông báo lỗi với nội dung kiểu như sau: Error with pre-create check: "VBoxManage not found. Make sure VirtualBox is installed and VBoxManage is in the path"
Điều đó có nghĩa là bạn cần phải cài thêm VirtualBox.
Để tiến hành cài VirtualBox. Bạn có thể chạy lệnh
$ brew cask install virtualbox
Hoặc có thể download và cài đặt với bản desktop tại: https://www.virtualbox.org/wiki/Downloads. Chọn OS X hosts
Bước 04: Mount cổng USB từ host đến container.
Mục đích của bước này cho phép bạn có thể sử dụng các cổng USB của host ( máy được cài đặt docker) từ bên trong container ( docker host)
Để enable USB trong container các bạn chạy lệnh sau
Tuỳ thuộc vào version của VirtualBox, có thể bạn sẽ gặp lỗi sau: "Implementation of the USB 2.0 controller not found" Để khắc phục bạn cần cài thêm Extension Pack. Chú ý chọn đúng package tương ứng với version của bản VirtualBox mà bạn vừa cài.
Trên trang chủ của VirtualBox bạn sẽ nhìn thấy phần này. Hãy download và update.
Để kiểm tra xem có bao nhiêu máy ảo đang chạy bạn gõ lệnh
$ docker-machine ls