8 - Executing

In this step we will be looking at running applications on our CSCloud machine using docker.

1 - Install Docker

Det är bara till att följa denna guide för att installera senaste versionen: https://docs.docker.com/engine/install/ubuntu/

Välj: “Install using repository” för processor “x86_64 / amd64"

När det är gjort behöver ni se till att docker körs som ubuntu-användaren och inte root:

$ sudo usermod -aG docker ubuntu $ sudo systemctl restart docker

Logga in och ut igen för att se till att rättigheterna slår igenom.

Nu kan ni köra dockerkommandon direkt på er ubuntumaskin: $ docker run -d -p 27017:27017 --name mongodb mongo:4.4.3

…eller via ssh från er egen maskin genom att använda flaggan -H. Exempelvis:

$ docker -H ssh://ubuntu@194.47.177.216 run -d -p 27017:27017 --name mongodb mongo:4.4.3 Där ni givetvis behöver byta ut IP-numret mot det på er maskin.

2 - Start the application

Sista steget är att starta applikationen genom att använda PM2 och skicka med rätt miljövariabler. Observera att det går att lägga in en konfigurationsfil för PM2 om ni vill förenkla lite. Mer information om detta här: https://pm2.io/docs/runtime/best-practices/environment-variables/

$ PORT=5003 DB_CONNECTION_STRING=mongodb://localhost:27017/snippets BASE_URL=/snippets-app/ NODE_ENV=production pm2 start npm --name snippetapp:5004 -- start

❗️ Om ni kopierar in nya filer till servern behöver ni starta om PM2! ❗️ Om du använder fler miljövariabler (exempelvis för Session Secret) så behöver de läggas till ovan. ❗️ Felmeddelanden gällande att sessionen bör sparas i en Memorystore kan ignoreras i vårt fall.