Combined Shape

სერვერადმინი

რა არის Portainer და რაში გამოგვადგება

დავით მაჭახელიძე

Docker, docker-compose, kubernetes მართვის პანელი მცირე და საშუალო პროექტებისთვის

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

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

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

docker-compose

კომპოზიტორი შემდეგი ნაბიჯია მას შემდეგ რაც docker-ზე ჩემი პროექტი რამდენიმე კონტეინერს გაცდა და მიკროსერვისების და მონიტორინგის ელემენტების რაოდენობა გაიზარდა.

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

docker-compose ერთგვარი შუალედური რგოლია უფრო კომპლექსურსა და მარტივ cli მართვის მოდელს შორის.

ქომფოუზზე გადასვლით გამიმარტივდა პროექტის განახლება, რომელიც იმ ეტაპზე უმთავრესად nginx, apache, mariadb, redis და let’s encrypt-ის ოფიციალური იმიჯებისგან ეწყობოდა, მაგრამ დროთა განმავლობაში ეს მოდელიც არასაკმარისი ხდება.

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

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

დადგა ჯერი პორტეინერის შესახებ მოგიყვეთ

პორტეინერზე გადასვლის მიზეზი ბევრი მქონდა, თუმცა მსგავსი სისტემის არჩევის დროს საკმაოდ ბევრი რამ უნდა გავითვალისწინოთ.

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

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

დამწყებთათვის პორტეინერი ძალიან მოქნილი და მარტივი ინსტრუმენტია. თუ გსურთ უბრალოდ WordPress საიტის გაშვება, MySQL/Mariadb სერვერის მოწყობა და მსგავსი აპლიკაციების კონტეინერში გაშვება აქ ამის გაკეთება რამდენიმე ღილაკზე დაჭერითაა შესაძლებელი.

სერვერზე გაშვებული პროექტის შემოტანა პირდაპირ შესაძლებელი არ არის თუმცა docker-compose.yml ფაილი პირდაპირ შეგიძლიათ copy-paste ოპერაციით გადაიტანოთ პორტეინერში და თქვენი სტეკი რამდენიმე წამში პორტეინერის მართვის ქვეშ გაეშვება.

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

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

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

გააზიარეთ: