I cant install n8n by docker or docker-compose

I have DigitalOcean VPS and few services in my droplet (VM) - Nextcloud (ubuntu snap), Wireguard etc. Now I want setup n8n via docker. Sub-domains I “cut” by nginx.

I use official tutorial for Docker instllation

Docker | n8n Docs use just 2 commands:

docker volume create n8n_data

docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n

and maybe everything will be good, but…

  1. I have message and cant use ssh-console, if I push “ctrl + c” docker container stop working. I think its not correct rules for docker container starting.

Editor is now accessible via:
http: // localhost: 5678 /
Press “o” to open in Browser.

  1. When I join http://mydomain:5678/setup I see next pictures and cant do nothing. I dont understand how setup HTTPS and I dont want turn off sec-cookie in internet.

Next part of my travel I use next tutorial for docker-compose

  1. I dont use first part of commands:
sudo apt-get remove docker docker-engine docker.io containerd runc
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg lsb-release
sudo mkdir -p /etc/apt/keyrings
  1. I add to Docker Compose file 1 string to Volumes at n8n section and create that folder “n8n” in my home dir:
      - /home/cascade/n8n:/files

All my docker-compose.yaml file, placed to root dir, looks like default from tutor page.
3. Also I create .env file, placed to root dir, with all attributes like password etc:
image

After sudo docker-compose up -d I have the next error text:

WARNING: The SSL_EMAIL variable is not set. Defaulting to a blank string.
WARNING: The DATA_FOLDER variable is not set. Defaulting to a blank string.
WARNING: The SUBDOMAIN variable is not set. Defaulting to a blank string.
WARNING: The DOMAIN_NAME variable is not set. Defaulting to a blank string.
WARNING: The GENERIC_TIMEZONE variable is not set. Defaulting to a blank string.
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/docker/api/client.py", line 214, in _retrieve_server_version
    return self.version(api_version=False)["ApiVersion"]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/docker/api/daemon.py", line 181, in version
    return self._result(self._get(url), json=True)
                        ^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/docker/utils/decorators.py", line 46, in inner
    return f(self, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/docker/api/client.py", line 237, in _get
    return self.get(url, **self._set_request_timeout(kwargs))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/requests/sessions.py", line 602, in get
    return self.request("GET", url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/requests/adapters.py", line 486, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 791, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 497, in _make_request
    conn.request(
TypeError: HTTPConnection.request() got an unexpected keyword argument 'chunked'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/docker-compose", line 33, in <module>
    sys.exit(load_entry_point('docker-compose==1.29.2', 'console_scripts', 'docker-compose')())
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 81, in main
    command_func()
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 200, in perform_command
    project = project_from_options('.', options)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/compose/cli/command.py", line 60, in project_from_options
    return get_project(
           ^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/compose/cli/command.py", line 152, in get_project
    client = get_client(
             ^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/compose/cli/docker_client.py", line 41, in get_client
    client = docker_client(
             ^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/compose/cli/docker_client.py", line 170, in docker_client
    client = APIClient(use_ssh_client=not use_paramiko_ssh, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/docker/api/client.py", line 197, in __init__
    self._version = self._retrieve_server_version()
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/docker/api/client.py", line 221, in _retrieve_server_version
    raise DockerException(
docker.errors.DockerException: Error while fetching server API version: HTTPConnection.request() got an unexpected keyword argument 'chunked'

I think that docker-compose dont know nothing about .env file, so I add parameters from .env file to docker-compose.yml but docker still dont understand few parametrs


After changing few parameters its look better, but I still dont know how change ${DATA_FOLDER}

n8n version:
Database (default: SQLite):default
n8n EXECUTIONS_PROCESS setting (default: own, main): ???
Running n8n via (Docker, npm, n8n cloud, desktop app): docker
Operating system: Ubuntu 24.04 LTS noble

It looks like your topic is missing some important information. Could you provide the following if applicable.

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

Hey @Zombiehamster

The first issue is because you are not telling docker to run in the background, the command we provide is just an example and your existing experience / knowledge of docker would be needed for running in the background.

The second is because you are connecting to n8n over http, if you configure https you won’t see that message anymore or you can set the environment variable mentioned in the message.

With compose I suspect the issue is with the .env file value not being set correctly or the container was only restarted and you didn’t do a stop / start.

1 Like

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