‫Bây giờ chúng ta đã thấy những bí mật với các dịch vụ, hãy cùng xem những bí mật với ngăn xếp. Trong thư mục này, tôi đang ở trong mẫu bí mật
‫thứ hai, và trong
‫thư mục này, tôi có tệp Soạn và sau đó là hai bí mật được lưu trữ trong tệp văn bản.
‫Vì vậy, đó là mật khẩu và tên người dùng tương tự mà chúng ta đã có trong bài giảng trước, nhưng bây giờ chúng ta đã
‫xác định tất cả những điều này trong một tệp Soạn. Chúng tôi có một số điều khác nhau ở đây.
‫Điều đầu tiên là phiên bản của tệp Soạn thư của bạn bây giờ phải là 3. 1. Để có bí mật, chúng
‫tôi phải ở. 1 bản phát hành 3 cái.
‫Vì vậy, chúng ta cần có 3 để sử dụng ngăn xếp, nhưng để sử dụng ngăn xếp với bí mật, chúng ta cần có 3. 1 hoặc mới
‫hơn.
‫Điều thứ hai chúng ta sẽ nhận thấy là ở phía dưới, chúng ta có khóa bí mật gốc này và đó là nơi chúng ta
‫xác định bí mật của mình.
‫Hai cách bạn có thể thực hiện bí mật trong tệp Soạn là sử dụng tệp cho từng bí
‫mật hoặc tạo trước các bí mật.
‫Ở đây chúng tôi thực sự chỉ đang sử dụng các
‫tệp, nhưng những gì chúng tôi có thể làm là tự tạo ra những bí mật đó bằng một số phương pháp khác thông
‫qua CLI, như bạn đã thấy hoặc có thể thông qua API trực tiếp. Sau đó, chúng tôi sẽ chỉ thay vì tệp:
‫bên dưới nó, nó sẽ chỉ nói bên ngoài: và nó sẽ là tên của bí mật bên trong danh sách bí
‫mật.
‫Chúng tôi cần nói với Compose file về bí mật của chúng tôi và vị trí của chúng, sau đó chúng tôi thực sự chỉ định
‫chúng cho các dịch vụ cần chúng.
‫Đó là chìa khóa bởi vì những gì chúng tôi thực sự đang nói ở đây là chỉ có vật chứa muốn bí mật
‫của chúng tôi mới có được bí mật của chúng tôi. Nếu đây là một tệp Soạn phức tạp trong đó chúng tôi có nhiều dịch vụ, chúng tôi có thể có các
‫bí mật khác nhau cho các dịch vụ khác nhau.
‫Trước tiên, chúng tôi sẽ xác định tất cả chúng ở dưới cùng và sau đó chúng tôi sẽ chỉ định chúng cụ
‫thể ở từng dịch vụ.
‫Tôi sẽ nói rằng đây thực sự được coi là hình thức ngắn hoặc cách dễ dàng để thực hiện các bí mật theo
‫một dịch vụ.
‫Thực sự có một biểu mẫu dài cho phép bạn xác định những thứ như quyền và người dùng được phép
‫truy cập bằng cách sử dụng chế độ Linux tiêu chuẩn và cú pháp ID người dùng.
‫Vì vậy, nếu bạn đang chạy các ứng dụng với tư cách là người dùng không phải root, bạn sẽ muốn nhắm mục tiêu những bí mật này để chỉ
‫người dùng đó có thể truy cập chúng.
‫Nhưng vì lợi ích của đơn giản trong ví dụ đầu tiên này, chúng tôi chỉ sử dụng mẫu ngắn.
‫Tất cả những gì tôi cần làm là sử dụng tệp đó trong lệnh triển khai ngăn xếp tiêu chuẩn. Vì vậy, hãy triển khai docker-soạn và chúng tôi
‫sẽ gọi đây là mydb. Bạn sẽ thấy, giống như trước đây, nó thực sự tạo ra mạng trước.
‫Trong trường hợp này, nó thực sự tạo ra các bí mật trước và sau đó tạo ra dịch vụ.
‫Nếu tôi đã đi và thực hiện tra cứu bí mật Docker, thì bạn sẽ thấy rằng cả hai đều ở trong đó và nó tuân theo quy
‫ước đặt tên giống như tất cả các thành phần ngăn xếp khác, trong đó nó luôn là tên ngăn xếp và sau đó
‫là tên của đối tượng.
‫Cũng giống như trong bài giảng trước, nếu tôi nhảy lên máy chủ SQL và thực sự
‫tìm kiếm các tệp đó, chúng sẽ ở đó giống như trước đây; chỉ bây giờ, chúng được quản lý bên trong tệp ngăn xếp của chúng tôi.
‫Điều thú vị ở đây là nếu tôi loại bỏ ngăn xếp của mình, nó cũng sẽ xóa sạch các bí mật và loại bỏ chúng. Trong ví dụ trước, nếu chúng ta muốn xóa
‫các bí mật của
‫mình, chúng ta sẽ phải thực hiện một rm bí mật của docker để thực sự xóa từng
‫bí mật. Như một lời nhắc cuối cùng, trong
‫các ví dụ này, chúng tôi đã sử dụng tệp văn bản trên máy chủ này và chúng tôi đang nói về nhóm 3
‫nút ở đây.
‫Nhưng nếu bạn đang ở trong môi trường sản xuất hoặc thực sự bất kỳ thứ gì không có trên máy cục
‫bộ của bạn, bạn không nên giữ bí mật trong tệp hoặc trong tệp lịch sử cơ sở hoặc bất kỳ nơi nào có thể có trên
‫máy chủ đó.
‫Đó là kiểu đánh bại mục đích có được những bí mật ngay từ đầu. Dù quy trình của bạn là gì để
‫lấy bí mật vào Swarm, chỉ cần biết rằng
‫bạn có thể cần phải dọn dẹp sau khi hoàn thành ở đó để không để lại những bí mật còn
‫sót lại mà mọi người dễ lấy.