Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →You can self-host an n8n AI agent by running n8n and PostgreSQL in Docker on a Linux VPS, placing an HTTPS reverse proxy in front of n8n, and then connecting an AI model credential to the AI Agent node. Use at least 4 GB of RAM and 2 vCPUs for a practical AI workload, keep n8n’s data volume persistent, expose only the reverse proxy publicly, and back up N8N_ENCRYPTION_KEY before creating credentials.
Antihost offers VPS plans with one-click n8n, NVMe storage and a 14-day free trial.
The procedure below uses Docker Compose, PostgreSQL, and a proxy such as Caddy. It also explains model choices, webhook settings, backups, updates, and the failure modes that most often make a self-hosted installation unusable.
As an Amazon Associate I earn from qualifying purchases.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallWhat you are building
The finished system has four layers:
- Linux VPS: Ubuntu 20.04 or 22.04 are common choices in deployment guides.
- Docker Compose: runs n8n and PostgreSQL as separate services.
- HTTPS reverse proxy: accepts traffic on ports 80 and 443, obtains a certificate, and forwards requests to n8n.
- AI workflow: an n8n trigger starts the AI Agent node, which calls a hosted model through an API key or a local model served by Ollama.
PostgreSQL stores workflow and execution data, while the persistent /home/node/.n8n directory stores n8n configuration, logs, and the encryption key. Even with PostgreSQL enabled, deleting that directory can make encrypted credentials inaccessible.
The public request path should be https://your-domain.example → reverse proxy → n8n on port 5678. Do not publish the n8n container directly to the internet on an unencrypted port.
#1 Best Overall
- [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
- [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
- [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
- [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
- [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.
VPS requirements and sizing
n8n itself can run on a small server, but an AI agent adds model calls, webhook traffic, execution history, and possibly embeddings or a vector database. The official n8n Assistant sandbox stack specifies at least 4 GB of RAM and 2 vCPUs. Third-party deployment guides quote a wider range, from 2 GB of RAM up to 4 vCPUs and 8 GB of RAM, depending on the workload.
| Workload | Starting capacity | What to expect |
|---|---|---|
| Basic n8n workflows using hosted models | 4 GB RAM, 2 vCPUs | A sensible floor for an AI workload; leave headroom for PostgreSQL and Docker. |
| Several simultaneous executions, document processing, or embeddings | More than 4 GB RAM and additional CPU | Increase resources when executions queue, the host swaps, or containers are killed for lack of memory. |
| Local Ollama model on the same VPS | More RAM and CPU than a hosted API setup | Required model memory varies by model and quantization; the small VPS floor is not a guarantee that a local model will fit. |
| n8n plus Ollama and Qdrant for retrieval-augmented generation | Size for three additional services | Ollama performs inference and Qdrant stores vectors, so plan capacity for both rather than sizing only for n8n. |
A hosted model keeps inference outside the VPS and normally needs less local RAM. A local model keeps prompts and responses on your infrastructure but adds model downloads, CPU or GPU demand, storage, and another service to maintain.
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Prepare the server and domain
- Provision a fresh Linux VPS and assign a static public IPv4 address. Ubuntu 20.04 and 22.04 are typical choices in installation guides.
- Create a DNS A record such as
n8n.your-domain.examplepointing to the VPS address. Wait for DNS propagation before requesting a certificate. - Log in over SSH with a non-root administrative account, apply the operating-system updates, and use a firewall that allows SSH, HTTP, and HTTPS. Keep PostgreSQL private; it does not need a public firewall rule.
- Choose a backup destination outside the VPS. A second server or object-storage bucket protects you from disk loss, accidental deletion, and a failed upgrade.
The examples below use n8n.your-domain.example. Substitute the hostname you control in the environment file and proxy configuration.
Install Docker and Compose
Most n8n VPS guides use Docker’s convenience installer. On a fresh server, run:
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
newgrp docker
docker --version
docker compose version
The last command must report the Compose v2 plugin. If it does not, install the Docker Compose plugin for your distribution before continuing. Log out and back in if the Docker group change is not active.
Create the n8n project and protect secrets
Create a directory that only your administrator account can read:
Rank #2
- 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
- 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
- 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
- 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
- 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.
mkdir -p ~/n8n-stack
cd ~/n8n-stack
chmod 700 ~/n8n-stack
Generate the database password and n8n encryption key once, then write them to an environment file. The command below also sets the public hostname and webhook URL; edit the DOMAIN value first.
DOMAIN=n8n.your-domain.example
cat > .env <<EOF
POSTGRES_DB=n8n
POSTGRES_USER=n8n
POSTGRES_PASSWORD=$(openssl rand -base64 32 | tr -d '=+/ ' | cut -c1-32)
N8N_ENCRYPTION_KEY=$(openssl rand -hex 32)
N8N_HOST=${DOMAIN}
N8N_PROTOCOL=https
WEBHOOK_URL=https://${DOMAIN}/
GENERIC_TIMEZONE=UTC
EOF
chmod 600 .env
cat .env
Copy the N8N_ENCRYPTION_KEY value into a password manager and an offline backup immediately. n8n generates a random key in its .n8n directory on first launch if you do not set one. It encrypts credentials before storing them in the database; changing or losing the key makes those credentials unreadable. In queue mode, every worker must use exactly the same key.
Do not regenerate the file on every deployment. Re-running the heredoc creates new secrets and can disconnect n8n from an existing database.
Write the Docker Compose file
Create compose.yml with n8n, PostgreSQL, and named volumes:
Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Clear out junk files and repair common Windows errors3Fix the driver behind crashes, sound loss and screen glitchesservices:
postgres:
image: postgres:16
restart: unless-stopped
environment:
POSTGRES_DB: ${POSTGRES_DB}
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ['CMD-SHELL', 'pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}']
interval: 10s
timeout: 5s
retries: 10
n8n:
image: docker.n8n.io/n8nio/n8n
restart: unless-stopped
ports:
- '127.0.0.1:5678:5678'
environment:
DB_TYPE: postgresdb
DB_POSTGRESDB_HOST: postgres
DB_POSTGRESDB_PORT: 5432
DB_POSTGRESDB_DATABASE: ${POSTGRES_DB}
DB_POSTGRESDB_USER: ${POSTGRES_USER}
DB_POSTGRESDB_PASSWORD: ${POSTGRES_PASSWORD}
N8N_HOST: ${N8N_HOST}
N8N_PROTOCOL: ${N8N_PROTOCOL}
WEBHOOK_URL: ${WEBHOOK_URL}
N8N_ENCRYPTION_KEY: ${N8N_ENCRYPTION_KEY}
N8N_SECURE_COOKIE: 'true'
GENERIC_TIMEZONE: ${GENERIC_TIMEZONE}
volumes:
- n8n_data:/home/node/.n8n
depends_on:
postgres:
condition: service_healthy
volumes:
postgres_data:
n8n_data:
The n8n image line deliberately does not claim a current stable tag. One third-party guide used docker.n8n.io/n8nio/n8n:2.34.4 as an example, but the current stable tag was not established here. Before production use, select a release tag you have verified from the current n8n documentation, record it in version control, and update it deliberately rather than assuming that a floating tag is safe.
The binding 127.0.0.1:5678:5678 means only software on the VPS can reach n8n directly. The reverse proxy will provide the public HTTPS endpoint. PostgreSQL has no published port, so it remains on the private Compose network.
Rank #3
- [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
- [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
- [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
- [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
- [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by
Start n8n and check the containers
- Validate the rendered configuration and environment interpolation:
docker compose config
- Start the stack in the background:
docker compose up -d
- Confirm both services are running:
docker compose ps
docker compose logs --tail=100 n8n
docker compose logs --tail=100 postgres
n8n should listen on the loopback address, and PostgreSQL should pass its health check. If the n8n container repeatedly restarts, inspect the first error in its logs before changing environment variables.
Put HTTPS in front with a reverse proxy
Use a reverse proxy such as Caddy on the VPS or as a separate container. It should listen publicly on ports 80 and 443, obtain and renew the TLS certificate, and forward traffic to 127.0.0.1:5678. A host-installed Caddy configuration can be as small as:
n8n.your-domain.example {
reverse_proxy 127.0.0.1:5678
}
Point the DNS record at the VPS before starting the proxy, and allow ports 80 and 443 through the firewall so certificate issuance and browser access work. If you run Caddy in Docker instead, put it on the same Compose network as n8n and proxy to the service name and port, while leaving n8n unexposed to the host.
The values N8N_HOST, N8N_PROTOCOL=https, and WEBHOOK_URL=https://n8n.your-domain.example/ must describe the public URL, not the internal Docker hostname. Incorrect webhook settings commonly produce callback URLs that point at localhost or use HTTP, causing integrations to fail even though the editor loads.
Complete the first n8n login securely
- Open the HTTPS hostname in a browser. On the first launch, n8n presents the owner-account setup.
- Create the owner account with a unique password that is not reused on the VPS or in your model provider.
- Open your personal or security settings and enable two-factor authentication. The exact label can vary by n8n release.
- Verify that the browser shows a valid certificate and that the address remains HTTPS after login.
Do not create production credentials until the encryption key has been copied to your secure backup. A database dump without the matching key cannot restore usable encrypted credentials.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Build the AI Agent workflow
The exact node labels and layout change between n8n releases, but the workflow concepts are stable.
Rank #4
- Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
- Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
- All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
- Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
- Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.
1. Add a trigger
Create a new workflow and add the trigger that matches the job: a manual trigger for development, a webhook for an external application, a schedule for periodic work, or a chat-oriented trigger for interactive requests. For a webhook, use the production URL only after the workflow is activated; the test URL is intended for editor testing.
2. Add the AI Agent node
Add the AI Agent node and connect the trigger output. The node needs a chat model sub-node or model connection, a credential, and an instruction describing the agent’s role. Start with a narrow task, define the expected output, and state what the agent must refuse or escalate. For example, an order-support agent can be instructed to look up an order, summarize its status, and ask for a human review before changing billing information.
3. Attach a model credential
In n8n’s credentials area, create the credential for the provider you selected and paste its API key. Hosted options named in deployment guides include OpenAI, Anthropic, and Google AI. Keep the key in n8n’s credential store rather than placing it in a prompt, webhook payload, or Code node. Select a model supported by the credential and set conservative token or response limits while testing.
Free tools Windows power users keep installed
One-click scans. No signup required.
4. Add tools deliberately
An agent becomes useful when it can call tools, but every tool expands its authority. Connect only the operations it needs, such as an HTTP Request call to a read-only service, a database lookup, or a workflow that validates an action. Give write operations a separate approval step. Validate tool inputs in a normal n8n node before allowing the agent to call an external system.
5. Add memory only when needed
Short conversations can pass the prior messages directly. Longer sessions need a memory strategy and a limit so the prompt does not grow without bound. Store durable business facts in a controlled data source instead of trusting the model to remember them. If you need retrieval-augmented generation, a self-hosted starter architecture pairs n8n with Ollama and Qdrant, where Qdrant stores vectors; that adds storage, backups, and monitoring requirements.
6. Test with representative inputs
Run the workflow manually with normal, ambiguous, malformed, and unauthorized requests. Inspect each node’s input and output, confirm that secrets are not returned in messages, and verify that failures follow a useful branch rather than silently succeeding. Test the production webhook from an external network after HTTPS and DNS are working.
Best Value
7. Activate only after review
Save the workflow, confirm its credentials and permissions, then activate it. Record the workflow’s purpose, trigger, tools, owner, and rollback procedure so another administrator can disable it safely.
Choose between a hosted model and Ollama
| Decision factor | Hosted API model | Ollama on the VPS |
|---|---|---|
| Cost per run | Usage-based API charges; no model inference hardware on your VPS. | No per-request API bill, but the VPS must provide CPU, RAM, storage, and possibly a GPU. |
| RAM and CPU | n8n and workflow processing are the main local load. | Model size and quantization determine whether the VPS can run it; expect substantially higher resource use. |
| Data location | Prompts and outputs are sent to the selected provider under its service terms. | Inference can stay on your VPS, subject to your own backups, logs, access controls, and monitoring. |
| Maintenance | Provider operates the model endpoint; you manage credentials, quotas, and failures. | You manage Ollama, model files, updates, disk space, and performance. |
| RAG architecture | Can use a hosted embedding or vector service, depending on your design. | A self-hosted pattern may add Qdrant for vector storage, increasing service and backup responsibilities. |
Use a hosted model when the VPS is small, predictable API latency matters, or you do not want to maintain inference software. Consider Ollama when keeping model traffic on your server is important and you can provision enough capacity for the chosen model.
Back up data, the database, and the encryption key
Use more than one backup type because each protects a different failure mode.
- Encryption key: store the exact
N8N_ENCRYPTION_KEYoutside the VPS. Never rotate it casually on an existing installation. - PostgreSQL dump: create a logical backup that can be restored into a new database:
cd ~/n8n-stack
docker compose exec -T postgres pg_dump -U n8n n8n > n8n-$(date +%F).sql
- n8n data volume: back up the named volume or the host directory used for
/home/node/.n8n, including configuration and logs. - Compose and environment files: keep
compose.ymland a protected copy of.envin your backup system, but treat the environment file as a secret.
Test a restore on a separate VPS. A backup that has never been restored is only an assumption; the restore test must use the same encryption key before credentials can be read.
Update without breaking the instance
- Read the n8n release notes and verify compatibility with your workflows and database.
- Take the database, volume, Compose, and encryption-key backups described above.
- Pin the target n8n image tag in
compose.ymlinstead of relying on an unverified floating tag. - Pull and recreate the services:
docker compose pull n8n
docker compose up -d
docker compose ps
docker compose logs --tail=100 n8n
Do not delete the named volumes during an update. If the new container fails, inspect the logs, stop the deployment, and restore the previous image tag and backups according to your rollback plan.
Recommended Free Tools
Quick Recap
Troubleshoot common failures
| Symptom | Likely cause | Action |
|---|---|---|
| Credentials fail to decrypt or n8n reports an encryption-key mismatch | The configured key differs from the key used when the credentials were created. | Stop changing environment values. Recover the original key from your secure backup and restore the matching n8n data directory if necessary. |
| The instance appears to reset after moving the key into the environment | The environment key did not match the auto-generated key already stored in the n8n configuration. | Restore the original key and data backup; do not generate a new key for an existing database. |
| Browser shows a 502 or connection refused | n8n is stopped, the proxy targets the wrong address, or the proxy is running in a separate network. | Run docker compose ps, inspect n8n logs, and test the local listener with curl http://127.0.0.1:5678 from the VPS. Adjust the proxy target to match whether it runs on the host or inside Compose. |
| Webhook URL is localhost, HTTP, or missing the public path | N8N_HOST, N8N_PROTOCOL, or WEBHOOK_URL does not match the public HTTPS hostname. |
Correct the environment file, recreate the n8n container, and retest the production webhook externally. |
| Certificate issuance fails | DNS has not reached the VPS, or ports 80 and 443 are blocked. | Confirm the A record resolves to the VPS and allow both ports through the firewall and cloud security group. |
| Container is killed during model or document work | The VPS is out of memory, especially when running Ollama or Qdrant alongside n8n. | Inspect host memory and swap usage, reduce concurrency, use a smaller model, or resize the VPS. |
| PostgreSQL is unhealthy | Incorrect credentials, an incomplete first start, or a damaged volume. | Read the PostgreSQL logs, verify the environment values, and restore from a tested database backup rather than deleting the volume. |
Production readiness checklist
- Linux VPS has enough memory for n8n, PostgreSQL, and the selected model architecture.
- DNS points to the server and HTTPS terminates at a maintained reverse proxy.
- Only the proxy is publicly reachable; PostgreSQL is private and n8n is bound to loopback or an internal Docker network.
N8N_ENCRYPTION_KEYis backed up outside the server and is unchanged from the first credential creation.- Owner account uses a unique password and two-factor authentication.
- Webhook URL uses the public HTTPS hostname.
- Database, n8n data, Compose configuration, and secrets have separate backups.
- A restore test has successfully recovered a credential and opened a workflow.
- Model tools have the minimum permissions needed, and write actions have an approval path.
- The n8n image tag is recorded and upgrades are performed only after a backup.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

