Dodaje serwer mcp postgresql
MCP mySQL
Dodaje serwer mcp mysql
Generacja hasła PowerShell
> [guid]::NewGuid().ToString() 872779d0-a0a1-4c91-b8b8-d580d78af8d7 - przykładowe hasło
Windows – generowanie UUID
PowerShell
[guid]::NewGuid().ToString()
Nodejs on Debian
# curl -fsSL https://deb.nodesource.com/setup_22.x | bash - # apt install -y nodejs
Serwery MCP – 1
Model Context Protocol
- mcp.so — katalog serwerów
- smithery.ai — kolejny katalog z łatwą instalacją
- github.com/modelcontextprotocol/servers — oficjalne serwery referencyjne
Wymagane narzędzia: npx, uv, uvx
# curl -LsSf https://astral.sh/uv/install.sh | sh
Max upload file:
Pliki które trzeba sprawdzić
/etc/php/8.4/fpm/php.ini /etc/php/8.4/cli/php.ini
Wartości które trzeb ustawić:
upload_max_filesize: 50M post_max_size: 50M
Sprawdzenie tylko CLI (nie fpm który faktycznie przesyła pliki przez Apache2)
# php -r "echo 'upload_max_filesize: ' . ini_get('upload_max_filesize') . PHP_EOL; echo 'post_max_size: ' . ini_get('post_max_size').PHP_EOL;"
Komendy: postgres
Sposób wyświetlania
SELECT * FROM tabela \gx - Odpowiednik \G (dla zapytania) \x - włączenie trybu pionowego na stałe \x auto - przełączenie na pionowy widok tylko wtedy, gdy wiersze są za szerokie dla ekranu
SELECT * FROM tabela \x\g\x - włącza tryb pionowy, wysła zapytanie i wyłącza tryb w jednej linii
Operacje na bazach danych
\l - lista baz danych \c moja_baza - połączenie z bazą
Tabele
\d - lista relacji \dt - lista tabel \d moja_tabela - struktura tabeli \d+ moja_tabela - szczegóły tabeli: komentarze, rozmiar na dysku,
RAG – vector – opis
1. Typ danych vector(1536) — co to znaczy?
Wyobraź sobie że każde słowo, zdanie lub dokument możesz opisać jako punkt w przestrzeni. Nie w przestrzeni 2D (x, y) ani 3D (x, y, z) — ale w przestrzeni 1536-wymiarowej.
Upgrade Debian 11 -> Debian 12
Kroki
- Zrób snapshot VPS
- Rób upgrade w oknie serwisowym
- Nie rób tego przez zwykłe SSH – użyj
screenlubtmux, żeby zerwanie połączenia nie przerwało procesu
Uprawnienia do logs/ tmp/
chown -R john:www-data /var/www/html/h27/tmp/ chmod -R 775 /var/www/html/h27/tmp/ chown -R john:www-data /var/www/html/h27/logs/ chmod -R 775 /var/www/html/h27/logs/
Postgres: baza i tabela dla pgvektor – powiązanie z cakePHP 5
# Dodaj repozytorium PGDG (oficjalne repo PostgreSQL)
Czytaj dalej Postgres: baza i tabela dla pgvektor – powiązanie z cakePHP 5
Pulsar edytor + ftp-remote-edit
- Zainstalować Pulsar
- Zainstalować nodejs (npm)
- Pobrać ftp-remote-edit-master :
https://github.com/h3imdall/ftp-remote-edit/archive/refs/heads/master.zip
MariaDB uuid
ALTER TABLE brands ADD `uuid` UUID DEFAULT UUID();
total_netto, total_brutto – virtual fields
Faktura (Invoices) nie ma pól netto, brutto, total_netto, total_brutto. Dane o kosztach znajduą się w InvoicePositions.netto i InvoicePositions.brutto
Claude Console – instalacja cakePHP
PHP nie ma klienta AI – zapytania poprzez curl
Dodawanie kluczy dla tabeli pośredniej
Struktura tabeli
VS Code – ssh remote
Rsync – kopiowanie plików i synchronizacja
Kopiujemy strukturę katalogów i plików ze zdalnego serwera na lokalny
Cloude Console – informacje
Cloude Code – używanie
Cloude Code logowanie
Logowanie do konta Claude Pro https://claude.ai/
Debian instalacja Cloude Code
Instalacja globalna dla użytkownika (nie root)
cakePHP obsługa plików
Pliki poza aplikacją:
# mkdir -p /var/uploads/my_app # chown www-data:www-data /var/uploads/my_app # chmod 750 /var/uploads/my_app
2. Szablony – Bootstrap UI
https://github.com/FriendsOfCake/bootstrap-ui
- Instalacja i uruchomienie pluginu
- Skopiowanie assetów
- AppView – uruchomienie treat’u initializeUI
- Wygenerowanie szablonów typu BootstrapUI
1. Nadpisywanie szablonów – kopia
# cd /var/www/my_project # cp -r vendor/cakephp/bake/templates/bake/ templates/bake/ - od tej pory do generowania modułu (bin/cake bake ..) będzie użyty lokalny szablon
Dodanie usera do grupy www-data
# usermod -a -G www-data <username> // Weryfikacja # groups <username> <username>: username git www-data
Dopełnienie zerami z przodu: str_pad, match
$next_nb = str_pad((string) $next, 2, '0', STR_PAD_LEFT);
Bootstrap Icons
Lista ikon: https://icons.getbootstrap.com/
Najlepsza metoda – instalacja npm i kopiowanie do właściwych katalogów Czytaj dalej Bootstrap Icons
Authentication – podstawowe komendy
W szablonie:
<?php $user_id = $this->getRequest()->getAttribute('identity')->getIdentifier(); ?>
W kontrolerze:
$user_id = $this->Authentication->getIdentity()->getIdentifier();
$role = $this->Authentication->getIdentity()->get('role'); $role == 'admin' || 'user'
Wyłączenie z dostępu po zalogowaniu
use Cake\Event\EventInterface; public function beforeFilter(EventInterface $event): void { parent::beforeFilter($event); if(!$this->is_admin) { $this->Flash->error(__('Nie ma takiej strony')); $event->setResult($this->redirect('/')); return; } $this->Authentication->addUnauthenticatedActions(['edit', 'changePassword' ]); }
csrf token – pole formularza
<!-- CSRF Token jako ukryte pole (fallback) --> <input type="hidden" name="_csrfToken" id="csrf-token-field" value="<?= $this->request->getAttribute('csrfToken') ?>">