Patsy
George
Patsy
Самое простое - Линукс Vds полноценная
в идеале если все заработает, то раскошелюсь на отдельное железо и подниму линукс там. наверно даже уже без ебучего докера) хотя с ним так вроде ванильно все было
Dan
да! :)
так.
я тебя понял.
есть две фундаментальные проблемы:
1) виртуалбокс ОЧЕНЬ плохо работает с внешними маунтами, оно дико медленное, вплоть до потерь консистентности запросто, особенно на тяжёлых операциях.
2) внешний диск, да ещё и через usb, ну вы меня простите - это совсем тяжёлый случай. ты себе представляешь, через сколько слоёв абстракции приходится проходить твоим данным, каждый раз натыкаясь на никому ненужные ворота в виде "виртуальных драйверов" и т.п. ?
Dan
самое простое в твоём случае - сделать NAS.
Patsy
Dan
можно самому, через raspberry pi и диски, можно купить готовое типа qnap или synology
Patsy
так.
я тебя понял.
есть две фундаментальные проблемы:
1) виртуалбокс ОЧЕНЬ плохо работает с внешними маунтами, оно дико медленное, вплоть до потерь консистентности запросто, особенно на тяжёлых операциях.
2) внешний диск, да ещё и через usb, ну вы меня простите - это совсем тяжёлый случай. ты себе представляешь, через сколько слоёв абстракции приходится проходить твоим данным, каждый раз натыкаясь на никому ненужные ворота в виде "виртуальных драйверов" и т.п. ?
ну, я не правильно выразился, там не юсб диск, просто сата, но суть таже.
Dan
Dan
тебе не нужна виртуалка, и тем более докеры для этой цели.
Dan
ибо на любой операции по индексации повиснет диск, виртуалка, хост, и вообще всё разлетится :)
Dan
а nextcloud очень любит индексации при каждом обновлении
Patsy
можно самому, через raspberry pi и диски, можно купить готовое типа qnap или synology
синлоджи не подходит, у него плохой мобильный клиент, который не позволяет бэкапить данные. надо чтобы телефон был включен в этот момент, и пользователь его тыкал, иначе синхронизация останавливается. а еще у него плохой фото клиент, и нельзя через него управлять фототекой нормально. поэтому я хочу потыкать nextcloud и если там все плохо, то owncloud. а если там тоже все плохо, то наверно просто сжечь все данные и уйти в закат. потому что я уже не знаю больше вариантов
George
George
Синолоджи не противоречит установке nextcloud на него
Patsy
да не, я просто обычное железо хотел купить и на нем собрать в итоге
Dan
пусть это будет докер, но можно обойтись как минимум без виртуалбокса и убунты
Dan
потому что на эти обе вещи ресурсы уходят огромные
Patsy
Dan
особенно на io-драйвер виртуалбокса
Dan
https://docs.docker.com/docker-for-windows/install/
Patsy
ну он честно говоря бывает подзаебывает, особенно когда просто виртуалка подвисает без объяснения причин наглухо. а в логах пишет что-то там вирутал помощник его
Dan
хоть я и не сторонник этого дела, но в твоём случае может сработать
Dan
просто под виндой у докера есть другие проблемы :) не менее смешные чем io у вбкоса
Dan
но для твоих задач вполне
Dan
Dan
как минимум пару слоёв экономии - уже прирост к производительности, а там глядишь и заведётся всё
Dan
Dan
Тогда докер нормально работает. В целом
Patsy
Patsy
или то что докер постоянно свои маршруты добавляет?
Patsy
кстати, да, помню давно ради интереса поставил докер на виртуальный синолоджи, а доступ к нему был через впн, и сети совпали. я долго не мог понять почему он перестал быть доступен
Денис
Приветствую! Коллеги, поделитесь пожалуйста ссылкой окружение для Битрикс, меня интересует? кто смогу руками собрать в докере все сервисы😁 если кого такое интересует, давайте вместе
George
palladdiumm
Денис
надоели гипервизоры и частые косякт и вылеты 😇
минуты
Коллеги, расскажите пожалуйста - какие могут возникнуть проблемы, если я в запущенном докер-контейнере (том самом, который у меня с java-приложением из .RPM) проброшу на хост папку с конфигами и буду их там (на хосте) редактировать в процессе деплоя. С правами всё ровно будет? Идеологически - насколько правильно так делать? Папку с конфигами на хосте я могу засунуть в git/etckeeper, только вот как правильно версионировать? В итоге мне нужно будет приделать к Gitlab Runner-у сборку/оркестрацию каждого коммита в стенд из контейнеров (и базы).
Div
минуты
Div
а зачем костылить? просто юзера задублировал
Div
тоже своего рода костыль но женя потом вопросов не задавал совсем
Div
просто в два этапа раскатывал. сначала проверил с какими правами и аттрибутами лежат конфиги на волюме и потом создавал юзера с нужными. прибил и передеплоил контейнер
минуты
я имел в виду какой-то более изящный способ, по типу создания/замены симлинка, но для контейнеров
минуты
https://i.imgur.com/5BS6LDE.png
Леннарт Zh 🕊
минуты
https://github.com/boxboat/fixuid
fixuid was born because there is currently no way to remap host volume UIDs/GIDs from the Docker Engine, see moby issue 7198 for more details.
fixuid should only be used in development Docker containers. DO NOT INCLUDE in a production container image
Леннарт Zh 🕊
но вообще смешно конечно - вся "переносимость" и "независимость от дистрибутива" ломается из-за цифровых идентификаторов, которые разные в разных дистрибах
Леннарт Zh 🕊
и контейнер, собранный с одними uid/gid потом нуждается в "починке" прав или задании владельцев при запуске/монтировании томов
Леннарт Zh 🕊
uid=54331(grid) gid=54321(oinstall) groups=54321(oinstall),54322(dba)
Леннарт Zh 🕊
и есть 6 или 7 вариантов решения (зависит не только от ос во FROM контейнера, но и от ОС хоста) https://stackoverflow.com/a/56060521/7568519
George
потому что нефиг шарить данные между хостом и контейнером - раз
George
если нужна персистенция - используй вольюмы - два
George
три - в идеале - контейнеры для стейтлес. Раз нет данных - нет проблем с уидами
Леннарт Zh 🕊
мне нужно для ликвида запустить "инсталятор" внутри контейнера, чтобы в другом контейнере (оракловом) создать таблицы в базе
George
George
George
что такое ликвид - luquibase?
Леннарт Zh 🕊
страдай
мне сейчас нужно просто запустить, а потом всё засунуть в пайплайн
George
просто запусти
George
а потом просто засунь в пайплайн 😃
Леннарт Zh 🕊
что такое ликвид - luquibase?
да
Перед запуском liquibase необходимо указать реквизиты доступа к БД в файле настроек
/opt/app/config/liquibase/liquibase.properties. Запуск осуществляется из директории
/opt/app/config/liquibase с помощью скрипта update.sh. Выполнение скрипта обеспечит
начальную инициализацию схемы или обновит схему до последней версии.
Anton
У кого-нибудь есть идеи, в чем может быть проблема? Добавляю ноду и npm в свой образ вот так:
FROM node:16.0-alpine AS node
....
....
COPY --from=node /usr/local/bin/node /usr/local/bin/node
COPY --from=node /usr/local/lib/node_modules /usr/local/lib/node_modules
RUN ln -s /usr/local/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm \
&& ln -s /usr/local/lib/node_modules/npm/bin/npx-cli.js /usr/local/bin/npx
Если использовать образ node:16.0 - все ок, а если node:16.0-alpine, то вот такая проблема:
www-data@52d6b5b4fe4b:/var/www/project$ which node
/usr/local/bin/node
www-data@52d6b5b4fe4b:/var/www/project$ node -v
bash: /usr/local/bin/node: No such file or directory
www-data@52d6b5b4fe4b:/var/www/project$ which npm
/usr/local/bin/npm
www-data@52d6b5b4fe4b:/var/www/project$ npm -v
/usr/bin/env: 'node': No such file or directory
Anton
Как видно, файлы в мой образ попадают, пути правильные, даже which находит, но какого хера ноу сач файл. Чем там alpine образ ноды так отличается?
Леннарт Zh 🕊
Anton
какой переменной?
Alexander
Anton
Разобрался. В другом чате мне подсказали, что есть зависимость между окружениями "где собирается бинарник" и "где запускается". Поэтому, бинарник, собранный в alpine версии ноды, не запускается на дебиане.
Alexander