ყოველ ჯერზე, როცა Compose ფაილს აზიარებთ, არსებობს ორი არტეფაქტი: ის, რომელიც დაწერეთ, და ის, რომელსაც ხელსაწყო ცვლადების ჩანაცვლების შემდეგ არენდერებს. მეორე ხშირად უფრო მგრძნობიარეა, ვიდრე პირველი, და სწორედ მას აკრავენ ხალხი პრობლემის ანგარიშს არც კი წაკითხვის გარეშე. თუ მხოლოდ წყაროს ფაილს ამოწმებთ, არასწორ დოკუმენტს ამოწმებთ.

სანამ გადაწყვეტთ, რა უნდა წაშალოთ, შეადარეთ, რისი შენახვა შეუძლია თითოეულ ასლს.

დარენდერებული მოდელი სხვა დოკუმენტია

Compose ამუშავებს გარემოს ცვლადებს, აერთიანებს გადაფარვის ფაილებს და ქმნის ეფექტურ კონფიგურაციას, რომელსაც მკითხველი ვეღარ გაარჩევს ხელით დაწერილი მნიშვნელობებისგან. მითითება, მაგალითად ცვლადის სახელი წყაროში, გამოსავალში თავად ანგარიშის ტოკენად იქცევა. სტრუქტურა, რომელიც ფაილს დიაგნოსტიკისთვის სასარგებლოს ხდის, ამ გარდაქმნას გადაურჩება; გადაურჩება ისიც, რაც არასდროს უნდა ყოფილიყო მასში.

თავად დაარენდერეთ ფაილი სანამ ერთვით, და მოეკიდეთ ამ გამოსავალს როგორც განსახილველ არტეფაქტს. თუ ვერ არენდერებთ, ვერ გაიგებთ, რას აპირებთ გამოქვეყნებას.

საიდუმლოებები უფრო მეტ ადგილასაა, ვიდრე გასაღების ველი

დაიწყეთ აშკარადან: პირადი გასაღებები, წინასწარ გაზიარებული გასაღებები, ტოკენები, პაროლები და კავშირის URL-ები, რომლებიც ინახავენ საიდენტიფიკაციო მონაცემებს. შემდეგ შეხედეთ ყველაფერს, რაზეც ფაილი მიუთითებს, რადგან მითითება წაშლა არ არის. სერვისში მიმაგრებული გარემოს ფაილი, ჰოსტიდან მიბმული კონფიგურაციის ფაილი, ტოკენის მატარებელი ეტიკეტი და პაროლის შემცველი ბრძანების არგუმენტი ყველა ერთად მიდის განლაგებასთან, მაშინაც კი, როცა YAML სუფთად გამოიყურება. ცვლადში ჩასმული გასაღები მაინც გასაღებია.

ჰოსტის ბილიკები და სერვისების სახელები მეორე ტიპის ინფორმაციას ღვრიან. სახლის დირექტორიის სახელი, შიდა ჰოსტის სახელი ან ქსელის დიაპაზონი შეიძლება პიროვნება ან ორგანიზაცია ამოიცნოს ერთი საიდენტიფიკაციო მონაცემის გარეშეც, და ეს კონტექსტი იმავე მიზეზით წაშლას იმსახურებს.

საიდუმლოს გამოცხადება თავად საიდუმლო არ არის

Compose-ის საიდუმლო ობიექტები გამოცხადებას მასალისგან ჰყოფენ: სერვისი იღებს ბილიკს ან სამიზნეს, ხოლო შიგთავსი სხვაგან ცხოვრობს. გამოცხადების შენარჩუნება მასალის შეცვლისას ჩვეულებრივ სწორი გაცვლაა, რადგან მიმომხილველმა უნდა დაინახოს, რომ საიდუმლო არსებობს და როგორ არის მიმაგრებული. რაც არ უნდა გადარჩეს, თავად შიგთავსია.

ეტიკეტები და კომენტარები იმავე მოპყრობას იმსახურებენ. კომენტარი, რომელიც ამბობს, რომელი საცავის ბილიკი ინახავს წარმოების გასაღებს, თავდამსხმელს ეუბნება, სად უნდა შეხედოს, თუნდაც მასში გასაღები არ იყოს.

შეინარჩუნეთ ფორმა, რომ ფაილმა კვლავ იმუშაოს დიაგნოსტიკისთვის

წაშლა, რომელიც აცილებს ქსელის რეჟიმს, იმიჯის ვერსიას ან შესაძლებლობების პარამეტრებს, ქმნის ფაილს, რომლითაც ვერავინ გამართავს გამართვას. შეცვალეთ მგრძნობიარე მნიშვნელობები და შეინარჩუნეთ კავშირები: რომელი სერვისი რას ამაგრებს, რომელ ქსელს უერთდება, რომელი მოწყობილობა სჭირდება. ეს არის ის ნაწილი, რომელსაც მკითხველი იყენებს, რომ ახსნას დაკარგული მარშრუტი ან მიუწვდომელი მოწყობილობა. ეს ასევე ის ვერსიაა, რომლის შედარებაც კოლეგას შეუძლია საკუთარ მოქმედ განლაგებასთან.

docker compose -f compose.yaml config > rendered.yaml
grep -nE 'PRIVATE_KEY|PASSWORD|TOKEN|PSK|PrivateKey|passphrase' rendered.yaml
wc -l rendered.yaml

ნუ განათავსებთ წაშლილ ასლს ისე, თითქოს ის მოქმედი ორიგინალია. ეს აღწერაა, ხოლო უსაფრთხოდ საჩვენებლად რედაქტირებული აღწერა ისე ჩავარდება, როგორც კონფიგურაციის შეცდომები.

თუ მასალა გამოაშკარავდა, შეცვალეთ ის

დანართის წაშლა არ წაშლის ასლებს, რომლებიც სხვებმა უკვე შექმნეს, ხოლო სარკეები და ქეშები საკუთარს ინახავენ. გამოიყენეთ გამომცემლის გაუქმებისა და შეცვლის პროცესი ყველაფერზე, რაც გაჟონა, შემდეგ განაახლეთ განლაგება. რიგითობას მნიშვნელობა აქვს, რადგან ჯერ შეცვლა და შემდეგ გაუქმება ტოვებს ფანჯარას ორი ძალაში მყოფი საიდენტიფიკაციო მონაცემით.

მხარდაჭერის თემებში დაიწყეთ ზუსტი შეცდომით, იმიჯის ვერსიით, ქსელის რეჟიმით და ერთი მნიშვნელოვანი არასაიდუმლო პარამეტრით. ეს კომბინაცია დაკარგულ მოწყობილობას ან გატეხილ მარშრუტს გაცილებით უფრო ხშირად ხსნის, ვიდრე გასაღები.

დაკავშირებული სტატიები