📧 Dołącz do newslettera Machine LearningZapisuję się!

Docker w praktyce: Stworzenie aplikacji webowej z kontenerami

Kacper Sieradziński3/17/20252 min czytania
Docker w praktyce: Stworzenie aplikacji webowej z kontenerami

Tworzenie aplikacji webowej w Pythonie i uruchamianie jej w kontenerze Docker to świetny sposób na zrozumienie podstaw technologii kontenerowych i ich zastosowania w praktyce. W tym artykule pokażę krok po kroku, jak zbudować prostą stronę w Pythonie przy użyciu frameworka Flask, a następnie uruchomić ją w kontenerze Docker. Dowiesz się, jak przygotować Dockerfile i użyć Docker Compose do zarządzania aplikacją.

Zobacz też

Wybór frameworka: Flask

Flask to lekki framework dla aplikacji webowych w Pythonie, idealny do mniejszych projektów i nauki. Umożliwia szybkie prototypowanie i łatwą konfigurację.

Instalacja Flask

Najpierw stwórz nowy katalog, który będzie zawierał Twoją aplikację, np. my_flask_app. Następnie utwórz w nim plik app.py z kodem aplikacji.

mkdir my_flask_app cd my_flask_app

Zainstaluj Flask wirtualnym środowisku. Dzięki temu unikniesz potencjalnych konfliktów między zależnościami.

python3 -m venv venv source venv/bin/activate pip install Flask

Kod aplikacji Flask

W pliku app.py umieść prosty kod aplikacji:

from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello, World!' if __name__ == '__main__': app.run(host='0.0.0.0', port=5000)

Konfiguracja Dockera

Tworzenie Dockerfile

Dockerfile to plik tekstowy, który definiuje, jak skonfigurować obraz Dockerowy zawierający naszą aplikację. Utwórz plik o nazwie Dockerfile w katalogu my_flask_app z następującą treścią:

# Używamy oficjalnego obrazu Python jako podstawy FROM python:3.8-slim # Ustawiamy katalog roboczy WORKDIR /app # Kopiujemy plik requirements.txt i instalujemy zależności COPY requirements.txt ./ RUN pip install --no-cache-dir -r requirements.txt # Kopiujemy kod aplikacji COPY app.py . # Określamy, jak uruchomić aplikację CMD ["python", "app.py"]

Tworzenie pliku requirements.txt

Ten plik zawiera wszystkie zależności, które są wymagane do uruchomienia aplikacji. W naszej prostej aplikacji wystarczy jedna linia:

Flask==2.0.1

Uruchamianie aplikacji w kontenerze

Aby zbudować i uruchomić aplikację w kontenerze, używamy poniższych komend:

docker build -t my_flask_app . docker run -p 5000:5000 my_flask_app

To polecenie uruchomi naszą aplikację na porcie 5000. Aby zweryfikować działanie, otwórz przeglądarkę i przejdź na adres http://localhost:5000.

Docker Compose dla zarządzania aplikacją

Docker Compose umożliwia łatwe zarządzanie aplikacjami składającymi się z wielu kontenerów. Stwórz plik docker-compose.yml:

version: '3' services: web: build: . ports: - "5000:5000"

Następnie uruchom aplikację za pomocą jednego polecenia:

docker-compose up

Podsumowanie i dalsze kroki

Tworzenie i uruchamianie aplikacji webowej w Dockerze jest proste i efektywne. Ta umiejętność pozwala na tworzenie skalowalnych, łatwych do wdrożenia aplikacji. Zachęcam do eksperymentowania z dodawaniem nowych funkcji oraz poznawania bardziej zaawansowanych możliwości Docker Compose.

Tagi:

#Python#Nauka programowania#Podstawy

Zapisz się na nasz newsletter

Otrzymuj regularne aktualizacje, specjalne oferty i porady od ekspertów, które pomogą Ci osiągnąć więcej w krótszym czasie.