Üks levinumaid Dockeri töökoormusi on selle kasutamine veebiserverite (nt NGINX ja Apache) hostimiseks, et käitada suure jõudlusega sisuedastusparki, mida saab hõlpsasti skaleerida ja automaatselt hallata. Näitame teile, kuidas seda NGINX-iga seadistada.
NGINX-i konfiguratsioon Dockeris
Docker on konteinerplatvorm, mida kasutatakse teie rakenduse ja kogu selle koodi pakkimiseks üheks hõlpsasti hallatavaks konteinerpildiks. Selle tegemise protsess on üsna sarnane uue serveri seadistamisega: konteiner on tühi leht, nii et peate installima sõltuvused, looma oma koodi, kopeerima ehitusartefaktid ja kopeerima mis tahes konfiguratsiooni. Õnneks pole vaja nii palju automatiseerida. NGINX-il on juba avalikult saadaval Dockeri konteiner, mida saate kasutada oma rakenduse lähtepunktina.
Muidugi, sõltuvalt konteinerisse paigutatavast rakendusest võib see olla pisut keerulisem. Kui juurutate CMS-i nagu WordPress, vajate tõenäoliselt välist andmebaasi, kuna konteinerid ei ole loodud püsivaks. Hea lähtepunkt WordPressi jaoks oleks eelkõige WordPress Dockeri konteiner.
Et saada midagi keerukamat kui lihtne Hello Worldi veebileht, loome uue projektikataloogi ja lähtestame Vue.js-i põhirakenduse. Teie seadistus on olenevalt pakutavast sisust erinev, kuid üldine idee on sama.
Looge oma projekti juurtes uus fail nimega |_+_| pikendust pole. See toimib ehituskonfiguratsioonina. Vaikimisi on konteiner tühi ja sisaldab ainult põhipildiga installitud rakendusi ja sõltuvusi. Peate oma rakenduse koodi kopeerima; Kui teenindate ainult staatilist sisu, on see lihtne, kuid kui töötate serveripoolsete rakendustega, nagu WordPress, peate võib-olla installima täiendavaid sõltuvusi.
Järgmine konfiguratsioon on üsna lihtne. Kuna see on sõlmerakendus, peame käivitama |_+_| et konstruktsioon oleks levitamiseks valmis. Selle kõigega saame hakkama Dockerfile'is, seadistades kaheosalise konteineri ehituse:
|_+_|Esimene rida |_+_| käsk tõmbab |_+_| Docker Hubi konteiner ja looge uus konteiner nimega |_+_|. Järgmine |_+_|'teab sellest kataloogist ja kopeerib |_+_|. Niisiis, see töötab |_+_|, seejärel kopeerige rakenduse kood ja alustage koostamisprotsessi. Kui teie rakendus tuleb allikast kompileerida, soovitame teha midagi sarnast.
Järgmine olek viskab |_+_| konteiner, mida kasutatakse tootmise jaotusena. teeb |_+_| kataloogi ja seejärel kopeerige kataloogist |_+_| konteiner, |_+_| kaust, mis sisaldab ehitusartefakte ja |_+_| Tootmiskonteinerite kaust. Seejärel kopeerige NGINX-i konfiguratsioonifaili.
Samuti peate looma uue faili nimega |_+_|, et käskida seda ignoreerida |_+_| samuti kohalikelt ehitustelt pärinevaid ehitusesemeid.
|_+_|Dockerfile viitab failile |_+_|, mille peate samuti looma. Kui kasutate |_+_| mitme konfiguratsiooniga keerukamat seadistust, võiksite luua oma NGINX-i konfiguratsiooni jaoks uue kausta ja kopeerida selle üle.
|_+_|See on lihtsalt HTTP veebiserver. Lihtsaim viis HTTPS-i konfigureerimiseks on käivitada LetsEncrypt certbot kohapeal ja kopeerida sertifikaat saidilt |_+_| tootmismahutis. Need sertifikaadid kehtivad 90 päeva, seega peate neid perioodiliselt uuendama. Saate selle konteineri loomise protsessi osana automatiseerida.
Kui kõik on korras, saate käivitada Dockeri järgu:
|_+_|See koostab konteineri kujul |_+_|, mille järel saate selle sildistada ja esitada võimalikuks levitamiseks ECS-i või konteineriregistrisse. Muidugi peate seda kohapeal testima |_+_|-ga esiteks. Link |_+_| NGINX-i eksemplari pordis 80:
|_+_|Kui olete pildi loonud, on selle tootmisse juurutamine üsna lihtne. Saate lugeda meie juhendit a seadistamiseksAutomaatskaleerimise konteinerite juurutamine AWS ECS-islisateabe saamiseks või lugege meie juhenditCI/CD konveieri konfigureeriminekoos konteineritega automatiseeritud koostamiste ja juurutuste haldamiseks.
SEOTUD: Mis on PEM-fail ja kuidas seda kasutatakse?
Mida sa arvad?