Skip to content

[BUG] Latest nginx is complaining about "lua_package_path" being unknown #117

Closed

Description

@pedrom34

Is there an existing issue for this?

  • I have searched the existing issues

Current Behavior

Nginx doesn't start.

Expected Behavior

Nginx starts.

Steps To Reproduce

If I change my image from 1.28.3 to latest, nginx doesn't start.

Environment

- OS:debian 13.6
- How docker service was installed: distro's packagemanager

CPU architecture

x86-64

Docker creation

Here's my docker-compose.yaml file:

services:
  # ======================================
  # ======== nginx, reverse proxy ========
  # ======================================
  nginx:
    image: lscr.io/linuxserver/nginx:1.28.3
    #image: lscr.io/linuxserver/nginx:latest
    container_name: nginx
    cap_add:
      - NET_ADMIN
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Paris
      - DOCKER_MODS=linuxserver/mods:swag-crowdsec|linuxserver/mods:nginx-proxy-confs
      - CROWDSEC_API_KEY=redacted
      - CROWDSEC_LAPI_URL=redacted
    volumes:
      - /opt/stacks/nginx-rp/config:/config
    networks:
      - nginx
    ports:
      - 80:80
      - 443:443
    labels:
      - redacted
    restart: unless-stopped
  # =======================================
  # ============ crowdsec, IPS ============
  # =======================================
  crowdsec:
    image: docker.io/crowdsecurity/crowdsec:latest
    container_name: crowdsec
    environment:
      - GID=1000
      - COLLECTIONS=crowdsecurity/http-cve crowdsecurity/whitelist-good-actors
        crowdsecurity/iptables crowdsecurity/linux crowdsecurity/nginx
        LePresidente/authelia LePresidente/adguardhome
      - CUSTOM_HOSTNAME=redacted
    ports:
      - 8080:8080
    volumes:
      - /opt/stacks/nginx-rp/crowdsec-vlib:/var/lib/crowdsec/data
      - /opt/stacks/nginx-rp/crowdsec:/etc/crowdsec
      - /opt/stacks/nginx-rp/config/log/nginx:/var/log/nginx:ro
      - /opt/stacks/nginx-rp/authelia/logs:/var/log/authelia:ro
      - /mnt/dietpi_userdata/adguardhome/logs:/var/log/adguardhome:ro
    networks:
      - nginx
    security_opt:
      - no-new-privileges=true
    restart: unless-stopped
  #=======================================
  #============ authelia, 2FA ============
  #=======================================
  authelia:
    image: authelia/authelia:latest
    container_name: authelia
    environment:
      - AUTHELIA_STORAGE_ENCRYPTION_KEY_FILE=/config/secrets/encryption
      - AUTHELIA_IDENTITY_VALIDATION_RESET_PASSWORD_JWT_SECRET_FILE=/config/secrets/jwt
      - AUTHELIA_STORAGE_MYSQL_PASSWORD_FILE=/config/secrets/mysql
      - AUTHELIA_NOTIFIER_SMTP_PASSWORD_FILE=/config/secrets/smtp
      - TZ=Europe/Paris
    volumes:
      - /opt/stacks/nginx-rp/authelia:/config
    networks:
      - nginx
    ports:
      - 9091:9091/tcp
    restart: unless-stopped
  # =======================================
  # == geoipupdate, ip blocking database ==
  # =======================================
  geoipupdate:
    container_name: geoipupdate
    image: maxmindinc/geoipupdate
    environment:
      - GEOIPUPDATE_ACCOUNT_ID=redacted
      - GEOIPUPDATE_LICENSE_KEY=redacted
      - GEOIPUPDATE_EDITION_IDS=GeoLite2-City GeoLite2-Country
      - GEOIPUPDATE_FREQUENCY=168
      - GEOIPUPDATE_PRESERVE_FILE_TIMES=1
    volumes:
      - /opt/stacks/nginx-rp/config/geoip2db:/usr/share/GeoIP
    networks:
      - nginx
    restart: unless-stopped
volumes:
  config: null
  crowdsec: null
  authelia: null
  geoip2db: null
networks:
  nginx: {}

Container logs

[mod-init] Running Docker Modification Logic
[mod-init] Adding linuxserver/mods:swag-crowdsec to container
[mod-init] Downloading linuxserver/mods:swag-crowdsec from lscr.io
[mod-init] Installing linuxserver/mods:swag-crowdsec
[mod-init] linuxserver/mods:swag-crowdsec applied to container
[mod-init] Adding linuxserver/mods:nginx-proxy-confs to container
[mod-init] Downloading linuxserver/mods:nginx-proxy-confs from lscr.io
[mod-init] Installing linuxserver/mods:nginx-proxy-confs
[mod-init] linuxserver/mods:nginx-proxy-confs applied to container
[migrations] started
[migrations] 01-nginx-site-confs-default: skipped
[migrations] done
───────────────────────────────────────

      ██╗     ███████╗██╗ ██████╗
      ██║     ██╔════╝██║██╔═══██╗
      ██║     ███████╗██║██║   ██║
      ██║     ╚════██║██║██║   ██║
      ███████╗███████║██║╚██████╔╝
      ╚══════╝╚══════╝╚═╝ ╚═════╝

   Brought to you by linuxserver.io
───────────────────────────────────────

To support LSIO projects visit:
https://www.linuxserver.io/donate/

───────────────────────────────────────
GID/UID
───────────────────────────────────────

User UID:    1000
User GID:    1000
───────────────────────────────────────
Linuxserver.io version: 1.30.3-r0-ls366
Build-date: 2026-07-08T21:32:39+00:00
───────────────────────────────────────
    
using keys found in /config/keys
**** The following active confs have different version dates than the samples that are shipped. ****
**** This may be due to user customization or an update to the samples. ****
**** You should compare the following files to the samples in the same folder and update them. ****
**** Use the link at the top of the file to view the changelog. ****
┌────────────┬────────────┬────────────────────────────────────────────────────────────────────────┐
│  old date  │  new date  │ path                                                                   │
├────────────┼────────────┼────────────────────────────────────────────────────────────────────────┤
│ 2026-03-07 │ 2025-07-18 │ /config/nginx/site-confs/default.conf                                  │
│ 2025-05-31 │ 2025-12-26 │ /config/nginx/nginx.conf                                               │
│ 2025-05-31 │ 2026-06-27 │ /config/nginx/ssl.conf                                                 │
└────────────┴────────────┴────────────────────────────────────────────────────────────────────────┘
**** Configuring CrowdSec nginx Bouncer ****
**** Successfully configured CrowdSec nginx Bouncer  ****
[pkg-install-init] **** Installing all mod packages ****
ERROR: unable to select packages:
  nginx-1.30.3-r0:
    conflicts: openresty-1.31.1.1-r0
               openresty-1.31.1.1-r0[cmd:nginx=1.30.3-r0]
    satisfies: world[nginx=1.30.3-r0]
               nginx-mod-http-brotli-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-http-dav-ext-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-http-echo-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-http-fancyindex-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-http-geoip-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-http-geoip2-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-http-headers-more-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-http-image-filter-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-http-lua-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-http-perl-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-http-redis2-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-http-set-misc-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-http-upload-progress-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-http-xslt-filter-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-mail-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-rtmp-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-stream-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-stream-geoip-1.30.3-r0[nginx=1.30.3-r0]
               nginx-mod-stream-geoip2-1.30.3-r0[nginx=1.30.3-r0]
               openresty-mod-devel-kit-1.31.1.1-r0[cmd:nginx]
               openresty-mod-http-lua-1.31.1.1-r0[cmd:nginx]
  openresty-1.31.1.1-r0:
    conflicts: nginx-1.30.3-r0[nginx]
               nginx-1.30.3-r0[cmd:nginx=1.31.1.1-r0]
    breaks: world[nginx=1.30.3-r0]
            nginx-mod-http-brotli-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-http-dav-ext-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-http-echo-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-http-fancyindex-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-http-geoip-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-http-geoip2-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-http-headers-more-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-http-image-filter-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-http-lua-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-http-perl-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-http-redis2-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-http-set-misc-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-http-upload-progress-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-http-xslt-filter-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-mail-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-rtmp-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-stream-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-stream-geoip-1.30.3-r0[nginx=1.30.3-r0]
            nginx-mod-stream-geoip2-1.30.3-r0[nginx=1.30.3-r0]
    satisfies: openresty-mod-devel-kit-1.31.1.1-r0[cmd:nginx]
               openresty-mod-devel-kit-1.31.1.1-r0[openresty]
               openresty-mod-http-lua-1.31.1.1-r0[cmd:nginx]
               openresty-mod-http-lua-1.31.1.1-r0[openresty]
[custom-init] No custom files found, skipping...
[ls.io-init] done.
2026/07/13 12:36:57 [emerg] 709#709: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:36:58 [emerg] 749#749: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:36:59 [emerg] 754#754: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:00 [emerg] 759#759: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:01 [emerg] 764#764: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:02 [emerg] 769#769: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:03 [emerg] 774#774: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:04 [emerg] 779#779: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:05 [emerg] 784#784: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:06 [emerg] 789#789: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:07 [emerg] 794#794: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:08 [emerg] 799#799: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:09 [emerg] 804#804: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:10 [emerg] 809#809: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:11 [emerg] 814#814: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:12 [emerg] 819#819: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:13 [emerg] 824#824: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:14 [emerg] 829#829: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:15 [emerg] 834#834: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:16 [emerg] 839#839: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1
2026/07/13 12:37:17 [emerg] 844#844: unknown directive "lua_package_path" in /etc/nginx/http.d/crowdsec_nginx.conf:1

Activity

  1. github-actions commented on Jul 13, 2026

    @github-actions

    Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.

  2. asaf400 commented on Jul 26, 2026

    @asaf400

    No response from @linuxserver maintainers?

    Should we switch to SWAG image?
    (I reverted)

    Edit: also, nothing is mentioned in https://github.com/linuxserver/docker-nginx#versions

  3. j0nnymoe commented on Jul 26, 2026

    @j0nnymoe
    Member

    The bug is due to the lua package not being updated by it's maintainers when nginx release an update. It's all dependant on 3rd parties updating their packages in a timely manor. It's out side of our control.

    It's the dependencies that are required by crowdsec that's breaking this, not the image being broken itself.

  4. LinuxServer-CI commented on Aug 26, 2026

    @LinuxServer-CI
    Contributor

    This issue has been automatically marked as stale because it has not had recent activity. This might be due to missing feedback from OP. It will be closed if no further activity occurs. Thank you for your contributions.

  5. spider1163 commented on Sep 8, 2026

    @spider1163

    The issue seems solved with latest version?

  6. j0nnymoe commented on Sep 8, 2026

    @j0nnymoe
    Member

    Generally you have to wait for the crowdsec bits to get updated by them upstream, if lua gets updated within nginx, it's just a case of waiting. It's not the first time it's happened and it won't be the last.

    Glad it's back working for you though.

  7. moved this from Issues to Done in Issue & PR Trackeron Sep 8, 2026
  8. LinuxServer-CI commented on Oct 9, 2026

    @LinuxServer-CI
    Contributor

    This issue is locked due to inactivity

  9. locked as resolved and limited conversation to collaborators on Oct 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions