core-ds / arui-scripts

Simple but flexible tool to build react applications with nodejs server
21 stars 6 forks source link

Ошибка при старте докер образа с clientOnly #252

Closed RG100-EMUX closed 1 month ago

RG100-EMUX commented 1 month ago

Добрый день,

Не работает запуск докер образа в контейнере через cmd: sh ./start.sh при clientOnly флаге. Версия arui-scripts@17.1.7, запуск сборки в pipeline - yarn docker-build, сеттинги для arui-scripts:

"aruiScripts": {
        "debug": false,
        "keepCssVars": true,
        "baseDockerImage": "..../arui-scripts:18.20.0-slim",
        "runFromNonRootUser": true,
        "disableDevWebpackTypecheck": true,
        "clientOnly": true
    },

При попытке стартануть приложение, падает на запуске .build/server.js

Error: Cannot find module '/src/.build/server.js'
    at Module._resolveFilename (node:internal/modules/cjs/loader:1140:15)
    at Module._load (node:internal/modules/cjs/loader:981:27)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:128:12)
    at node:internal/main/run_main_module:28:49 {
  code: 'MODULE_NOT_FOUND',
  requireStack: []
}

Node.js v18.20.0

Предполагаемое место для исправления - https://github.com/core-ds/arui-scripts/blob/master/packages/arui-scripts/src/templates/start.template.ts#L31 Возможно, что нужно строку с запуском сервера убрать под условие clientOnly, либо дополнительно на уровне контейнера ставить какой-нибудь serve и запускать сервер для статики

heymdall-legal commented 1 month ago

В client-only режиме не предполагается использовать start.sh - он там просто не нужен. Используйте nginx как команду для запуска. https://github.com/core-ds/arui-scripts/pull/253