Wprowadzenie
Hej! 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 zauważyłeś w wyniku polecenia docker ps kontener localai-supabase-1, śmigający na portach 127.0.0.1:5432 i 127.0.0.1:8000? Zastanawiasz się, czym jest Supabase i jak wspiera Twoje środowisko AI? Ten idiotoodporny poradnik wyjaśni, czym jest Supabase, do czego służy w local-ai-packaged i jak współpracuje z narzędziami typu Flowise, Ollama czy Open WebUI. Artykuł jest po polsku, z gotowymi komendami i zrzutami ekranu, idealny dla czytelników agencja-ai.com!
Czym jest Supabase?
Supabase to open-source’owa platforma Backend as a Service (BaaS), która działa jak Firebase, ale opiera się na potężnej bazie PostgreSQL. To taki szwajcarski scyzoryk dla programistów – daje gotowy backend z bazą danych, uwierzytelnianiem, API, przechowywaniem plików i funkcjami w czasie rzeczywistym, wszystko w jednym Supabase Docs. Możesz hostować go lokalnie (jak w local-ai-packaged) lub w chmurze, a wszystko jest super elastyczne i przyjazne dla aplikacji AI Supabase GitHub.
W projekcie local-ai-packaged, Supabase działa jako kontener Docker (localai-supabase-1) na portach 127.0.0.1:5432 (PostgreSQL) i 127.0.0.1:8000 (API RESTful via PostgREST), zapewniając solidny backend dla Twoich aplikacji AI.
Kluczowe cechy Supabase:
- PostgreSQL: Relacyjna baza danych z pełnym wsparciem dla SQL, transakcji i indeksów.
- Uwierzytelnianie: Logowanie przez e-mail, OAuth (np. Google, GitHub) i tokeny JWT.
- Automatyczne API: REST i GraphQL generowane na podstawie schematu bazy.
- Przechowywanie plików: Magazyn w stylu S3, zintegrowany z MinIO w projekcie.
- Realtime: Synchronizacja danych w czasie rzeczywistym przez WebSockets.
- Wektory dla AI: Obsługa osadzeń (embeddings) dla wyszukiwań semantycznych i RAG.
Do czego służy Supabase w local-ai-packaged?
W local-ai-packaged Supabase to serce backendu dla aplikacji AI, takich jak Flowise, Ollama czy Open WebUI. Działa jak centralny magazyn danych i centrum zarządzania, wspierając różne aspekty Twojego środowiska AI. Oto, co robi:
- Przechowywanie danych: Zapisuje wyniki inferencji modeli AI (np. z Ollama) czy dane przepływów pracy Flowise.
- Zarządzanie użytkownikami: Obsługuje logowanie i uprawnienia, np. dla Open WebUI, z tokenami JWT.
- API dla aplikacji: Automatyczne API REST i GraphQL ułatwiają integrację z frontendem lub narzędziami AI.
- Pliki i modele: Przechowuje pliki, np. modele AI lub multimedia, w połączeniu z MinIO.
- Realtime: Umożliwia natychmiastowe aktualizacje, np. nowe dane w Flowise są od razu widoczne.
- AI i wektory: Obsługuje osadzenia wektorowe, kluczowe dla aplikacji RAG czy wyszukiwań semantycznych.
Zrzut ekranu: Panel Supabase Studio otwarty w przeglądarce na http://127.0.0.1:8000, pokazujący tabelę z danymi użytkowników lub wynikami AI.
Jak Supabase działa w local-ai-packaged?
Supabase w local-ai-packaged jest skonfigurowany w pliku docker-compose.yml i uruchamiany za pomocą skryptu start_services.py. Oto przykładowa konfiguracja:
services:
supabase:
image: supabase/postgres:latest
ports:
- "127.0.0.1:5432:5432"
- "127.0.0.1:8000:8000"
environment:
- POSTGRES_PASSWORD=your_secure_password
- JWT_SECRET=your_jwt_secret
- ANON_KEY=your_anon_key
- SERVICE_ROLE_KEY=your_service_role_key
volumes:
- supabase-data:/var/lib/postgresql/data
depends_on:
- kong
volumes:
supabase-data:
Wyjaśnienie:
ports: Mapuje porty hosta127.0.0.1:5432(PostgreSQL) i127.0.0.1:8000(API PostgREST).environment: Ustawia hasło bazy, klucz JWT i klucze API (anonimowy i service role).volumes: Zapisuje dane w wolumeniesupabase-datadla trwałości.depends_on: Integruje się z Kongiem dla zarządzania API.
Zrzut ekranu: Edytor kodu z otwartym plikiem docker-compose.yml, pokazującym konfigurację Supabase.
Kroki do przetestowania Supabase
- Uruchom projekt z profilem GPU:
- Sprawdź dostępność Supabase:
- Przetestuj bazę PostgreSQL:
- Przetestuj API przez Konga (jeśli skonfigurowano trasę):
cd ~/local-ai-packaged
python3 start_services.py --profile gpu-nvidia --environment public
curl http://127.0.0.1:8000/rest/v1/
Otwórz przeglądarkę i wejdź na http://127.0.0.1:8000. Powinieneś zobaczyć panel Supabase Studio lub odpowiedź API.
docker exec -it localai-supabase-1 psql -U postgres -d postgres
CREATE TABLE users (id SERIAL PRIMARY KEY, name TEXT);
INSERT INTO users (name) VALUES ('Jan'), ('Anna');
SELECT * FROM users;
curl -H "apikey: your_anon_key" http://192.168.76.171:8000/supabase/rest/v1/users
Zrzut ekranu: Terminal z wynikiem zapytania SELECT * FROM users w psql.
Dlaczego Supabase jest ważny w local-ai-packaged?
Supabase to kluczowy element local-ai-packaged, ponieważ:
- Prosty backend: Daje gotowe rozwiązania, oszczędzając czas na konfigurację infrastruktury.
- PostgreSQL: Oferuje potężną, relacyjną bazę danych dla złożonych aplikacji AI.
- Integracje: Współpracuje z Flowise (przepływy pracy), Ollama (modele AI) i MinIO (pliki).
- Bezpieczeństwo: Row Level Security (RLS) zapewnia granularną kontrolę dostępu.
- Skalowalność: Działa na Twoim serwerze
192.168.76.171z GPU NVIDIA RTX 3060, gotowy na duże obciążenia.
Uwaga: Masz problem z GPU? Sprawdź nasz poradnik o sterownikach NVIDIA dla Dockera.
Najlepsze praktyki
- Bezpieczeństwo: Skonfiguruj Konga z wtyczką
key-auth: - Włącz RLS: Zabezpiecz tabele z Row Level Security:
- Monitorowanie: Sprawdzaj logi:
- Backup danych: Regularnie archiwizuj wolumen
supabase-data: - Firewall: Otwórz tylko potrzebne porty:
# Edytuj kong.yaml
services:
- name: supabase
url: http://supabase:8000
routes:
- name: supabase-route
paths:
- /supabase
plugins:
- name: key-auth
config:
key_names:
- apikey
docker exec -it localai-supabase-1 psql -U postgres -d postgres
ALTER TABLE users ENABLE ROW LEVEL SECURITY;
CREATE POLICY users_policy ON users FOR ALL TO public USING (true);
docker logs localai-supabase-1
cp -r /var/lib/docker/volumes/supabase-data /var/lib/docker/volumes/supabase-data-backup
sudo ufw allow 5432
sudo ufw allow 8000
Rozwiązywanie problemów
- Supabase niedostępny: Sprawdź porty
5432i8000: - Błąd API: Upewnij się, że używasz poprawnych kluczy (
ANON_KEY,SERVICE_ROLE_KEY) zdocker-compose.yml. - Problemy z siecią: Sprawdź sieć Docker:
- Problemy z GPU: Sprawdź sterowniki NVIDIA:
- Kontakt: Napisz na agencja-ai.com/kontakt.
sudo netstat -tuln | grep -E '5432|8000'
docker network inspect localai
Zobacz nasz poradnik o widoczności usług.
docker run --rm --gpus all nvidia/cuda:12.2.2-base-ubuntu22.04 nvidia-smi
Zobacz nasz poradnik o NVIDIA dla Dockera.
Zwiększanie sprzedaży instrukcji
- Polski język: Proste instrukcje po polsku przyciągają czytelników.
- Demo: Pokaż Supabase Studio na
http://127.0.0.1:8000lub przez Konga nahttps://supabase.agencja-ai.com. - PDF: Udostępnij ten artykuł jako PDF na agencja-ai.com.
Podsumowanie
Supabase w local-ai-packaged to potężny backend oparty na PostgreSQL, działający na portach 127.0.0.1:5432 i 127.0.0.1:8000, wspierający aplikacje AI na serwerze 192.168.76.171 z GPU NVIDIA RTX 3060. Oferuje bazę danych, API, uwierzytelnianie, przechowywanie plików i funkcje real-time, idealnie współpracując z Flowise, Ollama czy MinIO. Ten poradnik zwiększy atrakcyjność Twoich instrukcji na agencja-ai.com. Chcesz więcej, np. o konfiguracji wektorów w Supabase lub integracji z Open WebUI? Napisz do nas! 😄
Źródła: Supabase, local-ai-packaged, Docker, Supabase Docs, Supabase GitHub