Przejdź do treści
JT CONSULTING
Menu

Automatyzacje na własnym serwerze: n8n w praktyce

Juliusz Tomeczek,

W poprzednim odcinku tej serii opisałem monitor, który pilnuje moich stron, i zapowiedziałem narzędzie, które łączy ze sobą pozostałe programy na moim serwerze. Tym narzędziem jest n8n (otwiera się w nowej karcie), platforma do budowania automatyzacji, którą można zainstalować na własnym serwerze albo wykupić w chmurze jej twórców. n8n wykonuje za mnie powtarzalną pracę: przenosi dane z jednego programu do drugiego, zamienia surowe wyniki w czytelne wiadomości i powiadamia mnie, gdy coś wymaga mojej uwagi.

Opisuję, do czego go używam i w czym potrafi zawieść. Nie podaję listy przepływów, adresów ani ustawień z tego samego powodu co przy monitoringu, bo taki wykaz byłby mapą zaplecza dla każdego, kto chciałby się do niego dobrać.

Jak działa przepływ

Automatyzację w n8n buduje się na kanwie: kolejne kroki układa się jak klocki i łączy strzałkami, a cały zestaw kroków nazywa się przepływem. Każdy przepływ zaczyna się od wyzwalacza, czyli zdarzenia, na które n8n czeka. Może to być zmiana w innym programie, termin w kalendarzu albo zapytanie z zewnątrz, na przykład z formularza na stronie. Kolejne kroki pobierają dane, przekształcają je i przekazują dalej.

Prosty przykład wygląda tak: ktoś wypełnia formularz na stronie, n8n zapisuje zgłoszenie w programie do obsługi klientów i wysyła mi powiadomienie. Bez automatu te trzy czynności wykonywałbym ręcznie przy każdym zgłoszeniu.

Kanwa n8n z przykładowym przepływem: wyzwalacz formularza na stronie, krok przygotowujący zgłoszenie, zapis w programie do obsługi klientów i rozgałęzienie, które o pilnym zgłoszeniu powiadamia od razu, a pozostałe dopisuje do podsumowania dnia; nazwy kroków są po angielsku (powiększ)
Przykładowy przepływ zbudowany na potrzeby tego artykułu. Każdy prostokąt to jeden krok, a strzałki pokazują, dokąd trafiają dane. Nazwy kroków zapisałem po angielsku, żeby ten sam przykład służył obu wersjom językowym artykułu.

n8n ma setki gotowych połączeń z popularnymi programami i usługami. Gdy połączenia brakuje, krok może wysłać zwykłe zapytanie do interfejsu programu albo wykonać kilka wierszy własnego kodu. n8n potrafi też przekazać dane modelowi językowemu i działać jako agent sztucznej inteligencji, ale większość codziennej pracy wykonują zwykłe kroki, które za każdym razem robią to samo.

Przepływy buduje dziś Claude Code

Jeszcze niedawno zbudowanie przepływu zajmowało godziny: trzeba było dobrać kroki, ustawić w nich pola i szukać przyczyny, dla której dane nie trafiają tam, gdzie powinny. Dziś tę pracę wykonuje u mnie Claude Code, czyli asystent programisty oparty na modelu językowym, połączony bezpośrednio z n8n. Opisuję zwykłymi słowami, co przepływ ma robić, a Claude Code dobiera kroki, ustawia je i zapisuje gotowy przepływ w n8n. Tak powstał również przykład z rysunku powyżej.

Najwięcej daje połączenie Claude Code z drugim mózgiem, czyli uporządkowaną bazą wiedzy o moich projektach, serwerze i decyzjach. Po zbudowaniu przepływu Claude Code zapisuje w niej, co przepływ robi, jak działa i dlaczego powstał. Przy kolejnej pracy wie więc, jakie przepływy już działają i z jakiego powodu, a z opisu programów na serwerze sam podpowiada, jakich przepływów brakuje i którą powtarzalną czynność warto powierzyć automatowi.

Cykl powstawania przepływu w sześciu krokach: mój opis zwykłymi słowami, Claude Code dobiera i ustawia kroki, przepływ zapisany w n8n jeszcze nie działa, sprawdzam go i publikuję sam, przepływ działa, a Claude Code zapisuje w drugim mózgu, co przepływ robi, jak działa i dlaczego powstał. Przy kolejnej pracy Claude Code czyta drugi mózg i podpowiada, czego brakuje (powiększ)

Ostatnie słowo zostawiam jednak sobie. Przepływ zbudowany przez model sprawdzam tak samo jak przepływ zbudowany ręcznie, a publikację, która dopiero go uruchamia, wykonuję sam. Powody opisuję niżej, w części o granicach n8n.

Co zastępuje i co to oznacza dla kosztów

Najbardziej znane usługi tego rodzaju, takie jak Zapier i Make, działają w chmurze, a ich dostawcy rozliczają klienta z liczby kroków, które wykonają jego automatyzacje. Każda nowa automatyzacja i każdy dodatkowy krok zużywają więc abonament szybciej. Twórcy n8n w swojej chmurze liczą wykonania całego przepływu, niezależnie od liczby kroków. Na własnym serwerze nie płacę opłaty licencyjnej wcale, a kosztem jest serwer, który i tak utrzymuję, oraz czas poświęcony na aktualizacje.

Porównanie trzech sposobów rozliczania automatyzacji. Usługa w chmurze pobiera opłatę za każdy krok przepływu złożonego z wyzwalacza i dwóch kroków, n8n w chmurze liczy cały przepływ jako jedno wykonanie, a n8n na własnym serwerze działa bez opłaty licencyjnej: kosztem jest serwer i aktualizacje, a dane zostają u mnie (powiększ)

Drugi powód waży więcej niż koszt. Gdy automatyzacja działa w cudzej chmurze, wszystkie dane, które przez nią płyną, przechodzą też przez serwery jej dostawcy: zgłoszenia z formularzy, adresy e-mail i dane klientów. Na własnym serwerze te dane zostają u mnie.

Kod n8n jest jawny, ale n8n nie jest programem open source. Licencja, którą twórcy nazywają modelem fair-code, pozwala używać programu we własnej firmie i prywatnie, lecz nie pozwala odsprzedawać go innym jako usługi. Firmie, która automatyzuje własną pracę, to ograniczenie nie przeszkadza, ale warto je znać przed zbudowaniem na n8n produktu dla klientów.

Co n8n robi u mnie

Schemat z n8n na moim serwerze pośrodku i czterema zadaniami po bokach. n8n zamienia raporty skryptów kontroli stanu serwera w krótką wiadomość na komunikatorze, przenosi projekt z programu do projektów do programu do rozliczania czasu, wysyła zgłoszenia z formularzy na stronie do newslettera i CRM z powiadomieniem dla mnie oraz zamienia błąd w którymś przepływie w powiadomienie o błędzie (powiększ)

Raporty o stanie serwera. Skrypty, które regularnie sprawdzają serwer, oddają surowe dane: liczby, stany i daty. n8n odbiera je, porównuje z progami i zamienia w krótką wiadomość na komunikatorze, którą da się przeczytać w kilka sekund. To właśnie te raporty zapowiedziałem w artykule o monitoringu.

Projekty i czas pracy. Gdy zakładam nowy projekt w programie do prowadzenia projektów, n8n zakłada go także w programie do rozliczania czasu pracy. Nie przepisuję nazw ręcznie, więc nie powstaje rozjazd między tym, nad czym pracuję, a tym, za co rozliczam godziny. Oba programy dostaną w tej serii własne odcinki.

Formularze na stronie. Zapis na newsletter i wiadomość z formularza kontaktowego trafiają przez n8n do systemu wysyłki newslettera i do programu do obsługi klientów, a do mnie przychodzi tylko powiadomienie z odnośnikiem do zgłoszenia. Dane osób, które wypełniły formularz, nie przechodzą przez żadną zewnętrzną usługę automatyzacji.

Powiadomienie o błędzie. Osobny przepływ czuwa nad pozostałymi. Gdy któryś z nich zatrzyma się na błędzie, dostaję o tym wiadomość, więc wiem, że jakieś dane nie dotarły tam, gdzie powinny.

Gdzie są granice

Zielony znacznik nie znaczy, że się udało. n8n oznacza krok na zielono, gdy krok się wykonał, a nie wtedy, gdy osiągnął cel. Jeżeli krok jest ustawiony tak, żeby błąd nie przerywał przepływu, program po drugiej stronie może odmówić przyjęcia danych, a kanwa i tak pokaże zielony znacznik. O wyniku rozstrzyga odpowiedź tego programu, więc to ją trzeba czytać, a nie kolor na kanwie.

Zapisana zmiana to jeszcze nie wdrożona zmiana. Działający przepływ wykonuje wersję, która została opublikowana. Poprawka zapisana w edytorze nie zmienia działania przepływu, dopóki nie zostanie on opublikowany ponownie. Łatwo więc poprawić błąd, a potem przez kilka dni szukać przyczyny, dla której poprawka nie działa.

Klucz, bez którego kopia nic nie da. Hasła i klucze dostępu do innych programów n8n przechowuje w postaci zaszyfrowanej. Kopia zapasowa bez klucza szyfrującego odtworzy przepływy, ale nie połączenia, i każde z nich trzeba będzie skonfigurować od nowa. Klucz należy więc przechowywać osobno i tak samo starannie jak samą kopię. Kopiom zapasowym poświęcę osobny odcinek.

Automat, który milczy. Gdy raport nie przychodzi, może to znaczyć, że wszystko jest w porządku, albo że automat przestał działać. Dlatego monitor dostępności sprawdza także n8n, tak samo jak moje strony, a błędy przepływów mają własne powiadomienie. Narzędzie, które pilnuje innych, samo też potrzebuje strażnika.

Czy mała firma potrzebuje własnego n8n

Kilka prostych automatyzacji obsłuży usługa w chmurze i nie warto dla nich stawiać serwera. Własna instalacja zaczyna się opłacać, gdy automatyzacji przybywa, gdy przechodzą przez nie dane osobowe albo gdy łączą programy, które i tak działają na własnym serwerze. Wtedy rachunek za kroki w chmurze rośnie z miesiąca na miesiąc, a dane klientów krążą przez kolejną firmę, którą trzeba uwzględnić w dokumentacji ochrony danych.

Stawiam n8n dla firm na ich własnych serwerach, razem z przepływami dopasowanymi do programów, z których korzystają. Zakres tej pracy opisuje strona Własny serwer zamiast abonamentów.

Co dalej w tej serii

W następnym odcinku opiszę narzędzie do prowadzenia projektów, które działa na moim serwerze zamiast w cudzej chmurze. To z niego n8n przenosi nowe projekty do programu do rozliczania czasu pracy.

Ten tekst powstał z użyciem narzędzi sztucznej inteligencji, bo tak pracuję na co dzień i tego uczę. Każde twierdzenie w nim sprawdziłem i odpowiadam za nie z imienia i nazwiska. Rysunki w tym dziale powstały tak samo: są wektorowe, napisane jako kod przy tej samej pomocy. Zrzuty ekranu pokazują prawdziwe programy i robię je sam.

Juliusz Tomeczek, JT CONSULTING

Porozmawiajmy o współpracy

Napisz krótko, czego potrzebujesz, a odezwę się z propozycją następnego kroku. Odpowiadam osobiście, bo w JT CONSULTING nie ma działu obsługi.

Jeżeli wolisz najpierw poczytać, więcej tekstów o sztucznej inteligencji znajdziesz na moim blogu AI for Everyone. Zobacz blog