РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗dcMgInSc 14 of 24 menu
◀ ▶

Скрипт первого запуска в Docker

Скрипт первого запуска кладёт документ, пока том ещё пустой. Образ выполняет такие файлы только при первой инициализации хранилища данных, когда каталог базы ещё не содержит рабочих файлов.

В файле init/app.js выбирают базу app и вставляют одну запись в коллекцию notes:

db = db.getSiblingDB('app'); db.notes.insertOne({ text: 'hello' });

Сервис db на mongo:8.3 монтирует том dbdata в /data/db и папку ./init в /docker-entrypoint-initdb.d без пароля при старте:

services: db: image: mongo:8.3 volumes: - dbdata:/data/db - ./init:/docker-entrypoint-initdb.d volumes: dbdata:

Фоновый подъём проекта выполняют командой docker compose up с флагом -d:

docker compose up -d

После готовности сервера внутри сервиса запускают клиент и смотрят поле text у документа в app - там строка hello, отдельная таблица вывода в уроке не нужна:

docker compose exec db mongosh --quiet app --eval "db.notes.findOne({ text: 'hello' }, { _id: 0, text: 1 })"

Опишите на пустом томе cards коллекцию items в базе app через JavaScript-файл в подключённой папке старта.

Отметьте после подъёма, что документ с нужным текстом виден в базе app.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить