Azure Docker Registry - Sonat-Consulting/newspaperApp GitHub Wiki
Oppgave 7
Du skal nå opprette en container registry for docker containere. Deretter skal du knytte denne til portainer instansen du satt opp i Oppgave 5. Deretter skal du deploye en docker container via Portainer.
- I menyen på portalen, trykker du "New"
- Så velger du "Container" i menyen, deretter velger du "Azure Container Registry"
- Fyll inn settings for din Azure Container Registry, her bør du gjenbruke "Resource Group" fra Oppgave 1
- Du vil nå kunne se din nyoppretede "Azure Container Registry" under Hovedmenyen -> "All Resources" -> velg din resource group. Trykk så på din nyopprettede Registry for å se på settings.
- Når du får opp settings trykk på "Access keys", denne ligger øverst på "Settings" Listen
- Her ser du "Login Server" "Username", "password" og "password2". Ha denne siden åpen, du trenger disse detaljene for de neste stegene.
-
Åpne en ny fane i nettleseren din, åpne så portainer dashboardet på portainer instansen du laget i Oppgave 5
-
Under "Portainer Settings" velger du "Registries"
- Når du får opp settings, trykker du "Add registry"
- Her legger du så inn opplysninger fra steg 6.
Resultatet vil da se noenlunde slik ut:
- Naviger til "Images" i hoved menyen
- Lag en tag på newspaperApp imaget, knytt dette mot registrien du laget tidligere i oppgaven. Husk å oppgi en versjon, denne kan være vilkårlig. Trykk på "Tag" når du er ferdig
Du vil få en melding når taggingen gikk bra
Trykk så på "Upload"-knappen. (Disken med pil opp) på imaget du nettopp tagget.
Vent til du får beskjed at upload gikk bra. NB! Dette kan ta litt tid, så vær vennlig å vente...
- Du skal nå lage en container instans av denne. Husk å stoppe en evt. newspaperApp container, dersom du har en kjørende. I menyen til portainer, trykker du på "Containers" -> "Add container"
- Fyll så ut instillinger for newspaperApp containeren. Husk at port 5000 må eksponeres, slik at nginx kan nå containeren internt. Trykk på "map additional ports" og legg inn 5000 og 5000
- Legg inn en variablel under "Env", trykk "add environment variable" og sett "ARTICLE_AMOUNT" til en fornuftig verdi. (Her satt til 25). Dette er for å begrense hvor mange articler som blir parset av appliaksjonen.
- Trykk så på "Start container"
Dersom du trykker på "Containers" får du opp en liste over status på alle containere på vm'en din.
Etter en liten stund skal containeren kjøre og være "healthy". Husk du må trykke på "Refresh" her
- For å teste at api'et du nå har deployet funger, må du åpne en ny port. I hovedmenyen velger du "Virtual Machines". Her velger du maskinene du laget tidligere.
- Åpne "Networking" i settings for maskinen din.
- Trykk på "Add inbound port rule"
- Fyll ut portinstillinger slik. Du trenger å eksponere port 5000, siden det er denne som er satt opp for denne containeren tidligere i denne oppgaven.
- Åpne nettleseren din med public ip og port 5000. Du må også ha en request parameter. Fra eksempelet blir dette da http://13.79.224.165:5000/?url=vg.no
Du er nå ferdig med alle oppgavene i denne delen :D