​Hướng dẫn 2 cách khởi động Container một cách tự động

09/12/2020

Có hai cách để khởi động Container một cách tự động. Bạn có thể sử dụng những tiện ích của Docker. Hoặc bạn có thể sử dụng Process Manager. Tuy nhiên, chúng ta nên chọn cách nào để khởi động Container? Bài viết này, Viettel IDC sẽ đưa ra một số phân tích chi tiết của mình nhé.

2 cách giúp bạn khởi động Container một cách tự động

2 cách giúp bạn khởi động Container một cách tự động

Tại sao bạn nên sử dụng chính sách hỗ trợ khởi động Container lại của Docker?

Docker cung cấp các chính sách hỗ trợ khởi động Container lại nhằm mục đích để kiểm soát việc Container của bạn tự động khởi động khi chúng thoát ra hay khi Docker khởi động lại. Chính sách khởi động Container này đảm bảo rằng các Container đã liên kết trước đó được bắt đầu theo đúng thứ tự. Chúng tôi khuyên bạn nên sử dụng chính sách hỗ trợ tự khởi động Container lại này và tránh sử dụng trình quản lý quy trình (Process Manager) để khởi động Container.

Các chính sách hỗ trợ khởi động Container lại khác với dấu hiệu --live-restore của lệnh dockerd. Việc sử dụng --live-restore cho phép bạn vẫn duy trì được các Container của mình chạy trong quá trình nâng cấp Docker, mặc dù mạng và đầu vào của người dùng sẽ bị gián đoạn đôi chút.

>> Xem thêm: Container là gì? Đặc điểm kỹ thuật của Container?

2 cách để hỗ trợ khởi động Container lại

Cách 1: Sử dụng chính sách hỗ trợ khởi động Container lại

Để có thể cấu hình chính sách hỗ trợ khởi động Container lại, bạn hãy sử dụng cờ --restart khi sử dụng lệnh docker run. Giá trị của cờ --restart có thể là bất kỳ giá trị nào sau đây:

+ no: Không tự động khởi động Container lại. (mặc định)

+ on-failure: Khởi động Container lại trong trường hợp nếu nó thoát do lỗi, biểu hiện dưới dạng mã thoát non-zero.

+ always: Luôn khởi động Container lại nếu nó dừng lại. Nếu nó bị dừng theo cách thủ công, nó chỉ được khởi động lại khi Docker daemon khởi động lại. Hoặc chính Container được khởi động lại theo cách thủ công. 

+ unless-stopped: Tương tự như always. Nhưng nó áp dụng cho trường hợp khi Container bị dừng (theo cách thủ công hoặc bằng một cách nào đó), nó không được khởi động lại ngay cả sau khi Docker daemon đã khởi động lại.

Chi tiết chính sách khởi động Container lại

Hãy ghi nhớ những điều sau khi sử dụng chính sách khởi động Container lại:

+ Chính sách khởi động Container lại chỉ có hiệu lực sau khi Container khởi động thành công. Trong trường hợp này, bắt đầu thành công có nghĩa là Container đã hoạt động ít nhất 10 giây và Docker đã bắt đầu giám sát nó. Điều này ngăn một Container vẫn chưa ở trạng thái bắt đầu nhưng đã đi vào vòng lặp khởi động lại.

+ Nếu bạn dừng một Container theo cách thủ công, chính sách khởi động Container lại của nó sẽ bị bỏ qua cho đến khi hoặc là daemon Docker khởi động lại hoặc là Container đó được khởi động lại theo cách thủ công. Đây là một nỗ lực khác để ngăn vòng lặp khởi động lại.

+ Chính sách khởi động Container lại chỉ áp dụng cho Container mà thôi. Các chính sách khởi động lại cho dịch vụ Swarm được cấu hình khác nhau. 

Sử dụng cơ chế của Docker để khởi động Container lại

Sử dụng cơ chế của Docker để khởi động Container lại

Cách 2: Sử dụng Process Manager

Nếu các chính sách khởi động Container lại không phù hợp với nhu cầu của bạn, chẳng hạn như khi các quy trình bên ngoài Docker phụ thuộc vào các Docker Container, bạn có thể sử dụng một Process Manager ví dụ Upstart, Systemd hay Supervisor để thay thế.

Lưu ý, bạn đừng cố gắng kết hợp các chính sách khởi động lại Docker với Process Manager cấp máy chủ, vì điều này tạo ra xung đột.

Để sử dụng Process Manager, hãy cấu hình nó để khởi động Container hoặc dịch vụ của bạn bằng cách sử dụng câu lệnh tương tự như docker start hoặc docker service , bạn sẽ có thể khởi động Container một cách thủ công.

>> Xem thêm: Ảo hóa Container và Virtual Machine khác nhau như thế nào?

Sử dụng Process Manager bên trong Container

Các Process Manager cũng có thể chạy trong Container để kiểm tra xem quy trình có đang chạy hay không và khởi động khởi động Container hoặc khởi động lại nó nếu như nó không xảy ra.

Lưu ý, Docker không khuyến nghị cách tiếp cận này, vì nó phụ thuộc vào nền tảng. Thậm chí nó còn có thể phụ thuộc vào sự khác nhau trong các phiên bản khác nhau của một bản Linux nhất định.

Kết luận

Bài viết vừa rồi Viettel IDC đã đề cập đến hai hình thức giúp khởi động Container một cách tự động. Qua đánh giá thì việc sử dụng chính sách hỗ trợ khởi động Container lại của Docker phần nào an toàn hơn cho người sử dụng. Tuỳ vào nhu cầu và hệ thống của mình, bạn đọc có thể tham khảo thêm để đưa ra những sựa lựa chọn phù hợp nhé.

Ngoài ra, mỗi khi nhắc đến khái niệm về Docker hay Container thì chắc hẳn bạn cũng đang tìm kiếm một dịch vụ liên quan đến Kubernetes. May mắn là hiện tại Viettel IDC cũng đang có chương trình hỗ trợ dùng thử và trải nghiệm đối với dịch vụ Viettel Kubernetes Service. Nếu bạn đọc quan tâm, hãy liên hệ với Viettel IDC để được tư vấn thêm nhé.

Để tìm hiểu thêm về các dịch vụ Viettel Kubernetes Service, vui lòng liên hệ đến Viettel IDC:

- Hotline: 1800.8088 (miễn phí cước gọi)

- Fanpage: https://www.facebook.com/viettelidc

- Website: https://viettelidc.com.vn

Viettel IDC – Nhà cung cấp dẫn đầu về giải pháp Trung tâm dữ liệu và Điện toán đám mây tại Việt Nam

Tin liên quan

30/11/2021

[Cẩm nang Cloud] ​10 tính năng chính của Điện toán Đám mây

Người ta thấy rằng Điện toán đám mây là một mô hình cho phép truy cập mạng theo yêu cầu, phổ biến, thuận tiện khi truy cập vào các tài nguyên máy tính. Có rất nhiều dịch vụ và tính năng của điện toán đám mây.

29/11/2021

[Cẩm nang Cloud] Hướng dẫn về Điện toán đám mây cho người mới bắt đầu

Để khởi động chuyên mục này, chúng ta sẽ bắt đầu tìm hiểu về Điện toán đám mây – Cloud Computing thông qua Chuyên mục “Cẩm nang Cloud”. Ở bài viết này, Viettel IDC sẽ đề cập đến tất cả các thông tin như lịch sử hình thành, đặc điểm, ưu điểm, nhược điểm và các loại hình Điện toán đám mây.

25/11/2021

Ra mắt Chuyên mục Cẩm nang Cloud: Điện toán đám mây dành cho người mới bắt đầu

Viettel IDC ra mắt chuyên mục Cẩm nang Cloud để đồng hành cùng tất cả mọi người trên còn đường bắt đầu tìm hiểu về Cloud, giúp người dùng, khách hàng hay doanh nghiệp có thể hiểu rõ tường tận và biết cách ứng dụng Cloud vào tổ chức của mình một cách hiệu quả và tối ưu nhất!

23/11/2021

Snapshot là gì? Sự khác biệt giữa Snapshot và Backup

Hiện nay, không ít người dùng vẫn còn đăng thắc mắc Snapshot là gì? Sự khác biệt giữa Backup và Snapshot là gì? Tất cả những điều này sẽ được Viettel IDC chia sẻ và phân tích đến độc giả kỹ hơn trong bài viết dưới đây. Hãy cùng chúng tôi theo dõi hết bài viết, để không qua qua những thông tin hữu ích nhé.

16/11/2021

Tìm hiểu về tiêu chuẩn ISO/IEC 20000-1 về quản lý dịch vụ công nghệ thông tin

Mới đây, Viettel IDC đã chính thức hoàn thành và được TÜV Rheinland cấp chứng nhận ISO/IEC 20000-1:2018 – tiêu chuẩn toàn cầu mô tả các yêu cầu đối với hệ thống quản lý dịch vụ công nghệ thông tin (ITSM). Bài viết này sẽ giúp bạn hiểu hơn về tiêu chuẩn này.

12/11/2021

​Viettel IDC hoàn thành đánh giá chứng nhận ISO/IEC 20000-1:2018 về quản lý dịch vụ CNTT

Tháng 10/2021, Viettel IDC đã chính thức hoàn thành và được TÜV Rheinland cấp chứng nhận ISO/IEC 20000-1:2018 – tiêu chuẩn toàn cầu mô tả các yêu cầu đối với hệ thống quản lý dịch vụ công nghệ thông tin (ITSM).

31/10/2021

Trải nghiệm ngay Hosting dùng thử chất lượng tại Viettel IDC

Bạn đang muốn tìm các nhà cung cấp dịch vụ Hosting uy tín, trong đó có Viettel IDC, nhưng bạn còn băn khoăn về chất lượng của dịch vụ này? Hosting dùng thử sẽ là giải pháp tốt nhất cho bạn để trải nghiệm thử chất lượng của dịch vụ.

31/10/2021

Cần thuê Hosting chất lượng? Tìm hiểu ngay tại Viettel IDC

Thuê Hosting là một trong những yếu tố quan trọng giúp bạn có thể bắt đầu xây dựng Website riêng cho mình. Nhưng, chúng ta cần tìm Hosting chất lượng ở đâu? Trên thị trường đang tràn lan nhiều nhà cung cấp dịch vụ Hosting, nhưng bạn không biết nên lựa chọn đơn vị nào cho uy tín?

31/10/2021

ASP NET là gì? Nên sử dụng Host ASP NET hay PHP?

Trong thời đại 4.0, nhiều loại ngôn ngữ lập trình Web và dịch vụ Hosting khác nhau đã được ra đời nhằm phục vụ cho việc xây dựng và phát triển Website, điển hình như Host ASP NET. Đây là dịch vụ Hosting được xây dựng dành riêng cho các nhà phát triển sử dụng khung mã nguồn ASP NET.

31/10/2021

Điểm nhanh 7 lợi ích mà Web Portal mang lại cho người dùng

Hiện nay, không qua bất ngờ khi Web Portal là hệ thống được khá nhiều cơ quan, tổ chức hay doanh nghiệp muốn đưa vào sử dụng thay cho các website thông thường, bởi những lợi ích vô cùng tuyệt vời mà Web Portal mang lại. Qua bài viết này, Viettel IDC sẽ chia sẻ đến độc giả những lợi ích mà Web Portal đã và đang mang lại cho người dùng. H

// doi link