Pulling doesn't gets the latest version

Describe the problem/error/question

When I pull an image to update it, and then launch the following code snippet on my PowerShell console, the launched container is the same.

docker run -it --rm --name n8n -p 5678:5678 -v C:\Users\USER\.n8n:/home/node/.n8n docker.n8n.io/n8nio/n8n

What is the error message (if any)?

PS C:\WINDOWS\system32> docker run -it --rm --name n8n -p 5678:5678 -v C:\Users\USER\.n8n:/home/node/.n8n docker.n8n.io/n8nio/n8n
Permissions 0777 for n8n settings file /home/node/.n8n/config are too wide. This is ignored for now, but in the future n8n will attempt to change the permissions automatically. To automatically enforce correct permissions now set N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true (recommended), or turn this check off set N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=false.
User settings loaded from: /home/node/.n8n/config
Initializing n8n process
Error tracking disabled because this release is older than 6 weeks.
n8n ready on 0.0.0.0, port 5678

There is a deprecation related to your environment variables. Please take the recommended actions to update your configuration:
 - N8N_RUNNERS_ENABLED -> Running n8n without task runners is deprecated. Task runners will be turned on by default in a future version. Please set `N8N_RUNNERS_ENABLED=true` to enable task runners now and avoid potential issues in the future. Learn more: https://docs.n8n.io/hosting/configuration/task-runners/

Version: 1.84.3
 ================================
   Start Active Workflows:
 ================================
   - "Toggl to Notion n8n Custom (Hasta 45 entradas)" (ID: y3SUIbTDFutt4NDl))
     => Started

Editor is now accessible via:
http://localhost:5678

Press "o" to open in Browser.

This is my images window

This is my containers window

Please share your workflow

No workflow used

Share the output returned by the last node

No nodes used

Information on your n8n setup

  • n8n version: 1.84.3
  • Database (default: SQLite): Default
  • n8n EXECUTIONS_PROCESS setting (default: own, main): Default
  • Running n8n via (Docker, npm, n8n cloud, desktop app): Docker
  • Operating system: Windows 10

What if you explicitly specify the tag :latest?

I’ve added some more context. Also, where do I type :latest? I’m just a layman that found out how to make a worflow work in n8n, but that’s pretty much it about my knowledge in all this.

After the name of the image you need:

docker run -it --rm --name n8n -p 5678:5678 -v C:\Users\USER\.n8n:/home/node/.n8n docker.n8n.io/n8nio/n8n:latest

Hmm no, the error persists it seems. It keeps launching the same image.

Try to remove all the n8n images you have from the images and pull the latest:

n8nio/n8n:latest

Just looked at the images you’ve added. You even have that latest image. Make sure to stop other containers. Remove all images except n8nio/n8n:latest (bottom one) and then use n8nio/n8n:latest when you start a container.

2 Likes

Let’s goooo. That fixed it. Thank you.

Although, how do I solve those deprecated noticies like ENFORCE_SETTINGS_FILE_PERMISSIONS=true? That didn’t happen before, and I’m not sure how to solve them.

1 Like

Take a look at the example of setting the environment variables here.

you would need to add -e N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true to the command. Or just run the command in the example.

I’m getting this error, manually translated:

In line: 4 Character: 4
+  --name n8n \
+    ~
Missing expression after user operator '--'.
In line: 4 Character: 4
+  --name n8n \
+    ~~~~
Token 'name' unexpected expression or instruction.
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordE
   xception
    + FullyQualifiedErrorId : MissingExpressionAfterOperator

I’m using this parameters:

docker volume create n8n_data

docker run -it --rm \
 --name n8n \
 -p 5678:5678 \
 -e GENERIC_TIMEZONE="America/[My country]/[My city]" \
 -e TZ="America/[My country]/[My city]" \
 -e N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true \
 -e N8N_RUNNERS_ENABLED=true \
 -v n8n_data:/home/node/.n8n \
 docker.n8n.io/n8nio/n8n

This is the original error message untranslated

En línea: 4 Carácter: 4
+  --name n8n \
+    ~
Falta una expresión después del operador unario '--'.
En línea: 4 Carácter: 4
+  --name n8n \
+    ~~~~
Token 'name' inesperado en la expresiĂłn o la instrucciĂłn.
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordE
   xception
    + FullyQualifiedErrorId : MissingExpressionAfterOperator

If using powershell, try to put the entire command into a single line

docker run -it --rm --name n8n -p 5678:5678 -e GENERIC_TIMEZONE="America/[My country]/[My city]" -e TZ="America/[My country]/[My city]" -e N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true -e N8N_RUNNERS_ENABLED=true -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n

OR use backticks instead of backslashes

docker run -it --rm `
  --name n8n `
  -p 5678:5678 `
  -e GENERIC_TIMEZONE="America/[My country]/[My city]" `
  -e TZ="America/[My country]/[My city]" `
  -e N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true `
  -e N8N_RUNNERS_ENABLED=true `
  -v n8n_data:/home/node/.n8n `
  docker.n8n.io/n8nio/n8n
1 Like

Nice! Thank you. There are a few more deprecated messages:

There are deprecations related to your environment variables. Please take the recommended actions to update your configuration:
 - DB_SQLITE_POOL_SIZE -> Running SQLite without a pool of read connections is deprecated. Please set `DB_SQLITE_POOL_SIZE` to a value higher than zero. See: https://docs.n8n.io/hosting/configuration/environment-variables/database/#sqlite
 - N8N_BLOCK_ENV_ACCESS_IN_NODE -> The default value of N8N_BLOCK_ENV_ACCESS_IN_NODE will be changed from false to true in a future version. If you need to access environment variables from the Code Node or from expressions, please set N8N_BLOCK_ENV_ACCESS_IN_NODE=false. Learn more: https://docs.n8n.io/hosting/configuration/environment-variables/security/

Can I find them in those documentation pages you linked previously?

Both the links that can help are right in the warning:

These are warnings, so you can choose the values.

1 Like

SQLite pool size seems to be way more complex than I thought. What defines the size we should give it?

If I don’t use my worflows more than 10 times a day should I give it a value of 10? I’m making assumptions based on this definition:

A connection pool is a standard technique used to maintain long running connections in memory for efficient re-use, as well as to provide management for the total number of connections an application might use simultaneously.

Particularly for server-side web applications, a connection pool is the standard way to maintain a “pool” of active database connections in memory which are reused across requests.

SQLAlchemy includes several connection pool implementations which integrate with the Engine. They can also be used directly for applications that want to add pooling to an otherwise plain DBAPI approach.

Don’t overthink this (I know I tend to sometimes), choose a number between 4 and 12 and go with it :slight_smile:

If you want more specific approach - I found the response of the chatgpt for when I looked for this info a couple of months ago:

  • Tiny / personal (single user, few triggers): 2
  • Small team or runners enabled (your case): 4–8 (start at 4)
  • Many webhooks + runners + active editing: 8–12 (cap near CPU cores)

Rule of thumb:
POOL_SIZE = min( max(2, vCPU count), 12 ) — start there, observe, then adjust.

You can always change this value.

1 Like

Awesome, thank you so much!

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.