Kilkanaście miesięcy temu wrzucałem opis procesu częściowej automatyzacji programu kart MultiSport. Nieco później, przy okazji #AI_devs2, poznałem inne narzędzie do automatyzacji: make.com. Fajna sprawa. Jak się dobrze przemyśli temat, to można oddelegować automatom naprawdę dużo powtarzalnych działań.
Główny problem jaki mam z make.com jest sposób rozliczania. Płaci się w nim per operacja z flow. Oznacza to, że im scenariusz jest bardziej rozbudowany, tym więcej kosztuje. Nie można więc szaleć do woli, chyba że ma się worek siana 🙂
Postanowiłem więc przetestować chyba najlepiej ocenianą alternatywą, którą można samodzielnie hostować, czyli n8n* i postawić go na najtańszym dostępnym na polskim rynku VPSie, czyli Mikrusie. A że jestem zupełnie świeżo po tym procesie, to stwierdziłem, że się nim w poniższym wpisie z Tobą podzielić.
* jeden typek w internecie czyta to jako nejtan i może ma słuszność 😉
Wersja 2.1 powinna być wystarczająca – informacja z pierwszej ręki 😉 Jeżeli będzie większa potrzeba, to w dowolnym momencie można zrobić upgrade.
W każdym razie na początek zacznijmy od 2.1. Cena za rok (na tę chwilę) to 75 zł. Przy zakupie na dwa lata to 128 zł.
Dodatkowo, jeżeli przy zakupie skorzystasz z mojego link afiliacyjnego, to otrzymasz dodatkowy miesiąc Mikrusa gratis.
Krok 2: Skonfiguruj Mikrusa
Po zakupie i otrzymaniu odpowiednich dostępów, wystarczy zalogować się na swój serwer VPS.
Tam poleceniem start
można przeprowadzić wstępną konfigurację.
Na potrzeby n8n, najważniejsze jest, żeby potwierdzić kiedy padnie pytanie o instalację Dockera.
Krok 3: Przygotuj katalog na dane n8n
|
mkdir ~/.n8n chmod 777 ~/.n8n |
Krok 4: Uruchom n8n po raz pierwszy
Na początek wystarczy polecenie:
|
docker run -d --name n8n --rm -p TWÓJ_PORT:5678 -v ~/.n8n:/home/node/.n8n n8nio/n8n:latest |
Wartość TWÓJ_PORT
należy zastąpić jednym z Twoich portów otwartych na świat. Może być pierwszy z brzegu. Port znajdziesz na przykład zaglądając do pliku /etc/motd
.
Ważne! W tej konfiguracji n8n uruchomi się z bazą SQLite. Na razie nam to nie przeszkadza, ale jeżeli od razu chcesz wystartować z PostgreSQL, to będzie potrzeba kilka dodatkowych parametrów.
Teraz polecenie docker ps
powinno pokazać uruchomiony kontener n8n, a pod adresem http://srvNN.mikr.us:TWÓJ_PORT
(NN musisz zamienić na to co otrzymasz od Mikrusa) Twoim oczom ukaże się coś podobnego:

Wszystko pod kontrolą 🙂
Krok 5: Skonfiguruj subdomenę na Mikrusie
W panelu zarządzania Mikrusem znajdziesz zakładkę Subdomeny, a w niej prosty formularz: wprowadzasz wymyśloną przez siebie subdomenę, wybierasz jedną z dostępnych domen i podajesz TWÓJ_PORT
tam gdzie pyta o port.
Powiedzmy, że wynikowo otrzymujesz twoja_subdomena.domena_mikr.us
. Po chwili, pod tym adresem powinno znaleźć się coś podobnego:

Dobra nasza! Mamy n8n na Mikrusie 🙂
Krok 6: Poproś o dostęp do współdzielonego Postgresa na Mikrusie
Będąc nadal w panelu zarządzania Mikrusem, w zakładce PostgreSQL (w sekcji Bazy danych) znajduje się przycisk: Poproszę o nowe dane dostępowe.

Kliknij na niego, a otrzymasz coś takiego:
|
Server: serwer_pgsql.mikr.us login: twoj_login Haslo: twoje_haslo Baza: twoja_baza_danych |
Krok 7: Uruchom n8n w pełni produkcyjnie
Teraz możemy zebrać wszystko do kupy i przygotować docelową konfigurację.
Najpierw tworzymy plik docker-compose.yml
(w dowolnym katalogu), pamiętając o tym, żeby zastąpić co trzeba swoimi damymi:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
version: "3.7" services: n8n: image: n8nio/n8n container_name: n8n restart: always ports: - "TWÓJ_PORT:5678" environment: - TZ=Europe/Warsaw - N8N_HOST=twoja_subdomena.domena_mikr.us - N8N_PORT=5678 - N8N_PROTOCOL=https - NODE_ENV=production - WEBHOOK_URL=https://twoja_subdomena.domena_mikr.us/ - GENERIC_TIMEZONE=Europe/Warsaw - N8N_RUNNERS_ENABLED=true - DB_TYPE=postgresdb - DB_POSTGRESDB_HOST=twoja_subdomena.domena_mikr.us - DB_POSTGRESDB_PORT=5432 - DB_POSTGRESDB_DATABASE=twoja_baza_danych - DB_POSTGRESDB_USER=twoj_login - DB_POSTGRESDB_PASSWORD=twoje_haslo volumes: - ~/.n8n:/home/node/.n8n |
Następnie wyłączamy działający kontener:
I uruchamiamy przed chwilą skonfigurowany. Będąc w katalogu z plikiem docker-compose.yml
uruchamiamy polecenie:
Voilà! 🙂
To dopiero początek
Narzędzie przygotowane. Teraz czas na pierwsze automatyzacje 🙂
Daj znać w komentarzu poniżej, czy interesują Cię tego typu tematy, to będę wiedział jak bardzo się nimi dzielić.
Chętnie dowiem się również co Tobie udało się do tej pory zautomatyzować (nie tylko) przy pomocy n8n.
Bądź na bieżąco!
Podobają Ci się treści publikowane na moim blogu? Nie chcesz niczego pominąć? Zachęcam Cię do subskrybowania kanału RSS, polubienia fanpage na Facebooku, zapisania się na listę mailingową:
lub śledzenia mnie na Twitterze. Generalnie polecam wykonanie wszystkich tych czynności, bo często zdarza się tak, że daną treść wrzucam tylko w jedno miejsce. Zawsze możesz zrobić to na próbę, a jeśli Ci się nie spodoba – zrezygnować 
Dołącz do grup na Facebooku
Chcesz więcej? W takim razie zapraszam Cię do dołączenia do powiązanych grup na Facebooku, gdzie znajdziesz dodatkowe informacje na poruszane tutaj tematy, możesz podzielić się własnymi doświadczeniami i przemyśleniami, a przede wszystkim poznasz ludzi interesujących się tą samą tematyką co Ty.
W grupie Programista Na Swoim znajdziesz wiele doświadczonych osób chętnych do porozmawiania na tematy krążące wokół samozatrudnienia i prowadzenia programistycznej działalności gospodarczej. Vademecum Juniora przeznaczone jest zaś do wymiany wiedzy i doświadczeń na temat życia, kariery i problemów (niekoniecznie młodego) programisty.
Wesprzyj mnie
Jeżeli znalezione tutaj treści sprawiły, że masz ochotę wesprzeć moją działalność online, to zobacz na ile różnych sposobów możesz to zrobić. Niezależnie od tego co wybierzesz, będę Ci za to ogromnie wdzięczny.

Na wsparciu możesz także samemu zyskać. Wystarczy, że rzucisz okiem na listę różnych narzędzi, które używam i polecam. Decydując się na skorzystanie z któregokolwiek linku referencyjnego otrzymasz bonus również dla siebie.
Picture Credits
17 kwietnia 2025 at 08:56
Ach ten Jakub. Jeszcze bardziej to uprościł:
21 marca 2025 at 13:11
Dzięki! Szkoda, że nie było tego poradnika miesiąc temu bo się trochę namęczyłem, ale się udało 🙂 pytanie o bazę danych – do czego jest potrzebna? zrobiłem kilka bazowych automatyzacji i na razie wszystko działa, zastanawiam się czy np. do supabase instalacja postgresql będzie konieczna?
21 marca 2025 at 13:45
Bardzo proszę 🙂 Też się troszkę namęczyłem i dlatego postanowiłem spisać to dla potomnych.
Pytasz o tego PostgreSQLa? Jeżeli nie wskażesz bazy danych w ustawieniach n8n, to ten, w domyślnym odpaleniu uruchamia się z SQLite. A SQLite, to taka baza znajdująca się w całości w jednym pliku (znajdziesz go w tym folderze
.n8n
). Tam wylądują informacje o każdym Twoim workflow zbudowanym w n8n i o wielu innych ustawieniach. Ja wolałem użyć współdzielonego PostgreSQL, bo ten bardziej znam, a Mikrus wystawia kawałek UI do jego przeglądania. Do prywatnego użytku z SQLite pewnie też da się długofalowo żyć.