Docker là gì?
TIL
640
White

Ông Già Ế viết ngày 18/12/2017

alt text#Docker là gì?
Gần đây Docker đang được thảo luận và gây được nhiều chú ý trong cộng đồng công nghệ trên thế giới, với nhiều hứa hẹn trong tương lai. Các hãng công nghệ lớn như Google, Amazon, Microsoft đã bắt đầu hỗ trợ Docker trên nền tảng của họ, và ở Sài gòn có luôn cộng đồng Docker nếu bạn thích có thể tham gia meetup tại đây Vậy Docker là gì? Hãy cùng tìm hiểu thêm tại Gsviec

Định nghĩa Docker

Nó là một công cụ tạo môi trường được “đóng gói” (còn gọi là Container) trên máy tính mà không làm tác động tới môi trường hiện tại của máy, môi trường trong Docker sẽ chạy độc lập.

Một số khái niệm
– Docker images : Mỗi khi bạn muốn chạy ứng dụng Docker là thì bạn cần một cái image, cái image này có thể là HĐH Centos hoặc Linux, đã cài sẵn các ứng dụng PHP, Nginx

– Docker registries : Là kho chứa images. Người dùng có thể tạo ra các images của mình và tải lên bất kỳ đâu, miễn là người khác có thấy được, Hầu nết mình thường lên đây tham khảo link

– Docker container : hoạt động giống như một thư mục (directory), chứa tất cả những thứ cần thiết để một ứng dụng có thể chạy được. Mỗi một docker container được tạo ra từ một docker image.

– Dockerfile : là một file chứa tập hợp các lệnh để Docker có thể đọc và thực hiện để đóng gói một image theo yêu cầu người dùng, chúng ta thường làm việc với tập tin này nhất

Khác biệt với máy ảo
Điểm khác biệt chính là các containers sử dụng chung kernel với Host OS nên các thao tác bật, tắt rất nhẹ nhàng, nhanh chóng. Do nó sử dụng chung nhân Linux nên rất có sự khác biệt so với dùng máy ảo Virtuhost

Các lệnh căn bản
Tạo một container từ image có sẵn:

Liệt kê các container đang chạy: docker ps
= Khởi động và truy cập lại vào một container đã tắt:

Xoá một container: docker rm < ID container>

Kéo và đẩy lên hub docker: docker pull : và docker push :
Trên đây là những lệnh chúng ta thường dùng, còn để hiểu rõ hơn chúng tôi nghĩ các bạn nên vào trang chủ Docker để hiểu rõ hơn

Chú ý
Ngay tại thời điểm này Docker dành cho client có vẻ làm việc tốt trên Linux, tôi đã sủ dụng nó trên Macos thì chỉ có một câu như SHIT, và window càng tệ hơn, huy vọng sẽ được cải tiến nhiều, đây là điểm trừ của nó so với Vagrant

Khi nào dùng Docker
Thực ra hiện tại nếu dự án của bạn không phải dạng micro service thì không nên dùng Docker, việc tách ghép các dịch vụ PHP, Nginx đặc biệt là Mysql ra riêng đối với cá dự án tầm trung là không cần thiết, bản thân tôi thấy tất cả mọi thừ đều có thể tách app ra dùng chung Docker, nhưng riêng Mysql(cơ sở dữ liệu) thì không nên, tôi vẫn có cảm giác một cái gì đó không an tâm cho lắm đặc biệt là Migration, backup, của cơ sở dữ liệu, trên đây chỉ là cảm nhận của tôi khi làm việc Mysql với Docker

Nếu như công ty bạn có đội ngũ Devops thì OK, áp dụng thoả mái chứ các cty mà không có team đó cứ áp dụng là cũng có ngày ôm hận

Kết luận
Với Docker bạn không còn bận tâm setup môi trường dev nữa, chỉ cần một người làm xong thì cả nhóm có thể dùng nó, và quan trọng hơn là bạn cấu hình một lần là có thể deploy lên staging hay production một cách nhanh nhât, so với Vagrant thì Docker có vẻ chiếm ưu thế hơn, nhưng cá nhân mình vẫn thích dùng Vagrant, nếu bạn muốn tìm hiểu chạy ứng dụng PHP thông qua docker thì có thể xem bài viết này

Nguồn: Gsviec.com

OngGiaE 18-12-2017

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Ông Già Ế

1 bài viết.
0 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Bài viết liên quan
White
0 2
fCC: Technical Documentation Page note So I have finished the HTML part of this exercise and I want to come here to lament about the lengthy HTML ...
HungHayHo viết 6 tháng trước
0 2
White
20 1
Toán tử XOR có tính chất: + A XOR A = 0 + 0 XOR A = A Với tính chất này, có thể cài đặt bài toán sau với độ phức tạp O(N) về runtime, và với O(1)...
kiennt viết 2 năm trước
20 1
White
9 0
Có một tuyên ngôn cho chủ nghĩa tối giản trong ngành phần mềm. Link: http://minifesto.org/ Fight for Pareto's law, look for the 20% of effort th...
Cẩm Huỳnh viết 3 tháng trước
9 0
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
1 bài viết.
0 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!