
W dzisiejszym świecie tworzenia aplikacji coraz częściej spotykamy się z pojęciem konteneryzacji. Dzięki niej możemy łatwo pakować aplikacje wraz z całym środowiskiem uruchomieniowym, co upraszcza wdrażanie i eliminuje problem „u mnie działa”. Najpopularniejszym narzędziem do konteneryzacji jest Docker.
W tym wpisie pokażę Ci, jak można w obrazie kontenerowym zbudować aplikację i uruchomić ją lokalnie.
I. Tworzenie aplikacji w kontenerze
1. Stworzenie aplikacji
Na początek potrzebujemy aplikacji. Będzie to aplikacja napisana w Node.js. i jest to przykładowa lista rzeczy do zrobienia:
Przykład zaciągnięty z: https://www.docker.com/101-tutorial/
2. Budowanie obrazu aplikacji
Aby uruchomić aplikację w kontenerze, musimy stworzyć Dockerfile – plik, który opisuje, jak zbudować obraz naszej aplikacji.
a) Tworzenie pliku Dockerfile
Utwórz plik Dockerfile
w katalogu głównym projektu i dodaj do niego następującą treść:
FROM node:18-alpine
WORKDIR /app
COPY . .
RUN yarn install --production
CMD ["node", "src/index.js"]
Opis poszczególnych poleceń:
-
FROM node:18-alpine
– bazujemy na oficjalnym obrazie Node.js. -
WORKDIR /app
– ustawiamy katalog roboczy. -
COPY . .
– kopiujemy wszystkie pliki do kontenera. -
RUN yarn install --production
– instalujemy zależności. -
CMD ["node", "src/index.js"]
– komenda uruchamiająca aplikację.
b) Budowanie obrazu
Otwórz terminal w katalogu z projektem i uruchom:
docker build -t getting-started .
To polecenie zbuduje obraz kontenerowy i nazwie go getting-started
.
3. Start kontenera aplikacji
Gdy obraz jest już gotowy, możemy uruchomić kontener:
docker run -dp 3000:3000 getting-started
-
-d
– uruchamia kontener w tle (detached mode), -
-p 3000:3000
– mapuje port lokalny 3000 na port 3000 w kontenerze.
Teraz wystarczy wejść w przeglądarkę i otworzyć:
http://localhost:3000
Powinieneś zobaczyć pustą listę rzeczy do zrobienia. 🎉