@docker_ru

Страница 845 из 1375
Konstantin
30.10.2018
21:50:36
ребят, давайте про докер

Станислав
30.10.2018
21:51:25
Сейчас попробую убить что то что жрет

221 свободно?

ниче так что мускул/мария 300 в среднем мб жрет

Google
Roman
30.10.2018
21:55:35
у кого некстклауд в докере отпишите плиз

проблемы с обновлением

Maxim
30.10.2018
22:19:59
mysql: networks: - zhasproject image: mariadb volumes: - ./docker/data/mysql:/var/lib/mysql environment: - "MYSQL_DATABASE=homestead" - "MYSQL_USER=homestead" - "MYSQL_PASSWORD=secret" - "MYSQL_ROOT_PASSWORD=secret" ports: - "3306:3306"
обновилась версия БД и старая база что в папке /docker/data/mysql не может быть подключена к новой версии, нужно очистить папку и залить дамп в новую пустую базу. Что бы такого не повторялось необходмоу жестко фиксировать какую версию MariaDB подтягивать в сервис, иначе вот такое сообщения о невозможности подружиться с имеющейся базой.

Станислав
30.10.2018
22:20:48
понял спасибо!

Maxim
30.10.2018
22:21:37
не хочет кушать старую базу что в папке ./docker/data/mysql такое лучше делать как volumes: - "mysql_data:/var/lib/mysql"

и рулить этим легче и подключить к другому контейнеру легче

Станислав
30.10.2018
22:36:47
Да работает сенкью )

Maxim
30.10.2018
22:41:29
Да работает сенкью )
не за что ) обращайся, обязательно поможем!

Petrovich
30.10.2018
22:42:18
и рулить этим легче и подключить к другому контейнеру легче
как такие вольюмы выносить на другие разделы только вот

Petrovich
30.10.2018
22:46:17
ну типо перенести этот named volume на другой ссд

Maxim
30.10.2018
22:53:38
ну типо перенести этот named volume на другой ссд
На другой хост? Или на локальном хосте должны создаваться в другом разделе, не в том что по умолчанию?

Google
Petrovich
30.10.2018
22:54:29
на локальном хосте на другом разделе

Maxim
30.10.2018
22:57:10
на локальном хосте на другом разделе
Можно смонтировать раздел и подсунуть докеру, можно в настройках поковыряться, там вроде масса путей как перенести ответственность без головной боли, но лучше docker юзать прямо с ssd

Petrovich
30.10.2018
22:57:27
ну так это надо и систему на ссд держать

а если у меня несколько ссд

Maxim
30.10.2018
22:58:29
а если у меня несколько ссд
Тогда чем не нравится тот на котором docker? Размером?

Petrovich
30.10.2018
22:59:02
предположим

ну а если их несколько

Maxim
30.10.2018
22:59:13
Petrovich
30.10.2018
22:59:23
я кстати еще ниразу не пользовался маунтом в докере

Система не на ssd?
не на том, конкретном, ссд

Maxim
30.10.2018
23:00:13
не на том, конкретном, ссд
Смонтируй ssd в ту директорию в которой docker плодит volume и будет тебе счастье

Petrovich
30.10.2018
23:00:25
такое себе решение

потому что не расширяемое

Maxim
30.10.2018
23:01:03
потому что не расширяемое
А ssd твой расширяемый значит )

Petrovich
30.10.2018
23:01:42
ссд может быть НЕСКОЛЬКО

Maxim
30.10.2018
23:02:17
ссд может быть НЕСКОЛЬКО
От этого они не становятся расширяемыми, верно?

Можно ещё сеть задействовать, но это уже не совсем локальное решение для "чтоб взлетело"

Ruslan
31.10.2018
08:23:18
Настроил traefik для двух проектов. С хоста оба открываются, но вот из контейнера проекта 1 не могу достучатся до контейнера проекта 2. Стучусь так curl app.local Насколько я понимаю, нужно указать extra_hosts для каждого проекта, но какой ip указывать ?

Maxim
31.10.2018
09:44:06
Настроил traefik для двух проектов. С хоста оба открываются, но вот из контейнера проекта 1 не могу достучатся до контейнера проекта 2. Стучусь так curl app.local Насколько я понимаю, нужно указать extra_hosts для каждого проекта, но какой ip указывать ?
Расскажи подробней что пытаешься сделать? Может быть это не два проекта, а один и разделение на два docker-compose было ошибкой? Если такое разделение необходимо бизнес процессом то есть способы как достучаться

Google
Ruslan
31.10.2018
09:48:27
Расскажи подробней что пытаешься сделать? Может быть это не два проекта, а один и разделение на два docker-compose было ошибкой? Если такое разделение необходимо бизнес процессом то есть способы как достучаться
Есть два проекта црм и цмс, каждый со своей кодовой базой, лежат в разных папках. У каждого проекта есть свои контейнеры, которые не пересекаются. Иногда, нужно что бы црм с бэкенда смогла послать запрос на цмс и наоборот

Ruslan
31.10.2018
10:02:53
Тогда нужно объединить в одну сеть те контейнеры которые должны видеть друг друга включая traefik
Создал сеть в docker-compose traefik networks: shared: driver: bridge В проектах подключаю её и создаю ещё свою сеть для црм Црм networks: default: external: true name: my_shared crm: driver: bridge services: nginx: build: nginx container_name: crm_nginx labels: - "traefik.frontend.rule=Host:${NGINX_HOST}" networks: - default - crm Цмс networks: default: external: true name: my_shared crm: external: true name: my_crm services: workspace: build: context: ./workspace networks: default: aliases: - cms.local crm: aliases: - crm.local

Ruslan
31.10.2018
10:06:18
Что то перенамудрил с сетями, мне кажется
Я пробовал использовать без альясов в networks, всё рано не работает

причём по названию контейнера получается запрос отправить, а вот как это на доменное имя завязать - не знаю

Maxim
31.10.2018
10:09:26
Если создать сеть и добавить её в traefik, затем как внешнюю в один проект к контейнеру, затем так же как внешнюю в другой проект к другому контейнеру то все должно работать

Ruslan
31.10.2018
10:19:36
Вроде нашёл решение в виде external_links

Petrovich
31.10.2018
10:20:49
/report

Sergey
31.10.2018
10:23:29
Maxim
31.10.2018
10:46:10
Вроде нашёл решение в виде external_links
Поделись решением, не держи в себе )

Ruslan
31.10.2018
10:46:26
а docker-compose всё ещё не поддерживает несколько .env файлов ?

Поделись решением, не держи в себе )
Помогла ссылка сервиса на домен :) в docker-compose црм external_links: - cms_nginx:cms.local

Maxim
31.10.2018
10:49:51
Ruslan
31.10.2018
10:52:50
А зачем несколько .env файлов?
хочу сделать файл .env_hosts в котором буду указывать домены, а в цмс и црм подклюить этот файл что бы знать о хостах друг-друга. Что бы можно было записать ``` external_links: - cms_nginx: ${CMS_HOST} ```

Ruslan
31.10.2018
10:54:28
что бы не дублировать одну переменную CMS_HOST в файле .env цмс и .env црм

Maxim
31.10.2018
10:58:20
что бы не дублировать одну переменную CMS_HOST в файле .env цмс и .env црм
Все указывает на то что эти два приложения являются частью одного большого приложения и должны быть в одной docker композиции

David
31.10.2018
11:18:25
Всем доброго дня. Подскажите, пожалуйста, можно ли перезагрузить docker-compose контейнеры на новом external network - без docker-compose down?

Google
David
31.10.2018
11:20:29
Просто запусти ещё раз up -d для применения изменений
Не могу. Контейнеры удалять нельзя

Maxim
31.10.2018
11:21:23
Не могу. Контейнеры удалять нельзя
А с чего это они вдруг должны удаляться при up -d?

Удаляются как раз при down

David
31.10.2018
11:22:41
Просто запусти ещё раз up -d для применения изменений
Я пробовал, но не применяется новый network к запущеным контейнерам

Maxim
31.10.2018
11:22:48
Ну а я о чем?

Maxim
31.10.2018
11:24:21
Да
docker network inspect network_name что говорит?

David
31.10.2018
11:28:40
docker network inspect network_name что говорит?
Показывает подключенные к сети контейнеры, но при docker-compose up -d они пересоздались

Maxim
31.10.2018
11:29:39
Пересоздаются только при down, при up -d только останавливаются и запускаются снова без удаления

Maxim
31.10.2018
11:46:29
Ruslan
31.10.2018
11:59:58
Все указывает на то что эти два приложения являются частью одного большого приложения и должны быть в одной docker композиции
так и есть, но мне хотелось сделать контейнеры максимально независимыми друг от друга и не держать один большущий docker-compose.yml

Ruslan
31.10.2018
12:06:06
Есть возможность мерджить .yml файлы в нужной комбинации
Получится приерно так? - nginx/ - Dockerfile - php/ - Dockerfile - mysql/ - Dockerfile - node/ - Dockerfile - docker-compose.crm.yml - docker-compose.cms.yml - docker-compose.yml ?

Maxim
31.10.2018
12:09:40
Получится приерно так? - nginx/ - Dockerfile - php/ - Dockerfile - mysql/ - Dockerfile - node/ - Dockerfile - docker-compose.crm.yml - docker-compose.cms.yml - docker-compose.yml ?
например в папке docker/source можно разместить кастомные Dockerfile для сервисов, а в папке docker/compose разместить .yml файлы сервисов, затем можно делать запуск определенных сервисов или композиций путем указания нужного набора .yml файлов примерно вот так docker-compose -f docker/compose/common.yml -f docker/compose/service1.yml -f docker/compose/service2.yml up -d это всего лиш пример и все зависит от текущей задачи, но вполне рабочий вариант если нужно на проде развернуть полностью все сервисы, а на машине разработчика запустить только те сервисы которые необходимы для решения конкретной задачи. подчеркиваю что это всего лиш пример, для демонстрации возможностей

Google
Maxim
31.10.2018
12:22:06
Выглядит круто, буду разбираться. Спасибо! :)
на нашем проекте мы еще не доросли до swarm или kubernetes, пока что обходимся средствами docker-compose, но когда композиция доросла до такого количества сервисов что не влезает в 8Гб ОЗУ то задумались о том что бы запускать не весь набор, а только то что необходимо для решения задачи разработчиком и придумали счему что я описал выше, это конечно не решило всех проблем, а скорее отложило решение, но подход вроде бы рабочий и позволит в будущем легко переехать в swarm или куда нибудь еще

Ruslan
31.10.2018
12:30:49
@rttrttrtt У нас на проде обходятся без докера :) Всё что я делаю - это для своей локальной разработки.

Maxim
31.10.2018
12:33:08
@rttrttrtt У нас на проде обходятся без докера :) Всё что я делаю - это для своей локальной разработки.
Ну тогда тебе точно нужно разделить на сервисы и запускать не все, а только то что нужно для решения задачи. Ну и главное конфиги с прода все подтянуть и версии приложений запускать именно такие как н проде, а то можно пройтись по граблям с разными версиями БД или node.js или php с его набором плагинов и т.д.

Maxim
31.10.2018
13:02:01
Буду разбираться с разделением docker-compose.yml... а случайно не найдётся проекта с открытым исходным кодом где применяется подобный подход ?)
я не искал что то подобное, воспользовался примером из документации где написано что можно мерджить yml файлы, для того что бы удостовериться что все ок используйте docker-compose -f common.yml -f service1.yml config в результате выполнения этой команды будет отображен итоговый конфигурационный файл, если будут ошибки то выдаст сообщение с указанием номера строки. в самой документации был примерчик, помоему, но я давно в этот раздел не заглядывал

Maxim
31.10.2018
13:24:03
Ребят, приветствую. Как вы решаете вопрос с установкой npm packages при разработке с помощью docker compose?

просто docker run -it --rm -v pwd:/src/ --entrypoint npm node:latest install package ?

Maxim
31.10.2018
13:29:40
просто docker run -it --rm -v pwd:/src/ --entrypoint npm node:latest install package ?
я так понимаю просто сделать алиас на эту команду и все

чтобы устанавливались depencencies конкретно для linux'a

а не для macos

Maxim
31.10.2018
13:31:21
просто docker run -it --rm -v pwd:/src/ --entrypoint npm node:latest install package ?
тогда этот вариант отлично подходит

Maxim
31.10.2018
13:31:47
тогда этот вариант отлично подходит
спасибо. просто думал может есть нормальные способы)

Страница 845 из 1375