
Так ли страшен докер, как его малюют? В частности интересует, если какой-нибудь ownCloud запускать контейнером на дроплете с гигом памяти, не треснет ли дроплет?
Дата рождения: 01.11.1983
Тотальная неудачница и убийца жёстких дисков. Самая большая поклонница Ариэль. Член ордена Вселенского тормоза имени Осаки-сан. Любительница каваййных переднеприводных машинок. Суккуб на полставки. Когти прилагаются.
Так ли страшен докер, как его малюют? В частности интересует, если какой-нибудь ownCloud запускать контейнером на дроплете с гигом памяти, не треснет ли дроплет?
докер - не страшно, т.к. это по сути chroot и пара других костылей в ядре. Оверхеда там появляется, когда у тебя этих контейнеров штук пятьдесят будет.
С другой стороны у контейнеров есть полезная фичи - можно подрезать контейнер, чтоб жрал только 512Мб памяти и 50% одного конкретного CPU.
Но для твоих задач подозреваю проще и лучше будет lxc-containers.
Докер - это не только контейнеры, но и монструозное нечто по управлению слоями, ФС, логгингом, образами, сетью итд, так что с нуля лучше в lxc въезжать. А не въехавши в какие-то куски философии можно очень неприятно наебаться.
я очень не люблю качать чужие контейнеры, читаешь докерфайлы и в 3/4 случаев волосы на голове шевелиться начинают и рука к канделябру тянется - то бинарник не пойми откуда качается, то какие-то заклинания делаются с каталогом, которого нет в репозитории. А мускуль отваливался скорее всего не из-за контейнера, а из-за кривых конфигов или чудовищных запросов, что ownCloud генерит (был я в этих исходниках и там не очень много хорошего).
я больше за lxc и поставить внутрь контейнера руками, чтоб залимитировать потребление. Но если докерфайл нормальный, можешь рискнуть и скачать. Только это ставь так, что ownCloud - один контейнер, а БД для него - другой, недоступный снаружи. У docker стрёмно, когда внутри него слишком сложное дерево процессов бежит.
и обязательно все каталоги с данными и логами, в которые docker-контейнер пишет должны быть смонтированы с хоста, иначе тебе потом будет не пересоздать docker-контейнер при обновлении и разгребать /var/lib/docker заебёсси.
это больше всего похоже на ошибку конфигурации со стороны авторов образа. там или phpшечка выжирала всю память от запросов, или mysql. или там отвалы были не как падения серверного процесса БД, а как таймауты? тебе ещё могло не повезти с соседями - у меня так один раз было, пришлось пересоздавать дроплет, иначе сеть и дисковый IO лагали шоппц.
https://eax.me/lxc/ - продолжу пропаганду lxc для домашнего использования. в отличие от докера это такой пусть и неудобный местами конструктор, из которого можно взять только то, что нужно и в каждом отдельном кусочке проще разобраться, чем сразу весь докер понять.
По идее, там самые затраты - при сборке образа из слоёв. А сам запуск - особо не затратен.