Стендап Сьогодні 📢 Канал в Telegram @stendap_sogodni

🤖🚫 Контент вільний від AI. Цей пост на 100% написаний людиною, як і все на моєму блозі. Насолоджуйтесь!

12.09.2024

Docker як архівна система

На початку року вже писав, як використати Docker, щоб втекти з власного оточення в таке, що є зручним. Сьогодні нарешті випробував окремий варіант такого використання: повернення в історичне оточення.

Ситуація знайома до болю. Стикнувся з проєктом на JavaScript, який вже років 5 не підтримувався. Node.JS 12 - старіша за епоху Apple Silicon та потребує Python 2 для встановлення. А з нею - Node-Sass, Webpack 4 і все інше. На моїй машині все це не запускалося.

Зазвичай я намагаюся привести такий проєкт до життя — оновити залежності, причепурити. Але на цей раз проєкт не мій, а мені тільки декілька рядків виправити, зібрати та забути. Я вже майже змирився з тим, щоб перекласти задачу на супроводжувача, але тут згадав про Docker та про свій досвід запуску команд.

Знайшов на Docker Hub образи від Bitnami. Запустив оболонку, та, дуже несподівано, всі команди від npm install до npm build пройшли як по маслу!

docker run -v .:/mnt -it bitnami/node:12 /bin/bash

А взагалі в ідеалі можна було заздалегідь підготувати образ для підтримки, навіть зібрати його та зберегти. Навіть разом з усіма залежностями, базами, утилітами та всім іншим.