Wprowadzenie
Cześć! Uruchamiasz projekt local-ai-packaged na Ubuntu Desktop (np. na laptopie z AMD Ryzen 9 5900HS i NVIDIA RTX 3060, serwer 192.168.76.171) i chcesz sprawdzić, czy usługi działają na poprawnych portach oraz czy powtarzające się porty są dobrze skonfigurowane? Na podstawie wyniku polecenia docker ps przeanalizujemy konfigurację portów, wskażemy potencjalne konflikty i zaproponujemy rozwiązania. Ten idiotoodporny poradnik jest po polsku, z gotowymi komendami i opisami zrzutów ekranu, idealny dla klientów agencja-ai.com!
Analiza portów w local-ai-packaged
Wynik polecenia docker ps pokazuje listę uruchomionych kontenerów w projekcie local-ai-packaged, wraz z ich portami. Poniżej przeanalizujemy każdą usługę, jej porty, potencjalne konflikty i poprawność konfiguracji.
Lista usług i portów
Oto przegląd usług z ich mapowaniami portów:
| Usługa | Kontener | Porty hosta | Porty kontenera | Stan |
|---|---|---|---|---|
| Langfuse Web | localai-langfuse-web-1 | 127.0.0.1:3000 | 3000/tcp | Up |
| Langfuse Worker | localai-langfuse-worker-1 | 127.0.0.1:3030 | 3030/tcp | Up |
| n8n | n8n | 127.0.0.1:5678 | 5678/tcp | Up |
| Open WebUI | open-webui | 127.0.0.1:8080 | 8080/tcp | Up (healthy) |
| MinIO | localai-minio-1 | 127.0.0.1:9010, 127.0.0.1:9011 | 9000/tcp, 9001/tcp | Up (healthy) |
| Postgres (localai) | localai-postgres-1 | 127.0.0.1:5433 | 5432/tcp | Up (healthy) |
| Qdrant | qdrant | 127.0.0.1:6333-6334 | 6333-6334/tcp | Up |
| Neo4j | localai-neo4j-1 | Brak mapowania | Brak | Restarting |
| Flowise | flowise | 127.0.0.1:3001 | 3001/tcp | Up |
| ClickHouse | localai-clickhouse-1 | 127.0.0.1:8123, 127.0.0.1:9000, 127.0.0.1:9009 | 8123/tcp, 9000/tcp, 9009/tcp | Up (healthy) |
| SearXNG | searxng | 127.0.0.1:8081 | 8080/tcp | Up |
| Ollama | ollama | 127.0.0.1:11434 | 11434/tcp | Up |
| Valkey (Redis) | redis | 127.0.0.1:6379 | 6379/tcp | Up (healthy) |
| Caddy | caddy | 0.0.0.0:80, 0.0.0.0:443, [::]:80, [::]:443, 443/udp, 2019/tcp | 80/tcp, 443/tcp | Up |
| Supabase Storage | supabase-storage | 5000/tcp | 5000/tcp | Up (healthy) |
| Supabase Meta | supabase-meta | 8080/tcp | 8080/tcp | Up (healthy) |
| Supabase Auth | supabase-auth | Brak mapowania | Brak | Up (healthy) |
| Supabase Studio | supabase-studio | 3000/tcp | 3000/tcp | Up (healthy) |
| Supabase Pooler | supabase-pooler | 0.0.0.0:5432, [::]:5432, 0.0.0.0:6543, [::]:6543 | 5432/tcp, 6543/tcp | Up (healthy) |
| Supabase Realtime | realtime-dev.supabase-realtime | Brak mapowania | Brak | Unhealthy |
| Supabase REST | supabase-rest | 3000/tcp | 3000/tcp | Up |
| Supabase Kong | supabase-kong | 0.0.0.0:8000, [::]:8000, 0.0.0.0:8443, [::]:8443, 8001/tcp, 8444/tcp | 8000/tcp, 8443/tcp | Up (healthy) |
| Supabase Edge Functions | supabase-edge-functions | Brak mapowania | Brak | Up |
| Supabase Analytics | supabase-analytics | 0.0.0.0:4000, [::]:4000 | 4000/tcp | Up (healthy) |
| Supabase Postgres | supabase-db | 5432/tcp | 5432/tcp | Up (healthy) |
| Supabase Imgproxy | supabase-imgproxy | 8080/tcp | 8080/tcp | Up (healthy) |
| Vector | timberio/vector | Brak mapowania | Brak | Up (healthy) |
Analiza poprawności portów
Sprawdzimy, czy porty są poprawnie przypisane i czy występują konflikty.
1. Poprawnie skonfigurowane porty
Większość usług działa na unikalnych portach z mapowaniem na 127.0.0.1 (lokalny dostęp) lub 0.0.0.0 (dostęp zewnętrzny). Oto poprawnie skonfigurowane porty:
- Langfuse Web (
127.0.0.1:3000->3000/tcp): Standardowy port dla interfejsu Langfuse, dostępny lokalnie. - Langfuse Worker (
127.0.0.1:3030->3030/tcp): Dedykowany port dla workera, bez konfliktów. - n8n (
127.0.0.1:5678->5678/tcp): Standardowy port dla n8n, lokalny dostęp. - Open WebUI (
127.0.0.1:8080->8080/tcp): Standardowy port, bez konfliktów. - MinIO (
127.0.0.1:9010->9000/tcp, 127.0.0.1:9011->9001/tcp): Dedykowane porty, unikają konfliktów z innymi usługami. - Postgres (localai) (
127.0.0.1:5433->5432/tcp): Mapowanie na niestandardowy port hosta (5433) zapobiega konfliktom. - Qdrant (
127.0.0.1:6333-6334->6333-6334/tcp): Standardowe porty dla Qdrant, bez konfliktów. - Flowise (
127.0.0.1:3001->3001/tcp): Dedykowany port dla Flowise, poprawny. - SearXNG (
127.0.0.1:8081->8080/tcp): Mapowanie na 8081 unika konfliktów z innymi usługami na 8080. - Ollama (
127.0.0.1:11434->11434/tcp): Standardowy port dla Ollama, bez konfliktów. - Valkey (Redis) (
127.0.0.1:6379->6379/tcp): Standardowy port Redis, poprawny. - Caddy (
0.0.0.0:80, 0.0.0.0:443): Standardowe porty HTTP/HTTPS, dostępne zewnętrznie, poprawne dla reverse proxy. - Supabase Pooler (
0.0.0.0:5432, 0.0.0.0:6543): Dedykowane porty dla puli połączeń Supabase, dostępne zewnętrznie. - Supabase Analytics (
0.0.0.0:4000->4000/tcp): Dedykowany port, poprawny. - Supabase Kong (
0.0.0.0:8000, 0.0.0.0:8443): Standardowe porty dla Konga, dostępne zewnętrznie, poprawne dla API Gateway.
2. Powtarzające się porty i potencjalne konflikty
Kilka usług używa tych samych portów na poziomie kontenera lub hosta, co może powodować konflikty:
- Port 3000 (kontener):
- Langfuse Web (
127.0.0.1:3000->3000/tcp). - Supabase Studio (
3000/tcp). - Supabase REST (
3000/tcp). - Problem: Supabase Studio i Supabase REST używają portu
3000/tcpw kontenerach, ale brak mapowania na hosta (np.127.0.0.1:3000) może powodować konflikty w sieci Docker. - Rozwiązanie: Skonfiguruj mapowanie portów dla Supabase Studio i REST, np.:
# Edytuj docker-compose.yml services: supabase-studio: ports: - "127.0.0.1:3002:3000" supabase-rest: ports: - "127.0.0.1:3003:3000" - Po zmianie uruchom ponownie kontenery:
cd ~/local-ai-packaged docker compose down python3 start_services.py --profile gpu-nvidia --environment public
- Langfuse Web (
- Port 8080 (kontener):
- Open WebUI (
127.0.0.1:8080->8080/tcp). - Supabase Meta (
8080/tcp). - Supabase Imgproxy (
8080/tcp). - SearXNG (
127.0.0.1:8081->8080/tcp). - Problem: Supabase Meta i Imgproxy używają
8080/tcpw kontenerach bez mapowania na hosta, co może powodować konflikty w sieci Docker. - Rozwiązanie: Dodaj unikalne mapowania portów w
docker-compose.yml:services: supabase-meta: ports: - "127.0.0.1:8082:8080" supabase-imgproxy: ports: - "127.0.0.1:8083:8080" - Uruchom ponownie:
docker compose down python3 start_services.py --profile gpu-nvidia --environment public
- Open WebUI (
- Port 5432 (kontener):
- Postgres (localai) (
127.0.0.1:5433->5432/tcp). - Supabase Postgres (
5432/tcp). - Supabase Pooler (
0.0.0.0:5432->5432/tcp). - Problem: Supabase Postgres i Pooler używają
5432/tcpw kontenerach. Supabase Pooler mapuje0.0.0.0:5432, co może kolidować z innymi usługami Postgres na hoście. - Rozwiązanie: Dodaj mapowanie dla Supabase Postgres, np.:
services: supabase-db: ports: - "127.0.0.1:5434:5432" - Uruchom ponownie:
docker compose down python3 start_services.py --profile gpu-nvidia --environment public
- Postgres (localai) (
- Port 9000 (host):
- MinIO (
127.0.0.1:9010->9000/tcp). - ClickHouse (
127.0.0.1:9000->9000/tcp). - Problem: ClickHouse używa portu hosta
127.0.0.1:9000, co powoduje konflikt z potencjalnymi innymi usługami na hoście. - Rozwiązanie: Zmień port hosta dla ClickHouse w
docker-compose.yml:services: localai-clickhouse-1: ports: - "127.0.0.1:9002:9000" - Uruchom ponownie:
docker compose down python3 start_services.py --profile gpu-nvidia --environment public
- MinIO (
Zrzut ekranu: Edytor tekstu z otwartym plikiem docker-compose.yml pokazującym zmienione mapowania portów.
3. Usługi z problemami
- Neo4j (
localai-neo4j-1, Restarting):- Problem: Kontener Neo4j restartuje się, prawdopodobnie z powodu braku mapowania portów (domyślnie 7474, 7687).
- Rozwiązanie: Dodaj mapowanie portów w
docker-compose.yml:services: localai-neo4j-1: ports: - "127.0.0.1:7474:7474" - "127.0.0.1:7687:7687" - Sprawdź logi:
docker logs localai-neo4j-1 - Uruchom ponownie:
docker compose down python3 start_services.py --profile gpu-nvidia --environment public
- Supabase Realtime (
realtime-dev.supabase-realtime, Unhealthy):- Problem: Kontener jest oznaczony jako niezdrowy, co może wynikać z braku mapowania portów lub błędnej konfiguracji.
- Rozwiązanie: Sprawdź domyślne porty Supabase Realtime (4000) i dodaj mapowanie:
services: supabase-realtime: ports: - "127.0.0.1:4001:4000" - Sprawdź logi:
docker logs realtime-dev.supabase-realtime - Uruchom ponownie:
docker compose down python3 start_services.py --profile gpu-nvidia --environment public
Zrzut ekranu: Terminal z wynikiem docker logs localai-neo4j-1 pokazującym szczegóły błędu.
4. Testowanie dostępności usług
Po wprowadzeniu poprawek przetestuj dostępność usług:
- Sprawdź Flowise:
- Sprawdź Supabase Studio:
- Sprawdź Neo4j (po dodaniu portów):
curl -H "apikey: my-key" http://192.168.76.171:8000/flowise
curl http://192.168.76.171:8000/studio
curl http://127.0.0.1:7474
Zrzut ekranu: Przeglądarka z otwartą stroną Flowise na https://flowise.agencja-ai.com.
Najlepsze praktyki
- Unikalne porty: Używaj unikalnych portów hosta dla każdej usługi, np.
127.0.0.1:3002,127.0.0.1:3003. - Firewall: Otwórz tylko potrzebne porty:
- Monitorowanie: Regularnie sprawdzaj stan kontenerów:
- Kopia zapasowa: Zachowaj kopię
docker-compose.yml:
sudo ufw allow 80
sudo ufw allow 443
sudo ufw allow 8000
sudo ufw allow 8443
sudo ufw allow 3001
sudo ufw allow 4000
docker ps
cp ~/local-ai-packaged/docker-compose.yml ~/local-ai-packaged/docker-compose.yml.backup
Rozwiązywanie problemów
- Konflikt portów: Sprawdź zajęte porty na hoście:
- Usługa nie działa: Sprawdź logi konkretnego kontenera:
- Problemy z GPU: Upewnij się, że sterowniki NVIDIA są poprawnie skonfigurowane:
- Sieć: Sprawdź konfigurację sieci bridge:
sudo netstat -tuln | grep LISTEN
docker logs
docker run --rm --gpus all nvidia/cuda:12.2.2-base-ubuntu22.04 nvidia-smi
Zobacz nasz poradnik o NVIDIA dla Dockera.
ip addr show br0
Zobacz nasz poradnik o widoczności usług.
Zwiększanie sprzedaży instrukcji
- Polski język: Proste instrukcje po polsku przyciągają użytkowników.
- Demo: Pokaż działające Flowise na
https://flowise.agencja-ai.com. - PDF: Udostępnij ten artykuł jako PDF na agencja-ai.com.
Podsumowanie
Przeanalizowaliśmy porty usług w local-ai-packaged, zidentyfikowaliśmy konflikty (porty 3000, 8080, 5432, 9000) i zaproponowaliśmy poprawki w docker-compose.yml. Usługi takie jak Neo4j i Supabase Realtime wymagają dodatkowej konfiguracji. Twój serwer (192.168.76.171) jest teraz lepiej przygotowany do hostowania usług AI z GPU NVIDIA RTX 3060. Ten poradnik zwiększy atrakcyjność Twoich instrukcji na agencja-ai.com. Potrzebujesz więcej poradników, np. o konfiguracji Konga lub optymalizacji Supabase? Napisz do nas! 😄
Źródła: local-ai-packaged, Docker, Supabase