Skip to content

26. Docker dla programistów webowych

This content is not available in your language yet.

Docker dla programistów webowych

Docker rozwiązuje klasyczny problem „u mnie działa”. Kontener zawiera aplikację razem z zależnościami i środowiskiem uruchomieniowym. Każdy deweloper w zespole pracuje na identycznym środowisku. Ta prezentacja tłumaczy czym jest Docker i jak uruchomić stos PHP/Apache/MySQL jednym poleceniem.

  1. Co to jest kontener i czym różni się od maszyny wirtualnej? — izolacja vs wirtualizacja
  2. Co zawiera docker-compose.yml? — serwisy, porty, wolumeny
  3. Jak uruchomić projekt PHP z bazą danych?docker-compose up
  1. Problem: „u mnie działa” — różne wersje PHP, brak rozszerzeń
  2. Kontener vs maszyna wirtualna — schemat porównania
  3. Obraz Docker — czym jest, skąd pochodzi (Docker Hub)
  4. Dockerfile — definicja własnego obrazu
  5. docker-compose.yml — orkiestracja wielu serwisów
  6. Praktyczny stos: PHP 8.2 + Apache + MySQL
  7. Wolumeny — synchronizacja kodu między hostem a kontenerem

Schemat porównawczy

VM vs Docker — warstwa OS, hypervisor, daemon

docker-compose.yml

Kompletny przykład stosu PHP/Apache/MySQL z opisem

Minimum:

  • Definicja kontenera i obrazu
  • Porównanie VM vs Docker
  • Przykład docker-compose.yml z opisem

Forma: 10 slajdów, 10 minut

Ocena: 3.0
# docker-compose.yml — stos PHP/Apache/MySQL
version: '3.8'
services:
php:
image: php:8.2-apache
ports:
- "8080:80"
volumes:
- ./src:/var/www/html
depends_on:
- db
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: secret
MYSQL_DATABASE: myapp
MYSQL_USER: appuser
MYSQL_PASSWORD: apppass
ports:
- "3306:3306"
volumes:
- db_data:/var/lib/mysql
phpmyadmin:
image: phpmyadmin:latest
ports:
- "8081:80"
environment:
PMA_HOST: db
volumes:
db_data:
Okno terminala
# Podstawowe komendy Docker
docker-compose up -d # Uruchom w tle
docker-compose down # Zatrzymaj i usuń kontenery
docker-compose logs php # Logi serwisu php
docker-compose exec php bash # Wejdź do kontenera
# Bezpośrednie komendy Docker
docker ps # Lista uruchomionych kontenerów
docker images # Lista obrazów
docker pull php:8.2-apache # Pobierz obraz

Pokaż komendę live

Jeśli masz Dockera na laptopie — docker-compose up na żywo to najlepsza demonstracja

Schemat na jednym slajdzie

Narysuj: laptop → daemon → kontenery (PHP, MySQL) strzałkami z portami