Skip to content

Conversation

@point212
Copy link

Предлагаю улучшения всего, что связано с запуском и разработкой проекта в докере.

В первую очередь это более гранулярные типовые операции.
Во вторую, упрощение билда проекта от состояния "склонировал репу" до состояния "скомпилено и запущено".
Ну и прочие изменения.

Теперь детально.
Флоу развёртывания и разработки я разбил на следующие части:

  1. build_prod && run_prod - две операции чтобы сбилдить готовый контейнер, готовый к пушу в докер хаб. в повседневной разработке не нужны

  2. up && down / sh - основной флоу ежедневной разработки. up && down соответственно чтобы сбилдить свежую версию из кода, и тут же запустить её, down - останавливает и убивает контейнеры, чтобы не накапливались. полезен в случае глюков докера.
    sh - собственно открывает терминальную сессию внутри контейнера, для любых операций. не билдит код перед запуском.

  3. clean && build_devel - соответственно удаляют скомпилированный бинарник и компилят новый.

Что касается других изменений:
папку с модулями перенёс наружу контейнера, в /vendor. чтобы можно было делать поиск по коду прямо из IDE.
(не уверен в необходимости этого решения)

сделана куча телодвижений чтобы файлы внутри контейнера принадлежали тому же юзеру, под которым ты работаешь снаружи. это решает проблемы когда докер (в котором всё от root'a по дефолту) понасозадёт файлов, а ты снаружи не можешь их изменить.

Add compability between  user inside and outside of container
Optimize paths
Optimize tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant