Kako besplatno pokrenuti web mjesto na AWS-u za 15 minuta

Ako ste potpuno novi u usluzi Amazon Web Services (AWS), to može izgledati kao dirljivo komplicirano.

Ne samo da se čini da postoji tisuću različitih usluga koje možete izabrati, od kojih svaka ima podjednako tajnovito ime (poput S3, Lambda, EC2 ili Athena), već postoji i toliko togaza konfiguriranje.

Morate odlučiti koliko memorije želite dodijeliti svojim funkcijama, iz koje zemljopisne regije svijeta želite da se vaš kôd poslužuje, a morate izgraditi čudan JSON objekt da biste dodijelili dozvole? STVARNO je lako umočiti nožne prste i odlučiti da je previše zbunjujuće za početak.

Ako ovo opisuje vaše dosadašnje iskustvo, onda je dobro - ovaj je članak za vas.

Bio sam u potpuno istom čamcu dulje nego što bih volio priznati.

No, unatoč svoj zastrašujućoj složenosti, postoji nešto u AWS-u koje vas neprestano zove.

Tu su brzina, pouzdanost, čak i samo profesionalni utjecaj da biste mogli reći da imate iskustva s AWS-om.

Ali, kao i u svemu, ako želite započeti, onda morate poduzeti prvi korak. Stoga mi je cilj u ovom članku olakšati to. Želim vas dovesti do točke da možete reći "Razmjestio sam projekt na AWS-u."

Bit će puno lakše nego što mislite i dat će vam točku od koje započinjete s istraživanjem ostalih usluga AWS-a.

Korak 0: Što ćete trebati slijediti

Popis je kratak, ali zaključio sam da bih ga stavio ispred i usredsredio kako bi bio siguran od početka.

  1. Kreditna / debitna kartica koja radi (ne brinite, sve je besplatno kao što naslov govori. Ali trebat ćete unijeti podatke o kreditnoj kartici da biste stvorili AWS račun)
  2. Prednji kod koji možete prenijeti i hostirati na AWS-u. Ovo može biti jednostavno kao HTML dokument sa

    Hello World

    u tijelu.

Korak 1: Napravite AWS račun

Da budem iskren, zaustavio sam se u ovom trenutku nekoliko puta jednostavno zato što je to bila jedna od onih situacija s „besplatnim probnim razdobljem, ali traže podatke o vašoj kreditnoj kartici“, čemu se načelno opirem.

Ali 12-mjesečni besplatni nivo prilično je nevjerojatan. Puna godina dugo je vrijeme da biste mogli eksperimentirati na AWS-u prije nego što odlučite isplati li se i dalje koristiti. (Nisam ni na koji način povezan s AWS-om, samo radi zapisnika).

Stoga slijedite ovu vezu i otvorite svoj račun: AWS Free Tier.

Znam da neki ljudi mogu imati zabrinutosti zbog ograničenja besplatnog plana. Na primjer, postoji mjesečni limit za zahtjeve GET i PUT (20.000 odnosno 2.000), nakon čega se počinju naplaćivati.

Ali sve dok za sada ovo koristite samo za eksperimentiranje i učenje, nema gotovo nikakve šanse za prekoračenje ograničenja.

Pa čak i ako to učinite, cijena premašivanja ograničenja obično iznosi djeliće groša na 1000 zahtjeva.

Korak 2: Stvorite S3 kantu za svoj projekt / web mjesto

Kako bi stvari bile što jednostavnije, jedina AWS usluga koju ćemo koristiti za ovaj projekt bit će Simple Storage Service (ili S3), jedna od Amazonovih usluga pohrane u oblaku.

S3 se ponaša pomalo poput Google pogona ili Dropboxa. Ali također se može konfigurirati da poslužuje datoteke, a ne samo da ih pohranjuje, što ćemo i učiniti.

Budući da ćemo služiti samo datoteke koje su hostirane na S3, ovo će biti statično mjesto, bez pozadinskih veza ili veza s bazom podataka.

Sad kad imate AWS račun, prijavite se na Upravljačku konzolu (ovdje je povezana) i kliknite "Usluge" u gornjem lijevom dijelu glavnog izbornika.

Vidjet ćete onaj zapanjujuće velik popis usluga koje sam spomenuo na početku. Ne brinite zbog svega toga, samo kliknite "S3" u odjeljku "Pohrana".

To će vas odvesti na stranicu S3, gdje možete stvoriti različite "kante" za pohranu različitih projekata.

Segmenti su poput mapa na radnoj površini. Ali sustav za pohranu dokumenata na S3 ne slijedi tradicionalnu strukturu mapa (više o tome ako ste zainteresirani). Dakle, čini se da je "kanta" prava riječ za upotrebu.

Kliknite na veliki plavi gumb u gornjem lijevom dijelu pod nazivom "Stvori kantu" da biste stvorili segment u kojem će se nalaziti datoteke vašeg projekta.

Glavna stvar koju ovdje trebate učiniti jest osigurati da su javna dopuštenja postavljena na "Odobri javni pristup za čitanje ovoj skupini".

Dobit ćete upozorenje od AWS-a, ali ne brinite. Oni samo žele biti sigurni da to nitko ne može slučajno. Ali to je upravo ono što želite učiniti.

Kad završite, vidjet ćete svoju kantu na popisu na S3 konzoli.

Korak 3: Dodajte datoteke i konfigurirajte postavke na svojem segmentu

Na popisu kliknite novostvoreno područje. To će vas dovesti na stranicu na kojoj možete dodati sadržaj u svoj segment i konfigurirati njegove postavke.

Prvo ćete htjeti dodati svoje projektne datoteke (spomenute na početku) na kartici "Pregled". Zapamtite, ovo mogu biti datoteke za bilo koji funkcionalni front-end projekt.

Nećete moći prenijeti nijednu mapu (opet, budući da S3 zapravo nema strukturu mapa). Umjesto toga, morat ćete ručno stvoriti mape koje imate u projektu u S3 i prenijeti im datoteke u njih.

Zatim kliknite karticu "Svojstva".

Ovdje ćete reći S3 da želite koristiti ovu kantu za hostiranje datoteka.

Samo kliknite pločicu na kojoj piše "Statični hosting web stranica" i unesite imena indeksa (obavezno) i pogreške (nije potrebno) dokumenata i gotovo ste.

Zatim kliknite karticu "Dozvole".

Ispod glavnih kartica koje započinjete vidjet ćete u pododjeljku pod nazivom "Popis kontrole pristupa". Ovo je već ispravno konfigurirano, jer ste već rekli da bi svatko trebao moći čitati datoteke hostirane u ovom segmentu.

Now you’ll need to click on the “Bucket Policy” subsection. Here, you’ll be prompted to create a JSON object that contains the details of your bucket’s access permission policy.

This part can be confusing. For now, I’ll just give you the JSON that will grant full public access to the files in your bucket. This will make the website publicly accessible.

Paste this into the bucket policy editor shown above:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "PublicReadForGetBucketObjects", "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::YOUR-BUCKET-NAME/*" } ]}

Don’t forget to replace “YOUR-BUCKET-NAME” with… your bucket’s name.

You’re done!

That’s it! You have now deployed a very simple static site on AWS S3.

To access your site, go back to the “Overview” tab on S3 and click on your index document (click on a blank area in the list item, not on the link to the document itself). You’ll get a slide-in menu on the right with a link to your site!