На основе какой логики следует принимать решение о создании дополнительных папок в Docker-контейнерах от образов NodeJS?

Сколько я не вижу уроков по Docker, практически везде в контейнере создаются дополнительные папки, в которую кладётся проект. Вот пример: содержимое директорий src и dist:

├── dist
│   └── bundle.js
├── docker
│   └── webpack
│       ├── Dockerfile
│       ├── package.json
│       └── webpack.config.js
├── docker-compose.yml
└── src
    ├── app.js
    └── test.js

нужно зачем-то обязательно положить в папку my_webpack, имя которой "самоочевидное и сразу понятно, зачем она нужна":

version: '3'

services:
  webpack:
    build: ./docker/webpack
    volumes:
      - ./src:/my_webpack/src
      - ./dist:/my_webpack/dist
      - ./docker/webpack/package.json:/my_webpack/package.json
      - ./docker/webpack/webpack.config.js:/my_webpack/webpack.config.js
    ports:
      - 2000:2000

Другой пример:

volumes:
- .:/usr/src/app

У нас же в контейнере ничего, кроме приложения нет! Какую такую жизненную необходимость имеет матрёшка usr/src/app?

В будущем я буду использовать в основном образы Node.js и если это не даёт никаких побочных эффектов, то класть своё приложение прямо в корень файловой системы контейнера. Будут ли у Вас, дорогие Docker-специалисты, какие-нибудь аргументы в пользу того, что так делать нельзя?

Обновление

Из этого англоязычного ответа я узнал, что ничего примонтировать к корневой директории контейнера нельзя. Поэтому если нам нужно что-то примонтировать, то возникает необходимость создать как минимум одну директорию в контейнере.


Ответы (0 шт):