Andor
11.03.2019
11:21:03
:)
Andrey
11.03.2019
11:54:04
привет, ребят
что можно сделать с вольюмом при перемещении сервиса с одной машины на другую? есть бестпрактики?
Google
Andrey
11.03.2019
11:55:17
чтобы данные за сервисом пошли
Andor
11.03.2019
11:55:28
зависит от типа волюма
Andrey
11.03.2019
11:56:01
ну типа нет, надо что то придумать чтобы это все было бесшовно
Andor
11.03.2019
11:56:12
зависит от типа волюма
Andrey
11.03.2019
11:56:30
спасибо
Andor
11.03.2019
11:56:43
если например сетевой, то ничего, просто перемонтировать
Alexey
11.03.2019
11:56:46
nfs самое простое
Andor
11.03.2019
11:56:51
а если локальный, то надо как-то упаковывать и мигрировать
Alexey
11.03.2019
11:58:40
Andrey
11.03.2019
11:58:50
данные базы
Andor
11.03.2019
11:59:18
репликацией не получается?
Iurii
11.03.2019
11:59:22
Andrey
11.03.2019
11:59:23
условно надо переместить слэйва на другую машину
Google
Alexey
11.03.2019
12:00:02
Andor
11.03.2019
12:05:46
@gecube @alexesDev
$ cat docker-compose-tmpfs.yaml
version: '3.2'
services:
mysql: {}
redis: {}
composer: {}
phpunit: {}
volumes:
mysql-data:
driver_opts:
type: tmpfs
device: tmpfsработает :)
Alexey
11.03.2019
12:06:32
Andor
11.03.2019
12:07:04
но оно сможет запускать только сервисы из второго файла
остальное видимо мёржится
странная логика, ну да ладно
George
11.03.2019
12:07:30
хз
мы чтобы сохранить порядок запуска делали так
docker-compose -f first.yaml up -d
docker-compose -f first.yaml -f tests.yaml —abort-on-container-exit
и, да, я накосячил с параметрами
а docker-compose -f ololo.yaml -f ololo2.yaml config
но ты мог и сам догадаться ?
Andor
11.03.2019
12:08:57
гм
не смог! %)
George
11.03.2019
12:09:20
ну, сорян, пора развивать фантазию ))))
Andor
11.03.2019
12:09:21
с хелсчеками пока не заморачивался
то есть сервис всё равно запустится
https://docs.docker.com/compose/startup-order/
сами рекомендуют юзать всякие костыли
Google
Andor
11.03.2019
12:30:11
вместо их костыля
while ! test -f /tmp/php/composer.done; do echo 'waiting for composer'; sleep 1; done; rm -f /tmp/php/composer.done;
while ! mysql --user=root --password=much-secret-very-password -S /tmp/run/mysql/socket -e 'show databases;'; do echo 'waiting for mysql socket'; sleep 1; done;ура костылям!
George
11.03.2019
12:47:55
Это докер компоуз для сворма
Используй параллельно развивающийся формат 2.*
Для стендэлоун докера - идеально
Andor
11.03.2019
12:49:41
ты в курсе что ты мне щас мозг сломал?
George
11.03.2019
12:50:31
Давай по-простому
3.0 это не новее, чем 2.7
Andor
11.03.2019
12:50:42
да я уже костыликов приделал
George
11.03.2019
12:50:45
По крайней мере у докера )
Andor
11.03.2019
12:50:49
ну откуда ж мне было знать-то!
Alexey
11.03.2019
12:50:55
в стиле python
Andor
11.03.2019
12:51:03
lol
George
11.03.2019
12:52:15
Andor
11.03.2019
12:53:06
я написал todo на убирание этих костылей
George
11.03.2019
12:54:40
Млдц
Andor
11.03.2019
12:54:41
phpunit дебил пишет время в виде 1.77 minutes
Google
Zhandos
11.03.2019
13:16:05
Добрый день, есть два контейнера есть ping через сеть, как с одного контейнера отправить команду на второй контейнер?
Alexey
11.03.2019
13:22:21
Ivanzor
11.03.2019
13:26:58
Можно увеличить мем для контейнера не пересоздавая его?
Kusok
11.03.2019
13:41:52
ребята, докер на хакинтоше нормально работает?
Iurii
11.03.2019
13:45:58
Anatoliy
11.03.2019
13:56:53
Народ, а секреты в докере лежат по умолчанию в /run/secrets/secret-name ?
Andor
11.03.2019
13:57:18
Anatoliy
11.03.2019
13:57:27
Просто если у меня там пароль то мне интересно как его можно просто получить? Т.е. там ведь файл, а мне то надо просто кусок текста?
В общем может кто подсказать как оно должно выглядеть?
Andor
11.03.2019
13:58:12
Anatoliy
11.03.2019
13:58:32
Да не сказал бы, у меня на компе винда, пока приложение соберется, пока его выложишь
Просто все примеры что я пока нашел показывают именно вариант с файлами(
Andor
11.03.2019
13:59:51
и в чём проблема прочитать из файла в переменную-то?
Anatoliy
11.03.2019
14:00:58
в том что я могу очень просто дернуть например env в приложении, а чтение из файла - уже обращение к фс и прочее, не сложно, но вдруг есть другой вариант?
Andor
11.03.2019
14:01:59
ну прочитай из файла и пихни в env если хочется
Anatoliy
11.03.2019
14:02:29
да нафиг оно мне так надо если читать файл так и так придется)
Andor
11.03.2019
14:09:18
ну это зависит от того кто его читает
@gecube чота не выходит с version 2.4 тоже
George
11.03.2019
14:09:59
2.7 бери
Andor
11.03.2019
14:10:14
сделал depends_on:
composer:
condition: service_healthy
mysql:
condition: service_healthy
redis:
condition: service_startedи оно запускается когда сервисы _started но ещё не healthy
Google
Andor
11.03.2019
14:10:21
чота в доках не вижу упоминаний версии 2.7
Art
11.03.2019
14:10:27
всем привет. посоветуйте какой-нибудь хороший гайд по развертыванию lemp в докере?
Andor
11.03.2019
14:12:58
@gecube указываю 2.7 и ругается что не знает такой версии :)
ты точно не спутал?
Larymar
11.03.2019
14:14:29
подскажите а как рестартнуть сам докер а не весь контейнер
а винде в gui есть пункт restart а в консольке как?
George
11.03.2019
14:15:55
сорри
2.4 https://docs.docker.com/compose/compose-file/compose-versioning/#version-24
вот последняя
Andor
11.03.2019
14:17:24
да всё у меня свежее
он показывает что оно started/unhealthy/healthy
но на запуск зависимого контейнера это не влияет
George
11.03.2019
14:18:01
у меня все работает ) а ты хелсчеки проставил?
Andor
11.03.2019
14:18:13
ну оно же откуда-то статус берёт
конечно проставил
George
11.03.2019
14:18:23
покажи докерфайлы и докер компоузы
Andor
11.03.2019
14:18:58
composer:
<<: *php-cli
working_dir: /var/www/nexus/lib
healthcheck:
test: test -f /tmp/php/composer.done
interval: 1s
timeout: 1s
entrypoint:
- bash
- -e
- -c
- >
rm -f /tmp/php/composer.done;
composer global require hirak/prestissimo;
case $$0 in
install)
composer $$0 --no-interaction $$@;
;;
*)
composer $$0 $$@
;;
esac;
touch /tmp/php/composer.done && sleep 20;
command:
- installну вот например
а они есть