Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

agnos.is Forums

  1. Home
  2. Tech
  3. docker compose - `Failed to lookup view! Did you run ./nodebb build?` error

docker compose - `Failed to lookup view! Did you run ./nodebb build?` error

Scheduled Pinned Locked Moved Tech
13 Posts 2 Posters 25 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J This user is from outside of this forum
    J This user is from outside of this forum
    [email protected]
    wrote on last edited by
    #1

    I'm trying to run NodeBB 4.x using Docker, and I'm encountering a strange error in the browser:
    CleanShot 2025-03-21 at 05.27.32@2x.png
    Does anyone understand what I'm missing?
    Thanks!

    My docker-compose.yml:

    services:
      forum:
        image: ghcr.io/nodebb/nodebb:4.x
        depends_on:
          - mongo
        restart: unless-stopped
        ports:
           - 80:80
        environment:
          - NODE_ENV=production
        volumes:
          - forum-uploads:/usr/src/app/public/uploads
          - forum-build:/usr/src/app/build
          - ./apps/forum/config.json:/opt/config/config.json:ro
      mongo:
        image: mongo:7.0
        restart: unless-stopped
        environment:
          - MONGO_INITDB_ROOT_USERNAME=admin
          - MONGO_INITDB_ROOT_PASSWORD=admin
          - MONGO_INITDB_DATABASE=admin
        volumes:
          - ./mongo/data:/data/db
          - ./mongo/config:/data/configdb
          - ./mongo/logs:/var/log/mongodb
    volumes:
      forum-uploads:
        driver: local
        driver_opts:
          o: bind
          type: none
          device: ./apps/forum/data/uploads
      forum-build:
        driver: local
        driver_opts:
          o: bind
          type: none
          device: ./apps/forum/data/build
    

    ./apps/forum/config.json:

    {
        "url": "https://forum.com",
        "port": "80",
        "secret": "**********",
        "database": "mongo",
        "mongo": {
            "host": "mongo",
            "port": 27017,
            "username": "forum",
            "password": "*****",
            "database": "forum"
        }
    }
    
    1 Reply Last reply
    0
    • J This user is from outside of this forum
      J This user is from outside of this forum
      [email protected]
      wrote on last edited by
      #2

      Even when i set (after looking at https://github.com/NodeBB/NodeBB/blob/master/install/docker/entrypoint.sh) :

      environment:
                  - NODE_ENV=production
                  - START_BUILD=true
                  - admin:username=admin
                  - admin:password=yourSecurePassword
                  - admin:password:confirm=yourSecurePassword
                  - admin:[email protected]
      

      I see build in docker log:

      up to date, audited 894 packages in 2s
      
      117 packages are looking for funding
        run `npm fund` for details
      
      1 moderate severity vulnerability
      
      Some issues need review, and may require choosing
      a different dependency.
      
      Run `npm audit` for details.
      npm notice
      npm notice New major version of npm available! 10.9.2 -> 11.2.0
      npm notice Changelog: https://github.com/npm/cli/releases/tag/v11.2.0
      npm notice To update run: npm install -g [email protected]
      npm notice
      DEBUG: PACKAGE_MANAGER: npm
      DEBUG: CONFIG location: /opt/config/config.json
      DEBUG: START_BUILD: true
      cat: /opt/config/install_hash.md5: No such file or directory
      Build before start is enabled. Building...
        started
      2025-03-21T03:48:22.148Z [80/33] - info: [build] Building in parallel mode
      2025-03-21T03:48:22.148Z [80/33] - info: [build]         plugin static dirs  build started
      2025-03-21T03:48:22.149Z [80/33] - info: [build]          requirejs modules  build started
      2025-03-21T03:48:22.149Z [80/33] - info: [build]           client js bundle  build started
      2025-03-21T03:48:22.149Z [80/33] - info: [build]            admin js bundle  build started
      2025-03-21T03:48:22.150Z [80/33] - info: [build]         client side styles  build started
      2025-03-21T03:48:22.150Z [80/33] - info: [build] admin control panel styles  build started
      2025-03-21T03:48:22.150Z [80/33] - info: [build]                  templates  build started
      2025-03-21T03:48:22.150Z [80/33] - info: [build]                  languages  build started
      2025-03-21T03:48:22.852Z [80/33] - info: [build]           client js bundle  build completed in 0.703sec
      2025-03-21T03:48:22.893Z [80/33] - info: [build]            admin js bundle  build completed in 0.744sec
      2025-03-21T03:48:23.308Z [80/33] - info: [build]         plugin static dirs  build completed in 1.16sec
      WARNING: Importing mixins via the fontsource package is deprecated and will be removed in the next major release. Please use the @fontsource-utils/scss package instead.
          @fontsource/inter/scss/mixins.scss 37:3       generator()
          @fontsource/inter/scss/mixins.scss 168:3      faces()
          ../../../../public/scss/admin/fonts.scss 7:1  @import
          admin/admin.scss 1:9                          @import
          - 11:9                                        root stylesheet
      
      WARNING: Importing mixins via the fontsource package is deprecated and will be removed in the next major release. Please use the @fontsource-utils/scss package instead.
          @fontsource/poppins/scss/mixins.scss 37:3      generator()
          @fontsource/poppins/scss/mixins.scss 168:3     faces()
          ../../../../public/scss/admin/fonts.scss 13:1  @import
          admin/admin.scss 1:9                           @import
          - 11:9                                         root stylesheet
      
      2025-03-21T03:48:24.305Z [80/33] - warn: [meta/templates] Partial not loaded: partials/breadcrumbs.tpl
      2025-03-21T03:48:24.305Z [80/33] - warn: [meta/templates] Partial not loaded: partials/breadcrumbs.tpl
      2025-03-21T03:48:24.306Z [80/33] - warn: [meta/templates] Partial not loaded: partials/paginator.tpl
      2025-03-21T03:48:25.333Z [80/33] - info: [build]                  languages  build completed in 3.183sec
      2025-03-21T03:48:25.337Z [80/33] - info: [build]          requirejs modules  build completed in 3.188sec
      2025-03-21T03:48:25.338Z [80/33] - info: [build] Bundling with Webpack.
      2025-03-21T03:48:25.451Z [80/33] - warn: [meta/templates] Partial not loaded: partials/paginator.tpl
      
      [1%] setup (before run)
      [1%] setup (before run NodeEnvironmentPlugin)
      [1%] setup (before run)
      [2%] setup (run)
      [4%] setup (normal module factory)
      [5%] setup (context module factory)
      [6%] setup (before compile)
      [6%] setup (before compile ProgressPlugin)
      [6%] setup (before compile)
      [7%] setup (compile)
      [7%] setup (compile ExternalsPlugin)
      [7%] setup (compile)
      [8%] setup (compilation)
      [8%] setup (compilation ArrayPushCallbackChunkFormatPlugin)
      [8%] setup (compilation JsonpChunkLoadingPlugin)
      [8%] setup (compilation StartupChunkDependenciesPlugin)
      [8%] setup (compilation ImportScriptsChunkLoadingPlugin)
      ...
      ...
      [92%] sealing (asset processing)
      [93%] sealing (after asset optimization)
      [94%] sealing (after seal)
      Build finished at 03:48:30 by 0.000s
      Build finished at 03:48:30 by 0.000s
      Build finished at 03:48:30 by 0.000s
      Build finished at 03:48:30 by 0.000s
      Build finished at 03:48:30 by 0.000s
      282 assets
      732 modules
      
      ERROR in ./build/public/src/modules/topicThumbs.js 104:6-106:8
      Module not found: Error: Can't resolve 'composer' in '/usr/src/app/build/public/src/modules'
      
      webpack 5.98.0 compiled with 1 error in 4452 ms
      2025-03-21T03:48:30.474Z [80/33] - info: [build] Asset compilation successful. Completed in 8.323sec.
      
      > [email protected] start
      > node loader.js --config=/opt/config/config.json --no-silent --no-daemon
      
      
      NodeBB v4.2.0 Copyright (C) 2013-2025 NodeBB Inc.
      This program comes with ABSOLUTELY NO WARRANTY.
      This is free software, and you are welcome to redistribute it under certain conditions.
      For the full license, please visit: http://www.gnu.org/copyleft/gpl.html
      
      Clustering enabled: Spinning up 1 process(es).
      
      2025-03-21T03:48:30.918Z [80/248] - info: Initializing NodeBB v4.2.0 https://forum.com
      2025-03-21T03:48:31.738Z [80/248] - info: [socket.io] Restricting access to origin: https://forum.com:*
      2025-03-21T03:48:31.776Z [80/248] - info: [api] Adding 0 route(s) to `api/v3/plugins`
      2025-03-21T03:48:31.787Z [80/248] - info: [router] Routes added
      2025-03-21T03:48:31.791Z [80/248] - info: šŸŽ‰ NodeBB Ready
      2025-03-21T03:48:31.792Z [80/248] - info: Using ports 80 and 443 is not recommend; use a proxy instead. See README.md
      2025-03-21T03:48:31.793Z [80/248] - info: šŸ“” NodeBB is now listening on: 0.0.0.0:80
      2025-03-21T03:48:31.793Z [80/248] - info: šŸ”— Canonical URL: https://forum.com
      

      But in the browser there is still error:

      Internal server error.
      
      Failed to lookup view! Did you run `./nodebb build`?
      
      1 Reply Last reply
      0
      • baris@community.nodebb.orgB This user is from outside of this forum
        baris@community.nodebb.orgB This user is from outside of this forum
        [email protected]
        wrote on last edited by
        #3

        Did you check if the built files are in /usr/src/app/build?

        1 Reply Last reply
        0
        • J This user is from outside of this forum
          J This user is from outside of this forum
          [email protected]
          wrote on last edited by
          #4

          @baris Yes

          āžœ  devops git:(main) āœ— docker compose exec forum ls /usr/src/app/build
          active_plugins.json  cache-buster  public
          āžœ  devops git:(main) āœ— docker compose exec forum ls /usr/src/app/build/public
          admin-rtl.css  admin.css  client-rtl.css  client.css  fontawesome  language  plugins  scripts-admin.js  scripts-client.js  src  templates
          āžœ  devops git:(main) āœ— 
          
          1 Reply Last reply
          0
          • baris@community.nodebb.orgB This user is from outside of this forum
            baris@community.nodebb.orgB This user is from outside of this forum
            [email protected]
            wrote on last edited by
            #5

            What about the template files inside /usr/src/app/build/public/templates ? The error message you are seeing is caused when expressjs can't find the template file to render.

            1 Reply Last reply
            0
            • J This user is from outside of this forum
              J This user is from outside of this forum
              [email protected]
              wrote on last edited by
              #6

              @baris It looks like they are in place

              āžœ  devops git:(main) āœ— docker compose exec forum ls /usr/src/app/build/public/templates
              400.js   404.tpl  admin      confirm.js   ip-blacklist.js   outgoing.js     register.js           reset.tpl       tos.js
              400.tpl  500.js   chat.js    confirm.tpl  ip-blacklist.tpl  outgoing.tpl    register.tpl          reset_code.js   tos.tpl
              403.js   500.tpl  chat.tpl   emails       login.js          partials        registerComplete.js   reset_code.tpl  unsubscribe.js
              403.tpl  503.js   chats.js   flags        login.tpl         post-queue.js   registerComplete.tpl  sitemap.js      unsubscribe.tpl
              404.js   503.tpl  chats.tpl  install      modals            post-queue.tpl  reset.js              sitemap.tpl
              
              1 Reply Last reply
              0
              • baris@community.nodebb.orgB This user is from outside of this forum
                baris@community.nodebb.orgB This user is from outside of this forum
                [email protected]
                wrote on last edited by
                #7

                Ok so it looks like you are missing the templates from the theme, this can happen if you don't have a theme activated. For example I don't see the categories.tpl file in your output. Make sure nodebb-theme-harmony is activated before ./nodebb build is run.

                ERROR in ./build/public/src/modules/topicThumbs.js 104:6-106:8
                Module not found: Error: Can't resolve 'composer' in '/usr/src/app/build/public/src/modules'
                

                Looks like nodebb-plugin-composer-default is also not activated.

                1 Reply Last reply
                0
                • J This user is from outside of this forum
                  J This user is from outside of this forum
                  [email protected]
                  wrote on last edited by
                  #8

                  @baris Thanks that helps:

                  docker compose exec forum /usr/src/app/nodebb activate nodebb-plugin-composer-default --config /opt/config/config.json
                  docker compose exec forum /usr/src/app/nodebb activate nodebb-theme-harmony --config /opt/config/config.json
                  

                  But this is a completely fresh install, shouldn't the forum boot from the as-is official docker image?

                  1 Reply Last reply
                  0
                  • J This user is from outside of this forum
                    J This user is from outside of this forum
                    [email protected]
                    wrote on last edited by
                    #9

                    @baris i can't login :think:

                    CleanShot 2025-03-22 at 20.51.47@2x.png
                    5e0e8630-b1b0-4022-853c-44d70e934177-CleanShot 2025-03-22 at 20.56.13@2x.png
                    There is no errors in the server log\browser devtools...

                    added 2 packages, and audited 894 packages in 1s
                    
                    117 packages are looking for funding
                      run `npm fund` for details
                    
                    1 moderate severity vulnerability
                    
                    Some issues need review, and may require choosing
                    a different dependency.
                    
                    Run `npm audit` for details.
                    npm notice
                    npm notice New major version of npm available! 10.9.2 -> 11.2.0
                    npm notice Changelog: https://github.com/npm/cli/releases/tag/v11.2.0
                    npm notice To update run: npm install -g [email protected]
                    npm notice
                    DEBUG: PACKAGE_MANAGER: npm
                    DEBUG: CONFIG location: /opt/config/config.json
                    DEBUG: START_BUILD: false
                    No changes in package.json. Skipping build...
                    
                    > [email protected] start
                    > node loader.js --config=/opt/config/config.json --no-silent --no-daemon
                    
                    
                    NodeBB v4.2.0 Copyright (C) 2013-2025 NodeBB Inc.
                    This program comes with ABSOLUTELY NO WARRANTY.
                    This is free software, and you are welcome to redistribute it under certain conditions.
                    For the full license, please visit: http://www.gnu.org/copyleft/gpl.html
                    
                    Clustering enabled: Spinning up 1 process(es).
                    
                    2025-03-22T18:54:35.811Z [4567/56] - info: Initializing NodeBB v4.2.0 http://localhost:4567
                    2025-03-22T18:54:36.409Z [4567/56] - info: [socket.io] Restricting access to origin: http://localhost:*
                    2025-03-22T18:54:36.443Z [4567/56] - info: [api] Adding 0 route(s) to `api/v3/plugins`
                    2025-03-22T18:54:36.448Z [4567/56] - info: [router] Routes added
                    2025-03-22T18:54:36.455Z [4567/56] - info: šŸŽ‰ NodeBB Ready
                    2025-03-22T18:54:36.456Z [4567/56] - info: šŸ¤ Enabling 'trust proxy'
                    2025-03-22T18:54:36.457Z [4567/56] - info: šŸ“” NodeBB is now listening on: 0.0.0.0:4567
                    2025-03-22T18:54:36.457Z [4567/56] - info: šŸ”— Canonical URL: http://localhost:4567
                    
                    1 Reply Last reply
                    0
                    • baris@community.nodebb.orgB This user is from outside of this forum
                      baris@community.nodebb.orgB This user is from outside of this forum
                      [email protected]
                      wrote on last edited by
                      #10

                      When ./nodebb setup is executed it enables all the default plugins. Including harmony theme and composer default.
                      Not sure where that happens in the docker file :think:

                      1 Reply Last reply
                      0
                      • J This user is from outside of this forum
                        J This user is from outside of this forum
                        [email protected]
                        wrote on last edited by
                        #11

                        @baris Its actually in this bash file: https://github.com/NodeBB/NodeBB/blob/master/install/docker/entrypoint.sh

                        1 Reply Last reply
                        0
                        • J This user is from outside of this forum
                          J This user is from outside of this forum
                          [email protected]
                          wrote on last edited by
                          #12

                          https://github.com/NodeBB/NodeBB/blob/master/install/docker/entrypoint.sh#L186-L188
                          Should i manually set the env SETUP? šŸ™„
                          @baris Doesn't https://manage.nodebb.org uses container-based technology?

                          1 Reply Last reply
                          0
                          • baris@community.nodebb.orgB This user is from outside of this forum
                            baris@community.nodebb.orgB This user is from outside of this forum
                            [email protected]
                            wrote on last edited by
                            #13

                            @josef this is the part that should triggered the setup. We don't use docker on manage.nodebb.org.

                            1 Reply Last reply
                            0
                            Reply
                            • Reply as topic
                            Log in to reply
                            • Oldest to Newest
                            • Newest to Oldest
                            • Most Votes


                            • Login

                            • Login or register to search.
                            • First post
                              Last post
                            0
                            • Categories
                            • Recent
                            • Tags
                            • Popular
                            • World
                            • Users
                            • Groups