Claude Code doskonale radzi sobie z zadaniami konteneryzacji, od pisania plików Dockerfile po orkiestrację złożonych wdrożeń Kubernetes. Ta lekcja obejmuje praktyczne wzorce używania Claude Code w środowiskach skonteneryzowanych.
Claude Code może analizować twoją aplikację i generować gotowe do produkcji pliki Dockerfile:
# Wygeneruj wieloetapowy Dockerfile
claude " Stwórz wieloetapowy Dockerfile dla tej aplikacji Node.js z:
- Etapem budowy z zależnościami
- Etapem produkcyjnym z minimalnym obrazem
- Najlepszymi praktykami bezpieczeństwa "
# Aplikacja Python z poetry
claude " Stwórz Dockerfile dla tej aplikacji Python Flask:
- Użyj poetry do zarządzania zależnościami
- Alpine Linux dla mniejszego obrazu
- Uwzględnij skanowanie bezpieczeństwa "
claude " Wygeneruj Dockerfile dla tej usługi Go:
- Budowę wieloetapową z cache'owaniem modułów
- Końcowy obraz scratch lub distroless
- Uwzględnij ca-certificates
- Prawidłowe obsługiwanie sygnałów
Analiza struktury projektu
claude " Przeanalizuj ten projekt i stwórz docker-compose.yml z:
- Wszystkimi usługami odpowiednio połączonymi w sieć
- Montowaniem woluminów do rozwoju
- Zarządzaniem zmiennymi środowiskowymi
- Kontrolami zdrowia i zależnościami "
Dodanie nadpisań rozwojowych
claude " Stwórz docker-compose.override.yml do lokalnego rozwoju z:
- Eksponowanymi portami do debugowania
- Lokalnymi montowaniami woluminów
- Zmiennymi środowiskowymi rozwojowymi "
Konfiguracja produkcyjna
claude " Stwórz docker-compose.prod.yml z:
- Ustawieniami gotowymi do produkcji
- Konfiguracją logowania "
# Analiza Dockerfile pod kątem problemów bezpieczeństwa
claude " Przejrzyj ten Dockerfile pod kątem luk bezpieczeństwa:
- Sprawdź na sztywno zakodowane sekrety
- Zweryfikuj użytkownika nie-root
- Przeanalizuj bezpieczeństwo obrazu bazowego
Uwzględnij komendy do skanowania z trivy/grype "
Kompletne wdrożenie aplikacji
claude " Stwórz manifesty Kubernetes dla tej aplikacji:
- Deployment z odpowiednimi limitami zasobów
- Service do równoważenia obciążenia
- ConfigMap do konfiguracji
- Secret do wrażliwych danych
- Ingress do dostępu zewnętrznego
Przestrzegaj najlepszych praktyk Kubernetes "
Inicjalizacja struktury Helm
claude " Stwórz wykres Helm dla tej aplikacji:
- Wygeneruj Chart.yaml z metadanymi
- Stwórz elastyczny values.yaml
- Zrób szablony wszystkich zasobów Kubernetes
- Uwzględnij NOTES.txt z instrukcjami użycia "
Dodanie wartości specyficznych dla środowisk
claude " Stwórz pliki values dla różnych środowisk:
- values-dev.yaml z niższymi zasobami
- values-staging.yaml z umiarkowanymi ustawieniami
- values-prod.yaml z konfiguracją HA
Uwzględnij odpowiednie nadpisania "
Tworzenie szablonów pomocniczych
claude " Dodaj pomocniki szablonów Helm dla:
- Wspólnych etykiet i selektorów
- Generowania nazw zasobów
- Warunkowego tworzenia zasobów "
# Manifest aplikacji ArgoCD
claude " Stwórz manifest aplikacji ArgoCD:
- Wskaż na repozytorium Git
- Ustaw zasady synchronizacji
- Skonfiguruj kontrole zdrowia
- Uwzględnij konfigurację rollback "
claude " Zaktualizuj Dockerfile i CI/CD dla budowy multi-arch:
- Użyj buildx do kompilacji krzyżowej
- Push do rejestru z listą manifestów
- Uwzględnij workflow GitHub Actions "
claude " Dodaj konfigurację Istio dla tej usługi:
- VirtualService do routingu
- DestinationRule do równoważenia obciążenia
- PeerAuthentication dla mTLS
- AuthorizationPolicy do kontroli dostępu "
claude " Skonfiguruj Linkerd dla tej aplikacji:
- Reguły circuit breaking "
Redukcja rozmiaru obrazu
claude " Zoptymalizuj ten obraz Docker:
- Przeanalizuj warstwy z dive
- Usuń niepotrzebne zależności
- Użyj distroless lub Alpine
- Zaimplementuj budowę wieloetapową
- Zminimalizuj liczbę warstw "
Wydajność budowy
claude " Popraw szybkość budowy Docker:
- Zoptymalizuj cache'owanie warstw
- Zaimplementuj cache'owanie zależności
- Zrównoleglij kroki budowy
# Debug uruchomionego kontenera
claude " Stwórz skrypty debugowania dla:
- Exec do uruchomionych kontenerów
- Sprawdzania logów z wielu kontenerów
- Monitorowania użycia zasobów
- Testowania sieci między kontenerami
- Weryfikacji zmiennych środowiskowych "
Badanie podów
claude " Stwórz komendy debugowania K8s dla:
- Opisywania problemów podów
- Sprawdzania wydarzeń i logów
- Weryfikacji limitów zasobów
- Testowania zasad sieciowych
- Debugowania init containers "
Debugowanie na poziomie klastra
claude " Wygeneruj skrypt debugowania klastra:
- Zweryfikuj rozwiązywanie DNS
- Przetestuj łączność usług
- Przeanalizuj planowanie podów
- Przejrzyj uprawnienia RBAC "
claude " Stwórz workflow GitHub Actions dla:
- Budowy i testowania obrazów Docker
- Skanowania bezpieczeństwa z Trivy
- Push do rejestru (DockerHub/ECR/GCR)
- Wdrażania do Kubernetes
- Rollback w przypadku błędu "
claude " Wygeneruj .gitlab-ci.yml dla:
- Wdrażania do wielu środowisk
- Użycia rejestru kontenerów GitLab
- Implementacji review apps "
✅ Użytkownik nie-root w kontenerach
✅ Minimalne obrazy bazowe
✅ Brak sztywno zakodowanych sekretów
✅ Skanowanie bezpieczeństwa w CI/CD
✅ Włączone zasady sieciowe
✅ Zdefiniowane limity zasobów
✅ Budowa wieloetapowa
✅ Zoptymalizowane cache’owanie warstw
✅ Zaimplementowane kontrole zdrowia
✅ Obsługa graceful shutdown
✅ Skonfigurowane skalowanie horyzontalne
Skonteneryzuj mikroserwis
Weź istniejącą aplikację
Stwórz zoptymalizowany Dockerfile
Dodaj docker-compose do lokalnego developmentu
Zaimplementuj kontrole zdrowia
Wdróż do Kubernetes
Wygeneruj manifesty K8s
Stwórz wykres Helm
Ustaw autoskalowanie
Skonfiguruj monitoring
Zaimplementuj CI/CD
Buduj obrazy multi-arch
Dodaj skanowanie bezpieczeństwa
Wdrażaj do staging/produkcji
Zaimplementuj strategię rollback
Unikaj tych błędów
Uruchamianie kontenerów jako root
Sztywne kodowanie konfiguracji w obrazach
Nie ustawianie limitów zasobów
Ignorowanie skanowania bezpieczeństwa
Brakujące kontrole zdrowia
Słaba strategia cache’owania warstw
Teraz gdy rozumiesz konteneryzację z Claude Code, eksploruj:
Pamiętaj: Siła Claude Code w konteneryzacji wynika z jego zdolności do zrozumienia całego kontekstu twojej aplikacji i generowania odpowiednich konfiguracji. Zawsze waliduj wygenerowane konfiguracje w bezpiecznym środowisku przed użyciem w produkcji.