Installing: what files/folders does the installation/runtime change?
-
I'm installing NodeBB inside Docker, and the files/folders that are changed during installation/runtime need to go into Docker volumes, in order to be persisted.
For this I would need to know what those files/folders are.
I found some, but there may be more:
- /config.json
- /build/cache-buster
- /build/public
Thanks.
-
@julian Is there like an official list of files/folders that need to be persisted after docker installation so as to not lose data during an upgrade, and have the upgrade work properly? It feels like a shot in the dark, as there seems to be no official docker (or docker-compose) installation guide, only bare.
-
Persisted the specified files/folders after installation:
/usr/src/app/config.json /usr/src/app/package.json /usr/src/app/node_modules /usr/src/app/public/uploads
Did not persist
build
as indicated.Container came back with following errors after a
docker-compose down && docker-compose up -d
:Missing translation "language:dir", Missing translation "pages:home", 2019-09-11T00:25:29.679Z [4567/23] - error: /categories, Failed to lookup view "categories" in views directory "/usr/src/app/build/public/templates" {"view":{"defaultEngine":"tpl","ext":".tpl","name":"categories","root":"/usr/src/app/build/public/templates"},"stack":"Error: Failed to lookup view \"categories\" in views directory \"/usr/src/app/build/public/templates\"\n at Function.render (/usr/src/app/node_modules/express/lib/application.js:580:17)\n at ServerResponse.render (/usr/src/app/node_modules/express/lib/response.js:1012:7)\n at content (/usr/src/app/src/middleware/render.js:93:15)\n at eachfn (/usr/src/app/node_modules/async/dist/async.js:2952:28)\n at replenish (/usr/src/app/node_modules/async/dist/async.js:444:21)\n at /usr/src/app/node_modules/async/dist/async.js:449:13\n at eachOfLimit$1 (/usr/src/app/node_modules/async/dist/async.js:475:34)\n at awaitable(eachOfLimit$1) (/usr/src/app/node_modules/async/dist/async.js:208:32)\n at eachOfGeneric (/usr/src/app/node_modules/async/dist/async.js:510:16)\n at eachOf (/usr/src/app/node_modules/async/dist/async.js:555:16)"}, Missing translation "language:dir", Error: Failed to lookup view "500" in views directory "/usr/src/app/build/public/templates", ...
-
I see that I had to execute
./nodebb build
in the container. I am guessing that it is because after removing the container, thebuild
directory was gone and needed to be rebuilt, which tells me I have to put abuild
command on every container startup. This is not very optimal. I am hoping at some point in the future we can have a more hands-off docker-friendly deployment (like with env vars and all).