ФорумРазработкаУстановка и администрирование ПОDocker - Linux Containers → Начинаю познавать docker

Начинаю познавать docker

  • AlexB

    Сообщения: 4288 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 6:11

    В общем, дошли руки пощупать вплотную этот ваш docker.

    Вопрос такой. Вот пишу я Dockerfile, который соберет мне контейнер. Контейнер большой, сложный и довига в нем всякого софта.
    Как мне писать его последовательно добавляя новые команды, чтобы старые каждый раз не выполнялись?
    Например начинается он с чего-то типа:
    RUN apt-get update
    Выполнил, сохранил контейнер. Понял что надо теперь добавить допустим:
    RUN apt-get install -y nginx
    Но заново ждать пока update пройдет долго и нудно. Какие тут гуд-практик?

  • AlexB

    Сообщения: 4288 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 6:51, спустя 39 минут 59 секунд

    Аааа ... похоже дошло ))))

  • phpdude

    Сообщения: 26613 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 9:20, спустя 2 часа 29 минут 3 секунды

    он кеширует после каждой команды автоматически если не менялись добавленые файлы в контейнер и команды не менялись. Ну и кеширует ровно до изменений конечно. Поэтому файлы проекта которые могут измениться или тп лучше добавлять в конце. Как и всякие pip install -r requirements.txt (они могут меняться), а баовые штуки типа apt-get install python, etc можно наверху отсавлять :)

    Сапожник без сапог
  • AlexB

    Сообщения: 4288 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 11:21, спустя 2 часа 1 минуту 25 секунд

    ага, да уже дошло про кеширование, но ты хорошо расписал.

    а вообще все конфиги типа /etc/нечто как лучше организовать?
    - тупо в контейнере с этим работаем и комитим после изменений, обновляем контейнер
    - кладем в директорию проекта и в Dockerfile добавляем команды копирования в контейнер
    - как-то еще???

  • phpdude

    Сообщения: 26613 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 12:54, спустя 1 час 33 минуты 8 секунд

    ага, да уже дошло про кеширование, но ты хорошо расписал.

    а вообще все конфиги типа /etc/нечто как лучше организовать?
    - тупо в контейнере с этим работаем и комитим после изменений, обновляем контейнер
    - кладем в директорию проекта и в Dockerfile добавляем команды копирования в контейнер
    - как-то еще???

    @AlexB, у меня конфигурация рядом с файлами Dockerfile лежит, в папочках, обычно я повторяю полный путь до файла чтобы мозги себе не ебать. Например надо поменять /etc/hosts - юзаю файлик в подпапках (Dockerfile, configs/etc/hosts). Чтобы потом не думать чо за хуйня.

    Второй вариант тобишь. Считаю его верным самым. Контейнеры как бы stateless и в этом их блядь сила! Не надо делать их stateful имхо :)

    Сапожник без сапог
  • AlexB

    Сообщения: 4288 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 13:32, спустя 37 минут 53 секунды

    А сборку всякого говна из исходников как? Когда надо
    wget
    tar
    make
    make install

    В итоге он все-равно станет stateful? Не?

  • phpdude

    Сообщения: 26613 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 13:33, спустя 37 секунд

    А сборку всякого говна из исходников как? Когда надо
    wget
    make
    make install

    @AlexB, так и делаю :)

    ведь код должен быть собран :D Ну и исходники проверить заодно :)

    Спустя 57 сек.

    вот тебе пример моего докера https://gist.github.com/phpdude/bd3767642008de6d91e3e1f5dba3d7d4

    Сапожник без сапог
  • AlexB

    Сообщения: 4288 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 13:34, спустя 1 минуту 24 секунды

    Т.е. все в dockerfile абсолютно?

  • phpdude

    Сообщения: 26613 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 13:36, спустя 1 минуту 53 секунды

    @AlexB, конечно, в этом и есть смысл контейнеров ;)

    Сапожник без сапог
  • AlexB

    Сообщения: 4288 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 13:37, спустя 1 минуту 7 секунд

    Ну да все как бы стройно выглядит, но писать и отлаживать dockerfile придется долго и нудно ...

  • phpdude

    Сообщения: 26613 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 13:42, спустя 5 минут 1 секунду

    Ну да все как бы стройно выглядит, но писать и отлаживать dockerfile придется долго и нудно ...

    @AlexB, ну пару тройку часов на средний файлик ))

    лайфхак - арендуешь сервак и на нем отлаживаешь ;)

    Где канал поширше и проц помощнее)) Думаешь админы серваки быстрее настраивают? У них права на ошибку вообще нет, тут хотя бы кеш есть ;)

    Сапожник без сапог
  • AlexB

    Сообщения: 4288 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 13:47, спустя 4 минуты 10 секунд

    Ну да, админам тоже нелегко. Но мне все-таки IDE родней, а не консоль. ))))) Придется себя заставлять, а то мы сильно конфигурацию обновили на продакшене, и надо разрабам и верстакам срочно новое рабочее место готовить.
    А админа еще одного, на которого можно было бы все это спихнуть уже год ищем безрезультатно.

  • phpdude

    Сообщения: 26613 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 13:47, спустя 13 секунд

    @AlexB, а на сервере фигачить жутко удобно вот такой фигней dvddarias/rdocker [github.com]. Вчера нагуглил, хотел было сам писать нечто такое :)

    Спустя 26 сек.

    Ну да, админам тоже нелегко. Но мне все-таки IDE родней, а не консоль. ))))) Придется себя заставлять, а то мы сильно конфигурацию обновили на продакшене, и надо разрабам и верстакам срочно новое рабочее место готовить.
    А админа еще одного, на которого можно было бы все это спихнуть уже год ищем безрезультатно.

    @AlexB, за 200тр в месяц на треть ставки готов я! :)

    Спустя 9 сек.

    Ну это ты и сам знаешь :)

    Сапожник без сапог
  • AlexB

    Сообщения: 4288 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 13:50, спустя 3 минуты 8 секунд

    Да нам в офис надо ...
    Удаленный админ у нас есть крутой, но он ели успевает продакшеном занимается. А надо еще на текучку. За 150 не можем найти.

    Спустя 49 сек.

    Ну зато прокачка скилов, хоть и не сильно мной любимых, нет худа без добра

  • phpdude

    Сообщения: 26613 Репутация: N Группа: в ухо

    Spritz 10 октября 2016 г. 13:51, спустя 1 минуту 30 секунд

    @AlexB, ну можете еще крутого взять за 200 :D

    Сапожник без сапог

Пожалуйста, авторизуйтесь, чтобы написать комментарий!