docker today

Tom
Tom
Aug 23, 2017 · 5 min read

Trong loạt bài viết về docker

  1. Ngày 1: Tôi đến với docker như thế nào ?
  2. Ngày 2: Docker composite là gì ?
  3. Ngày 3: Docker cluster và docker machine là gì ?

Bài viết này là bài viết đầu tiên trong loạt bài viết nói trên. Các bạn nên đọc phần này trước khi bắt đầu các phần khác. Muốn nhanh phải từ từ 😀

Thường thì ngày đầu tiên là ngày vất vả nhất. Nhưng điều đó chỉ đúng với cái gì lặp đi lặp lại thôi. Với IT thì ngày nào cũng vất vả cả. Vì vậy theo tôi ngày đầu tiên là ngày dễ nhất, bởi vì ngày thứ 2 và ngày thứ 3 sẽ đi sâu hơn và cần nhiều kiến thức hơn.

1. Vấn đề ngày đầu tiên làm chuyện ấy.

Chả là ngày hôm ấy tôi phải làm một dự án ruby và cần phải chạy nó trên một host centos OS. Trong khi máy đang làm việc là Window. Tôi là dev thuần đúng nghĩa. Bao lâu nay chỉ có code và code. Debug và test trên cái eclipse tuyệt vời. Giờ chui vào deploy project. Phải làm thôi, vì muốn code tốt hơn thì anh phải biết về hệ thống nữa, mà deploy là một phần của nó.

Sơ đồ phát triển phần mềm của một coder

Lần đầu làm chuyện ấy bỡ ngỡ lắm. Nhưng tốt nhất là phải tìm ra đường đi. Đi hỏi bác google xem em nên đi đường nào cho tốt và ngắn nhất. Tra khảo một hồi thì bác nói là em phải tạo một máy ảo trên máy tính hiện tại của mình. Máy ảo đó sẽ chạy trên máy thực (nó là máy window). Tôi đi được bước đầu tiên trên con đường rồi.

Hinh 2. Target

Nhiệm vụ của chúng ta là phải tạo một cái gì đó (có thể là máy ảo-virtual machine). Sau đó cài đặt các thư viện và app lên trên đó. Sau đó thì có thể test nó trên máy chủ (hiện tại là window).

Trong quá trình tìm hiểu em nhận được 3 cái này các bác ạ.

  • VirtualBox
  • Vagrant
  • Docker
  • VMWare (liệt kê ra thôi. chứ em không biết) 😀

Chọn cái nào thì cũng phải tìm hiểu xem nó đẹp, xấu thế nào chứ. Các bác thế nào chứ khi em tìm hiểu thì em cứ vào wiki trước. xem nó là gì rồi sau đó tính tiếp. Trong đó các bác nhớ đọc và hiểu từng chữ nhé. Đừng đọc sơ qua vì sót một chữ là sai đi luôn một công cụ đó các bác.

//TODO phần giải thích các ưu điểm của các phần trên.

2. Giải quyết vấn đề bằng Docker

Hình 3 : Container vs Virtual Machine

Đến với Docker em có cái nhìn khác. Nó xem tất cả os là App. Và chỉ cần một máy ảo để chạy các app đó. Tiện không các bác. Em là người mới bắt đầu mà thì cũng hì hục đào thôi. Trước tiên phải làm cho nó chạy lên đã. Đọc wiki thì phần này chưa đủ được. Phải vào các blog hướng dẫn step by step, nhiều blog lắm. Ở đây em tổng hợp lại rồi em làm ví dụ thôi.
Chuẩn bị.

Ở đây nếu bạn đang dùng window 7 thì các làm theo các hướng dẫn ở bài viết này Cài đặt docker trên window 7.

Ở đây em đang làm trên window 10. Nó hơn window 7 cái là có cái Hyper-Virtual. Tức là win 10 cho phép tạo máy ảo bằng Hyper này thay vì các phần mềm virtualBox … Đơn giản vậy thôi.

Do đo phải active cái Hyper-V nên các bác.

Sau khi Hyper-V rồi thì phải cài docker vào máy. Đơn giản như ăn kẹo luôn, down lốt từ https://www.docker.com/docker-windows. down về rồi nhớ cài nhé các bác. 😃

Cài xong các bác cài cho em cái Docker tool luôn nhé.

Sau khi cài xong tất cả rồi thì start docker lên nhé.Không biết máy các bác thế nào chứ máy em nó chạy hơi lâu. Sau khi nó chạy xong nó sẽ báo Docker is running . Các bác nào không báo thì tức là chưa chạy xong hoặc cài sai gì đó rồi 😄. Để confirm xem cài đặt là ok thì các bác mở giúp em Windows Power Shell ở chế độ admin nhé.

Vậy là ok rồi. Giải thích về cái client và server nhé. Client là máy đang gọi đến server, ở đây là máy window của mình. Server chính là Docker Enginer là một máy ảo chạy linux đó.

Tới đây thì tất cả phải dùng bằng lệnh các bác ạ.

2.1 Tạo Centos OS cho tôi đi.

Ai cũng vậy. Chỉ có 1 ngày để làm việc trước tiên thì cứ cắm đầu vào chạy được target của mình đi. Sau đó tìm hiểu so sánh sau.

để chạy được một máy ảo bây giờ ta cần đi từ SHIP → BUILD → RUN

SHIP : Lấy image từ repository, pull nó về thôi

BUILD: Dùng lệnh Run thì chúng ta sẽ tạo một container run image mà chúng ta chỉ định.

RUN: Cái này chắc chưa tìm hiểu bây giờ.

)
Tom

Written by

Tom

Developer at ABC.com company.https://about.me/nguyen.tom/

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade