Čitatelji poput vas podržavaju MUO. Kada kupite putem poveznica na našoj stranici, možemo zaraditi partnersku proviziju. Čitaj više.

Dugotrajan proces konfiguriranja potrebnih resursa jedan po jedan više nije potreban za postavljanje web aplikacija i poslužitelja.

Proizvodi platforme kao usluge (PaaS) kao što su AWS Elastic Beanstalk i Heroku stvoreni su kako bi omogućili aplikacije koje treba implementirati i učiniti dostupnima korisnicima s malo ili nimalo koda i nekoliko gumba klikovi.

Dakle, što je AWS Elastic Beanstalk i kako možete postaviti svoje Go web aplikacije u oblak s Elastic Beanstalk?

Što je AWS Elastic Beanstalk?

AWS Elastic Beanstalk (AWS EB) proizvod je platforme kao usluge koji nudi Amazon Web Services koji omogućuje brzu i jednostavnu implementaciju i upravljanje aplikacijama i potrebnim resursima.

Uz Elastic Beanstalk, jednostavno je implementirati aplikaciju bez potrebe za postavljanjem svih potrebnih resursa poput linux poslužitelj na EC2, ili uslugu nadzora u Cloudwatchu. Elastic Beanstalk upravlja svim procesima postavljanja resursa i omogućuje vam implementaciju raznih vrsta aplikacija, uključujući Node.js, Golang, PHP, Docker i tako dalje.

Stvaranje jednostavnog Golang web poslužitelja

U svrhu ovog vodiča, od vas se zahtijeva da imate radnu aplikaciju Golang za implementaciju na AWS Elastic Beanstalk, tako da je u ovom odjeljku kreiran jednostavan Go web poslužitelj.

Potrebno vam je razvojno okruženje Golang postavljeno na vašem računalu da biste slijedili ovaj odjeljak.

Prvi korak je inicijalizacija novog Golang projekta što se može učiniti s terminala pokretanjem sljedećih naredbi:

Kada završite, možete otvoriti direktorij projekta u željenom IDE-u. U svom korijenskom direktoriju projekta stvorite mapu pod nazivom statički i stvoriti index.html datoteku u njemu. Kopirajte i zalijepite sljedeći kod u HTML datoteku i spremite ga.

html>
<htmljezik="en">
<glava>
<metaskup znakova="UTF-8">
<titula>Pozdrav svijete!titula>
glava>
<tijelo>
<h1>Pozdrav svijetu iz Elastic Beanstalkh1>
tijelo>
html>

Vratite se u korijenski direktorij projekta i kreirajte primjena.go datoteka. Kopirajte i zalijepite donji kod u svoj primjena.go datoteku i spremite je. Morate imenovati glavnu datoteku primjena.go jer je to datoteka koju će Elastic Beanstalk tražiti za izgradnju vaše aplikacije tijekom procesa postavljanja.

paket glavni

uvoz (
"log"
"net/http"
)

funkglavni() {
statički := http. FileServer (http. Dir("./statički"))
http. Ručka ("/", statički)

log. Kobno (http. SlušajIPosluži(":5000", nula))
}

Elastic Beanstalk prema zadanim postavkama koristi NGINX konfiguraciju koja prosljeđuje zahtjeve vašoj aplikaciji samo na priključku 5000. Osim što ćete nadjačati zadane konfiguracije NGINX-a, vaša Golang aplikacija bi uvijek trebala osluškivati ​​zahtjeve na portu 5000.

Ako spremite datoteku i pokrenete program u terminalu s idi pokreni aplikaciju.idi, mogli biste pregledati statičnu web stranicu otvaranjem adrese lokalni host: 5000 u vašem pregledniku.

Sada imate svoju oglednu aplikaciju izgrađenu i spremnu za implementaciju. U sljedećem odjeljku implementirat ćete aplikaciju na AWS Elastic Beanstalk.

Implementacija Go aplikacije na AWS Elastic Beanstalk

Za implementaciju aplikacije na bilo koju AWS uslugu, kao što je Elastic Beanstalk, potreban vam je AWS račun u oblaku. Ako trenutačno nemate AWS račun, idite na Stranica za prijavu na AWS za stvaranje novog besplatno.

Postoji više načina za implementaciju aplikacija na Elastic Beanstalk, uključujući AWS CLI, Elastic Beanstalk sučelje naredbenog retka (EB CLI) i s web konzole, ali u ovom ćete vodiču naučiti kako implementirati na Elastic Beanstalk s terminala pomoću EB CLI-ja alat.

Možete provjeriti Vodič za instalaciju AWS EB CLI za detaljan vodič o tome kako instalirati i konfigurirati EB CLI kako biste slijedili ovaj odjeljak. Nakon što završite s instaliranjem i konfiguriranjem EB CLI-ja, sada možete nastaviti i slijediti korake u nastavku za implementaciju svoje Golang aplikacije.

  1. Otvorite novi prozor terminala i idite do mape projekta Go aplikacije koja će se implementirati pomoću CD naredba.
  2. Trčanje eb init za inicijalizaciju novog Elastic Beanstalk CLI repozitorija. Budući da prvi put pokrećete ovu naredbu nakon instalacije, EB CLI će vam ponuditi opcije početnog postavljanja kao što se vidi u koracima koji slijede.
  3. Nakon što odaberete željenu regiju, trebate postaviti svoje vjerodajnice sigurnosnog identiteta (ID pristupnog ključa i tajni ključ). Postoji sveobuhvatan vodič koji nudi AWS o generiranju sigurnosnih vjerodajnica u AWS konzoli.
  4. Zatim trebate definirati naziv aplikacije koju implementirate. Prema zadanim postavkama, ovo koristi naziv trenutne mape projekta.
  5. Sljedeći korak je odabir platforme aplikacije koju namjeravate implementirati, u ovom slučaju trebali biste odabrati 4. opciju budući da implementirate Golang aplikaciju.
  6. Sljedeći upit vas pita želite li omogućiti SSH vezu za svoju implementiranu aplikaciju. Ovo se preporučuje jer omogućuje jednostavan daljinski pristup i otklanjanje pogrešaka za vašu aplikaciju, ali u ovom vodiču, Ne je odabran jer je to samo jednostavna aplikacija.

    Redak koji označava da se CodeCommit nije mogao postaviti nije razlog za brigu, jer je to zbog činjenice da se Git ili bilo koja druga kontrola izvora ne koristi u projektu u ovom primjeru.

  7. Nakon dovršetka gornjih koraka, kreirat će se novo CLI spremište Elastic Beanstalk i sada možete stvoriti okruženje Elastic Beanstalk za implementaciju svoje aplikacije u sljedećim koracima.
  8. Trčanje eb stvoriti “ime okruženja” za stvaranje novog okruženja pod nazivom specificirano ime okoline. Okruženje je stvoreno sa svim potrebnim resursima uključujući EC2 instancu, grupu za automatsko skaliranje, S3 spremnik, balanser opterećenja itd. Ovaj proces traje oko 5-10 minuta, ovisno o brzini mreže.

    Baš kao kad ti postavite statičnu web stranicu na AWS, vašoj EB aplikaciji također je dodijeljen URL (označen u crvenom okviru na gornjoj snimci zaslona) koji možete koristiti za pristup svojoj web aplikaciji.

  9. Nakon što se uspješno završi, aplikacija je spremna za pregled i možete je pokrenuti eb otvoren da biste otvorili postavljenu aplikaciju u svom pregledniku. Sada biste trebali vidjeti Pozdrav svijete prikazan u vašem web pregledniku pomoću URL-a koji mu je dodijelio Elastic Beanstalk.

Kad god promijenite svoju aplikaciju, možete je pokrenuti eb rasporediti da progura najnovija ažuriranja za Elastic Beanstalk. A da biste zatvorili svoju aplikaciju i sve njezine resurse, možete pokrenuti eb prekinuti.

Sada ste uspješno postavili Golang web aplikaciju na AWS Elastic Beanstalk pomoću CLI alata Elastic Beanstalk. Proces je vrlo jednostavan i može se slijediti za implementaciju bilo kojeg oblika Golang web aplikacije u Elastic Beanstalk.

Možete provjeriti nadzornu ploču Elastic Beanstalk na AWS konzoli kako biste vidjeli status ili bilo koje druge informacije o vašem okruženju i aplikaciji.

Postavljanje web aplikacija na Elastic Beanstalk

Elastic Beanstalk je pouzdan način da svoje aplikacije prevedete iz lokalne u vrlo jednostavne korake. Možete jednostavno implementirati i upravljati svojim malim i velikim aplikacijama koristeći bilo koje sredstvo koje je AWS stavio na raspolaganje uključujući web konzolu, AWS CLI, EB CLI, AWS API-je ili AWS SDK.

Za daljnje vježbanje sa znanjem stečenim iz ovog članka, možete razmisliti o izradi CRUD API-ja s Goom i njegovoj implementaciji na Elastic Beanstalk.