Issue Installing ERPNext onto my QNAP Nas via portainer (for local LAN access)

Hi,

I’m trying to install ERPNext in a local environment where it will only be accessible for local computers attached to the network and will only be used internally and not externally.

I have installed QNAP Container Station (NAS IP: 192.168.1.252), and through that installed portainer via yaml:

version: "3.8"  

services:
  portainer:
    image: portainer/portainer-ce:latest  
    restart: unless-stopped  
    ports:
      - "9000:9000"  
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - portainer_data:/data
volumes:
  portainer_data:

I have then installed ERPNext with the following configuration in portainer, and it has worked and it is running fine when the stacks are deployed.

version: "3.8"

services:
  # MariaDB database
  mariadb:
    image: mariadb:latest
    environment:
      MYSQL_ROOT_PASSWORD: *redacted*
      MYSQL_DATABASE: erpnext  

  # Redis services (3 instances)
  redis-cache:
    image: redis:latest
  redis-queue:
    image: redis:latest
  redis-socketio:
    image: redis:latest

  # ERPNext service
  erpnext:
    image: frappe/erpnext:latest
    depends_on:
      - mariadb
    environment:
      DB_ROOT_USER: root 
      DB_PASSWORD: *redacted* 
      DB_HOST: mariadb  
      REDIS_CACHE: redis-cache  
      REDIS_QUEUE: redis-queue 
      REDIS_SOCKETIO: redis-socketio  
      SOCKETIO_PORT: "9000"  
      INSTALL_APPS: erpnext  
      ADMIN_PASSWORD: *redacted*  

    ports:
      - "8080:8080"

However, when I try to access ERPNext via http://192.168.1.252:8080, it shows “Not Found. 192.168.1.252 does not exist.” - as far as I know it indicates that the host is accessible on port 8080 , and the request is reaching some service (likely my ERPNext container), but the service isn’t responding as expected. This change in behavior suggests that my Docker Compose port mapping ("8080:8000" ) is correctly routing traffic to the ERPNext container, but there may be issues with how ERPNext is handling the request?

Is there a better way to do this, or what steps am I missing out on? I have also checked the firewall settings on the NAS and enable for port 8080 to being accessible for that IP request.

Anyone that can offer some help?

Hi @abbahmed,

I think the following is the request route in your configuration:

Browser request:8080 → NAS:8080 → Portainer:8080 → Container:8080 → ERPNext

However, I can see only 9000 in portainer configuration.

Can you try opening port 8080 in the portainer YAML?

Hope this helps!

I believe you are on the right mindset with the port being the issue. curious to know if OP has gotten this working. I would assume that 8080 will go to the QTS login page on the QNAP since 8080 is the default port for the QTS operating system. Most likely need to adjust the port for Portainer and ERPNext container so that they aren’t all conflicting. I haven’t set it up on a QNAP yet. I was looking for answers on how to do so. Currently using a Raspberry Pi 4 to run it since I was just testing things.

1 Like