Hướng dẫn sử dụng docker-compose
Nhận thấy đây là một công nghệ hay và hữu ích và đang có xu hướng, nên lần này Hybrid topics tiếp tục chia sẻ về cách sử dụng Docker chi tiết. Show
II. Cài đặt:Docker có hỗ trợ trên Linux, Windows, Ubuntu. Ở bài viết này, mình sẽ cài đặt trên môi trường Windows 10. Các môi trường khác cũng đơn giản như cài đặt các phần mềm khác. Hướng dẫn chi tiết tại. https://docs.docker.com/engine/installation/ . Để cài đặt trên windows, thực hiện các bước sau:
Ghi chú: Ngoài màn hình Terminal của docker, có thể sử dụng cmd, Gitbash … để sử dụng lệnh của docker. Tuy nhiên có thể gặp lỗi này “An error occurred trying to connect: Get http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.24/images/json: open //./pipe/docker_engine: The system cannot find the file specified.” Có thể sửa lỗi này bằng cách trước khi mỗi lần mở cmd/Gitbash, dùng lệnh docker-machine env . Sau đó copy dòng cuối cùng của kết quả lệnh trên và thực thi. III. Docker gồm những gì?Registry => Images => Container Registry (Docker Hub) là server trung tâm nơi chứa các images original, hoặc các bản images đã được cài đặt chỉnh sửa theo nhu cầu riêng biệt. Images: là OS, một ứng dụng đã được cài đặt và đóng gói. Image chỉ có quyền đọc. Container là bản thực thể của một image, được clone ra từ image, mọi người sẽ sử dụng và làm việc trên container là chính Registry (Docker Hub) nằm ở server internet, còn images và container nằm ở máy người dùng. IV. Các lệnh cơ bản thường dùng:1. Hiển thị danh sách các images :.png” alt=”” width=”806″ height=”163″ />docker images 2. Tải image về localdocker pull (phần :tag là options, nếu để trống thì mặc định download bản latest ) Ví dụ: docker pull ubuntu => download ubuntu latest docker pull ubuntu:14.04 => download ubuntu version 14.04 Truy cập trang https://hub.docker.com/ , nơi lưu trữ các images tập trung để tìm images cần dùng. 3. Chạy một imagedocker run –name Ví dụ: docker run –name eva_nginx -p 80:80 -d nginx docker ps -a (liệt kê tất cả các container) docker ps ( chỉ liệt kê các container đang chạy background) docker stop docker stop $(docker ps –a –q) (Dừng tất cả các docker đang dùng) docker start docker rm docker rm $(docker ps -a -q) (Xóa tất cả các docker) docker exec -it docker export zcat file_export.tar.gz | docker Ngoài ra còn nhiều lệnh khác. Sử dụng lệnh docker -h để xem chi tiết. Các bước thực hiện: 1. Tải images rails và mysql. Nếu trong list images đã có rồi thì có thể bỏ qua bước này. docker pull rails docker pull mysql 2. Khởi động Cách chạy mỗi images có các options khác nhau. Các bạn có thể truy cập https://hub.docker.com/ lựa chọn đúng bản image để xem chi tiết nhé. Khởi động mysql docker run –name eva_mysql -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 -d mysql (ở đây có option MYSQL_ROOT_PASSWORD đặt mật định cho tài khoản root) Đã khởi động xong mysql. Tiếp theo khởi động rails có liên kết với mysql. Ở đây mình sync (-v “$PWD”:/my_app) thư mục hiện tại trên máy tính với thư mục /my_app trong container. docker run -it –name eva_rails -v “$PWD”:/my_app –link eva_mysql:mysql -p 3000:3000 rails bash Bước tiếp theo, mình cấu hình lại file cấu hình của framework Rails trong file database.yml theo thông số : host: 192.168.99.100 port: 3306 username: root password: root Như thế mình đã setup xong cơ bản môi trường phát triển rails + mysql. Chúng ta có thể chạy ứng dụng thông qua địa chỉ IP 192.168.99.100:3000. Qua bài hướng dẫn cơ bản này, hy vọng mọi người hình dung được cấu trúc, hệ thống, cách làm việc của Docker. Trong bài viết sắp tới, mình sẽ hướng dẫn mọi người phần xây dựng môi trường bằng Dockerfile và Docker compose. |