Czym jest Dockerfile?

Dockerfile to plik tekstowy, który zawiera instrukcje do budowania obrazów Docker. Dzięki Dockerfile możesz automatyzować proces tworzenia kontenerów, co znacząco ułatwia zarządzanie aplikacjami w różnych środowiskach. Używając Dockerfile, możesz definiować zależności, konfiguracje oraz środowisko, w którym ma działać Twoja aplikacja.

Podstawowe składniki Dockerfile

Dockerfile składa się z wielu instrukcji, które są interpretowane przez silnik Docker. Oto kilka z najczęściej używanych instrukcji:

  • FROM - definiuje bazowy obraz, na którym będzie oparty nowy obraz.
  • RUN - wykonuje polecenie w trakcie budowania obrazu, np. instalację pakietów.
  • COPY - kopiuje pliki z lokalnego systemu plików do obrazu.
  • CMD - definiuje domyślną komendę, która zostanie uruchomiona po uruchomieniu kontenera.
  • EXPOSE - informuje o portach, które będą używane przez aplikację.

Przykład prostego Dockerfile

Poniżej znajduje się przykładowy Dockerfile, który tworzy obraz aplikacji Node.js:

FROM node:14

# Ustawienie katalogu roboczego
WORKDIR /usr/src/app

# Kopiowanie package.json i package-lock.json
COPY package*.json ./

# Instalacja zależności
RUN npm install

# Kopiowanie pozostałych plików aplikacji
COPY . .

# Ekspozycja portu
EXPOSE 8080

# Uruchomienie aplikacji
CMD [ "node", "app.js" ]

Jak zbudować obraz za pomocą Dockerfile?

Aby zbudować obraz na podstawie Dockerfile, należy użyć poniższego polecenia w terminalu:

docker build -t nazwa-obrazu .

Gdzie nazwa-obrazu to dowolna nazwa, którą chcesz nadać swojemu obrazowi, a kropka oznacza, że Dockerfile znajduje się w bieżącym katalogu.

Podsumowanie

Dockerfile to potężne narzędzie, które pozwala na efektywne zarządzanie procesem tworzenia obrazów kontenerów. Dzięki jego zastosowaniu można zautomatyzować wiele zadań związanych z konfiguracją i uruchamianiem aplikacji. Poznanie podstaw Dockerfile to klucz do efektywnej pracy z technologią Docker.