I den här guiden går vi igenom stegen för att distribuera en exempel-applikation och en databas. Använd gärna exemplet nedan för att testa, men nyttja det inte för någon form av produktionsanvändning. Syftet med applikationen är att testa Kinsta-distribueringen.

Föredrar du att se videoversionen?

Exempel på tillämpning

Vi har skapat en liten applikation för att logga vädret och visa resultaten på en enkel sida. Du kan hitta applikationen på GitHub.

Fork exempel-applikationen

Besök först programmet weatherlogger-js på GitHub och läs den medföljande Readme-filen för att lära dig mer om applikationen. När du har bekantat dig med den klickar du på Fork-knappen uppe till höger för att ta den till ditt eget GitHub-konto.

Skapa en fork av weatherlogger-js på GitHub.
Skapa en fork av weatherlogger-js på GitHub.

Skapa en API-nyckel

Appen kräver en API-nyckel från OpenWeather. När du har registrerat dig kan du logga in och skapa en kostnadsfri API-nyckel som ger dig möjlighet att göra 1 000 dagliga API-anrop. Vi rekommenderar att du genomför det här steget först eftersom det tar 10-20 minuter innan API-nyckeln blir aktiv, tid som vi kan ägna åt att konfigurera vår applikation.

Processer

När vi distribuerar applikationen till Kinsta måste vi köra två processer:

  • En webbserver där vi kan se våra väderdata. Den kan startas med kommandot npm start.
  • Ett cronjobb som samlar in väderdata med några minuters mellanrum. Detta kan startas med kommandot npm run weatherLogger

Låt oss börja förbereda oss för att köra dessa processer.

Distribuera en databas

Se till att du är på sidan Applikationer i MyKinsta, klicka på Lägg till tjänst och välj sedan Databas i rullgardinsmenyn. Vi använde följande värden i formuläret för att skapa vår exempeldatabas:

  • Databasnamn: weatherloggerdb
  • Visningsnamn: Weather Logger Database
  • Databastyp: MySQL
  • Version: 8.0
  • Vi lämnade databasens användarnamn och lösenord orörda
  • Plats för datacenter: us-east4-a
  • Databasstorlek: 2 CPU-kärnor – 512 MB RAM (Mini)

Klicka på knappen Skapa databas så bör du vara klar.

Skapa en ny databas för vår exempel-applikation.
Skapa en ny databas för vår exempel-applikation.

Distribuera en applikation

Se till att du är på sidan Applikationer, klicka på Lägg till tjänst och välj sedan Applikation i rullgardinsmenyn. När du klickar på fältet GitHub-arkiv måste du tillåta Kinsta att interagera med ditt arkiv.

Om du vill ha en videoguide kan du ta en titt på våra videohandledningar. För fler steg-för-steg-dokumentation, se Lägg till en applikation.

Vi använde följande värden i formuläret för att skapa vår exempelapplikation:

  • GitHub-repository: danielpataki/weatherlogger-js (i ditt fall blir det något i stil med your-organization/weatherlogger-js)
  • Standardgren: main
  • Automatisk distribution vid överlämning: avmarkerad
  • Körtidsmiljö: Låt Kinsta ställa in körtidsmiljön
  • Programnamn: Weather Logger
  • Plats för datacenter: us-east4-a

Klicka på Lägg till applikation så startar distributionsprocessen.

Skapa en ny applikation för vårt exempel.
Skapa en ny applikation för vårt exempel.

Anslutning av applikationen och databasen

När databasen är redo för anslutningar (en grön bock visas bredvid den) kan vi ansluta den till vår applikation, även om applikationen fortfarande distribueras. Klicka på Weather Logger-applikationen, klicka på Settings (inställningar) i sidofältet och bläddra nedåt för att hitta avsnittet Internal connections (interna anslutningar).

Interna anslutningar i vår exempel-applikation.
Interna anslutningar i vår exempel-applikation.

Klicka på Add connection (Lägg till anslutning) och välj Weather Logger Database (databas för väderloggare) i modal/popup-fönstret som visas. Markera kryssrutan Lägg till miljövariabler för att få tillgång till databasen, scrolla till botten av fönstret och klicka på Lägg till anslutning.

Lägg till en intern anslutning för vår exempel-applikation.
Lägg till en intern anslutning för vår exempel-applikation.

Inställning av applikationen

Nästa sak på vår lista är att lägga till all information som vår applikation behöver i form av miljövariabler. Den större delen av informationen lades automatiskt till i föregående steg genom att vi fyllde i variablerna för databasanslutningen.

Den enda som saknas och som krävs av applikationen är OpenWeatherMap API-nyckeln. I Inställningar, precis under avsnittet Interna anslutningar, ser du avsnittet Miljövariabler. Klicka på Lägg till miljövariabel och använd OPENWEATHER_KEY som nyckel och din API-nyckel som värde.

Lägg till din OpenWeather API-nyckel i miljövariablerna.
Lägg till din OpenWeather API-nyckel i miljövariablerna.

Applikationen stöder ytterligare några variabler för att kontrollera uppdateringsfrekvens, använda enheter osv. Ta en titt i applikationens dokumentation för mer information.

Konfigurera processer

Vi nämnde i början att vi behöver en webbserver och ett cron job. Gå över till avsnittet Processer i applikationen så kommer du att se att en webbprocess skapas automatiskt och kör npm start som standard, vilket är precis vad vi behöver.

För att ställa in cron job klickar du på knappen Create process (Skapa process ) och fyller i formuläret i den modal/pop-up som visas. Vi använde följande värden i vårt exempel:

Namn: Worker
Typ: Bakgrundsjobb
Startkommando: npm run weatherLogger
Podstorlek: nano
Instanser: 1

Klicka sedan på knappen Skapa process.

Skapa bakgrundsprocessen för vår exempel-applikation.
Skapa bakgrundsprocessen för vår exempel-applikation.

Distribuera applikationen

Till sist går du tillbaka till avsnittet Distribueringar och klickar på knappen Distribuera nu. Distribueringen tar vanligtvis cirka 90 sekunder, men du kan behöva vänta lite längre för att alla processer ska komma igång ordentligt. Din första vädermätning bör loggas några minuter därefter. För att kontrollera att allt fungerar kan du ta en titt på avsnittet Loggar.

Körtidsloggar för exempel-applikationen.
Körtidsloggar för exempel-applikationen.

Efter ett par minuter bör du se framgångsrika processer i Körtids-loggarna. I exempelbilden ovan visar rad 243 att loggaren har börjat fungera (Starting weather logging) och rad 244 visar att webbservern körs (Weather server is up and running). Linje 245 och framåt visar två loggningshändelser (Weather data retrieved).

Om du går tillbaka till avsnittet Distribueringar bör du se webbadressen för den senaste distribueringen. Klicka på denna webbadress för att komma till den sida som serveras av webbtjänsten:

Weather logger-sidan som visar väderposter.
Weather logger-sidan som visar väderposter.