group-telegram.com/metaprogramming/335
Last Update:
Как я пользуюсь докером в быту
(Программистская тема, так что всех не интересующихся прошу скиповать.)
Иногда бывает удобно установить что-то не из brew/apt (или аналога), а напрямую из исходников или скачав бинарник. С другой стороны устанавливать все зависимости времени компиляции и времени выполнения в основную систему неудобно, кроме того возможны конфликты между разными версиями библиотек и т.д.
В таких случаях максимально удобно использовать Docker.
Чтобы вручную не вбивать каждый раз кучу параметров docker build/docker run я пришёл к такой схеме:
* В ~/images
пишу dockerfile для образа очередной программы, например youtube-dl.dockerfile
для youtube-dl
* В ~/images/docker-compose.yml
добавляю секцию для сборки и теггирования описанного образа
* Скрипт ~/images/build-all
делает docker-compose build
, собирая все образы
* Скрипт ~/images/wrap-all
для каждого докерфайла создаёт скрипт запуска данного контейнера в ~/bin
, вызывая ~/bin/docker-run-script
* Скрипт ~/bin/docker-run-scripts
вызывает docker run ...
, передавая параметры командной строки и подключая текущую директорию внутрь образа
Директория ~/bin
добавлена в PATH
, в итоге собранными в докере скриптами можно пользоваться как установленными локально (например, запускать youtube-dl-docker
как если бы это был установленный youtube-dl).
Выложил на github: https://github.com/EugZol/docker-run-script
#programming
BY Metaprogramming
Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260
Share with your friend now:
group-telegram.com/metaprogramming/335