W świecie, gdzie automatyzacja procesów biznesowych staje się kluczowym elementem efektywnego działania firm, narzędzia typu workflow automation zyskują na znaczeniu. Jednym z najbardziej elastycznych i otwartych rozwiązań jest n8n — platforma typu open-source, która pozwala tworzyć zaawansowane przepływy pracy bez konieczności pisania kodu. Jeśli korzystasz z Microsoft Azure i chcesz zintegrować n8n ze swoją infrastrukturą chmurową, ten artykuł przeprowadzi Cię krok po kroku przez proces instalacji, konfiguracji i uruchomienia środowiska automatyzacji, które naprawdę robi różnicę.
Architektura rozwiązania
Architektur rozwiązania prezentuje się następująco:

Wymagania wstępne
Zanim rozpoczniesz, upewnij się, że masz:
Wymagane narzędzia
- Azure CLI (wersja 2.15.0 lub nowsza)
- Docker (do testów lokalnych — opcjonalnie)
- Powłoka Bash (Linux, macOS lub Windows WSL)
- Edytor tekstu (zalecany VS Code)
Wymagania dotyczące Azure
- Aktywna subskrypcja Azure z odpowiednimi uprawnieniami
- Rola Contributor na subskrypcji lub grupie zasobów
- Możliwość tworzenia grup zasobów, rejestrów kontenerów i aplikacji kontenerowych
Wymagana wiedza techniczna
- Podstawowa znajomość pracy w wierszu poleceń
- Rozumienie kontenerów Docker (pomocne, ale nie wymagane)
- Podstawowe pojęcia Azure (grupy zasobów, regiony)
Zrozumienie architektury
Nasze wdrożenie n8n będzie składało się z wielu usług Azure współpracujących ze sobą, aby zapewnić bezpieczną, skalowalną i gotową do produkcji platformę automatyzacji przepływów pracy.
Kluczowe komponenty:
- Azure Container Registry (ACR): przechowuje nasz niestandardowy obraz Dockera n8n zbudowany na Azure Linux 3
- Środowisko Container App: zarządza środowiskiem uruchomieniowym z możliwością automatycznego skalowania
- Aplikacja kontenerowa n8n: główna aplikacja działająca w bezpiecznym kontenerze bez uprawnień root
- Baza danych PostgreSQL: trwałe przechowywanie przepływów pracy, wykonań i danych użytkowników
- Azure Key Vault: centralne zarządzanie hasłami i kluczami szyfrującymi
- Profil obciążenia: konfiguracja skalowania w modelu konsumpcyjnym (0–10 instancji)
Przygotowanie
Wybór regionu Azure
Wybierz region Azure blisko swoich użytkowników dla lepszej wydajności. Popularne opcje:
- Sweden Central (swedencentral) – dla użytkowników w Europie
- East US (eastus) – dla użytkowników w Ameryce Północnej
- Southeast Asia (southeastasia) – dla użytkowników w Azji
Konwencja nazewnictwa
- Grupa zasobów: n8n-eg-[region]-linux
- Środowisko: n8n-env
- Aplikacja kontenerowa: my-n8n-app
- Rejestr kontenerów: [unikalna-nazwa]acr
Krok 1: Przygotowanie środowiska
1.1 Logowanie do Azure
az login
1.2 Ustawienie domyślnej subskrypcji
# List available subscriptions
az account list --output table
# Set your subscription (replace with your subscription ID)
az account set --subscription "your-subscription-id"
1.3 Instalacja rozszerzenia Container Apps
az extension add --name containerapp --upgrade
1.4 Rejestracja wymaganych providerów
az provider register --namespace Microsoft.App az provider register --namespace Microsoft.OperationalInsights
Krok 2: Utworzenie środowiska Container App
2.1 Konfiguracja zmiennych (1_create_workload_profile.sh)
# Edit these values according to your preferences
RESOURCE_GROUP="n8n-eg-northeurope-linux"
# Your resource group name
LOCATION="northeurope"
# Your preferred Azure region WORKLOAD_PROFILE_NAME="n8n-workload-profile"
ENV_NAME="n8n-env"
2.2 Uruchomienie skryptu
# Make the script executable
chmod +x 1_create_workload_profile.sh # Run the script ./1_create_workload_profile.sh
Krok 3: Budowa obrazu Dockera n8n
3.2 Konfiguracja zmiennych (2_build_image.sh)
#Edit these values
ACR_NAME="your-unique-acr-name"
# Must be globally unique (alphanumeric only)
IMAGE_NAME="n8n-azure"
#Your image name
RESOURCE_GROUP="n8n-eg-northeurope-linux"
#Same as step 2
LOCATION="northeurope"
#Same as step 2
DOCKERFILE_PATH="Dockerfile.azurelinux"
# Change to your Dockerfile path (default: Dockerfile)
3.3 Uruchomienie skryptu
# Make the script executable
chmod +x 2_build_image.sh # Run the script ./2_build_image.sh
Krok 4: Wdrożenie aplikacji kontenerowej n8n
4.1 Konfiguracja zmiennych (3_deploy_container_app.sh)
# Application Configuration
CONTAINER_APP_NAME="my-n8n-app"
# Your app name
LOCATION="northeurope"
# Same as previous steps
RESOURCE_GROUP="n8n-rg-northeurope"
# Resource group name
ACR_NAME="yourn8nacr"
# Same ACR name from step 3
IMAGE_NAME="n8n-azure"
# Same image name from step 3
# Database Configuration
DB_SERVER_NAME="your-n8n-db-server"
# Unique database server name
DB_ADMIN_USER="n8n_admin"
# Database admin username
DB_NAME="n8n"
# Database name
# n8n Configuration
N8N_DOMAIN="your-domain.com"
# Your domain (or use provided URL later)
N8N_USERNAME="admin"
# n8n admin username
KEYVAULT_NAME="your-n8n-kv"
# Unique Key Vault name
4.2 Uruchomienie skryptu
# Make the script executable
chmod +x 3_deploy_container_app.sh
# Run the script
./3_deploy_container_app.sh
Krok 5: Dostęp i konfiguracja n8n
Na końcu skryptu otrzymasz adres URL hosta n8n.
Lista kontrolna bezpieczeństwa produkcyjnego
- Zmień domyślne hasła natychmiast po wdrożeniu
- Włącz HTTPS z własną domeną i certyfikatem SSL
- Skonfiguruj ograniczenia sieciowe (tylko zaufane adresy IP)
- Włącz Azure Monitor do logowania i alertów
- Skonfiguruj strategię kopii zapasowych
- Przejrzyj polityki dostępu Key Vault
- Włącz audyt bazy danych
Optymalizacja kosztów
- Container Apps: płacisz tylko, gdy aplikacja działa
- Plan konsumpcyjny: $0.000024/vCPU-sekunda + $0.000003/GiB-sekunda
- Typowe użycie n8n: ~$10–30/miesiąc
- PostgreSQL Database: od ~$25/miesiąc (Basic tier)
- Container Registry: ~$5/miesiąc + transfer
Kolejne kroki
- Utwórz swoje pierwsze workflowy w n8n
- Skonfiguruj monitoring w Azure Monitor
- Zaplanuj kopie zapasowe
- Skonfiguruj własną domenę
- Połącz n8n z innymi usługami
Gdzie szukać pomocy
Forum społeczności n8n
Dokumentacja n8n: https://docs.n8n.io
Dokumentacja Azure Container Apps: https://docs.microsoft.com/azure/container-apps

