Dan
А, кажется понял
Dan
Вчитался в вопрос
Aleksey
я ее конечно делаю но нет. я хочу up --rm
Aleksey
ci иногда в какихто странных кейсах не хочет прибиратся. хотя секция after должна выполнятся всегда. но она кажется нет
Dan
А, ну так docker-compose run --rm
Dan
https://docs.docker.com/compose/reference/run/
Aleksey
хм
Aleksey
возможно run вариант
Aleksey
спасибо да
Dan
Но там есть нюанс
Dan
run имеет ограничения
Aleksey
мне не нужны порты
Aleksey
если ты об этом
Aleksey
там скрипты миграции базы
Dan
А, всё, тогда точно run
Dan
Это как раз про это, да
Aleksey
блин он не умеет ждать базу
Dan
If you start a service configured with links, the run command first checks to see if the linked service is running and starts the service if it is stopped. Once all the linked services are running, the run executes the command you passed it.
Aleksey
ну ладно. это вариант обложусь nc
Aleksey
спасибо!
Dan
Там внизу доки примеры как раз про миграции и апдейты db, так что да, скорее всего это как раз то, что нужно
Aleksey
оно не умеет в расширенные healtchek депсы
Aleksey
такое вот идёт лесом depends_on: postgres: condition: service_healthy mongo: condition: service_started clickhouse: condition: service_started
Dan
А, это да, run игнорит почти всё, его надо с ключами запускать
Dan
И он не умеет depends вроде
Aleksey
в целом они их умеет но не умеет в хц
Dan
А что если и фиг с ним? Главное чтоб база запущена была, и там был хц, а миграции в слепую?
Dan
Или надо прям контролировать миграцию во время?
Aleksey
нет. надо просто дождаться что бы в постгресе создалась база
Aleksey
это 4-5 секунд
Aleksey
но она не успевает
Dan
#! /bin/bash if [[ $1 == "up" ]]; then # runs "docker-compose up" and then "docker-compose down" docker-compose up "${@:2}"; docker-compose down elif [[ $1 == "run" ]]; then # "d-c run" automatically adds the --rm flag docker-compose run --rm "${@:2}" else # any other d-c command runs docker-compose normally docker-compose "${@:1}" fi
Dan
Как насчёт так?
Aleksey
ох ох. Ден забей. я лучше nc забхну перед ожиданием базы
Dan
Но ведь логишно же, если мы только миграцию делаем, можно вообще только её как сервис стартовать так: docker-compose up migrationService; docker-compose down или даже --rm migrationService после
Dan
Я ленивый, я б скрипт написал
manefesto
Сделай проще, регулярно запускай docker prune, он приберется
Dan
#devops #полезное #образование #обучение Профессиональный курс “DevOps практики и инструменты” от проекта OTUS совместно с компанией инженеров из Express 42 готовит мультиинструментальных IT специалистов. 👉🏻Изучайте программу, проходите вступительный тест и присоединяйтесь к группе: https://otus.pw/XwjW/ Для кого подойдет курс? ⚡️Для разработчиков, системных архитекторов и администраторов, для тестировщиков и QA инженеров. ⁉️В представленной на курсе карте практик, без преувеличения, каждый специалист найдет для себя область применения и пути развития в профессии - программа обучения построена таким образом, что попасть в колею предыдущего опыта не представляется возможным! Убедитесь сами: https://otus.pw/XwjW/
Dan
@outsiderzEnik написал: уважаемые гуру подскажите https://sprut.ai/client/blog/449 как в докере это сделать, только сильно не пинайте если это банально я новичек в этом деле
Anonymous
cd /srv/homeassistant/lib/python3.5/site-packages/homeassistant/components/homekit_controller/ нужно отредактировать фаил который лжит в этой папке
Anonymous
поделитесь пожалуйста конфигом Grafana docker compose 3.3
manefesto
На хабе должен быть
manefesto
https://hub.docker.com/r/grafana/grafana/
manefesto
Что не так ?
manefesto
https://grafana.com/docs/installation/docker/
Anonymous
https://grafana.com/docs/installation/docker/
там вторая версия а у меня весь копоз на 3.3
Igorь
Опаньки. Докер на армах поддержали. Скоро приложения на телефон не из маркета будем ставить, а композами;)
Igorь
https://techcrunch.com/2019/04/24/docker-partners-with-arm/
manefesto
использую gitlab-ci, создаю контейнер с ansible и при деплое получаю fatal: [XXXX]: UNREACHABLE! => { "changed": false, "msg": "argument must be an int, or have a fileno() method.", "unreachable": true }
manefesto
локальное все норм
manefesto
кто сталкивался ?
Alexander
А локально от пользователя gitlab-runner все ок?
manefesto
я на gitlab.com делаю
.
Привет
.
у меня вопросы по синтаксису в docker-compose.yml
.
services: django: &django build: context: . dockerfile: ./compose/local/django/Dockerfile image: my_awesome_project_local_django depends_on: - postgres - mailhog volumes: - .:/app env_file: - ./.envs/.local/.django - ./.envs/.local/.postgres ports: - "8000:8000" command: /start
.
django: &django эта часть
.
и еще тут flower: <<: *django image: my_awesome_project_local_flower ports: - "5555:5555" command: /start-flower
.
<<: *django втф?
manefesto
Убрать. Какой-то артефакт
.
Убрать. Какой-то артефакт
не нужные строчки?
manefesto
Думаю нет
Womchik
https://medium.com/@kinghuang/docker-compose-anchors-aliases-extensions-a1e4105d70bd
Womchik
нужные это строчки
Roman
я правильно понимаю что если у меня сервер в контейнере A крутится под localhost:9080 то сервис из контейнера B к нему не может по этому адресу подключиться?
Roman
зависит от настроек, но по умолчанию да, не может
хмм, а как мне это обойти в данном случае?
AstraSerg
не назвал бы это "обойти" :) Если вам нужно связать 2 сервиса вы долджны использовать общую для них сеть
AstraSerg
варианты похуже: запустить контейнер с net=host
AstraSerg
ещё хуже вывесить на внешний ip-шник
Maxim
я правильно понимаю что если у меня сервер в контейнере A крутится под localhost:9080 то сервис из контейнера B к нему не может по этому адресу подключиться?
Создайте внешнюю сеть и добавьте в неё оба контейнера, обращаться будут по имени контейнера и порту
Anonymous
подскажите что не так с композом ? не создает базу данных((( influxdb: container_name: influx image: influxdb:latest restart: always environment: - INFLUXDB_DB="samle" - INFLUXDB_ADMIN_ENABLED="true" - INFLUXDB_ADMIN_USER="admin" - INFLUXDB_ADMIN_PASSWORD="admin" - INFLUXDB_USER="user" - INFLUXDB_USER_PASSWORD="user" ports: - 8086:8086 - 8083:8083
manefesto
волюм прокинул ?
Maxim
подскажите что не так с композом ? не создает базу данных((( influxdb: container_name: influx image: influxdb:latest restart: always environment: - INFLUXDB_DB="samle" - INFLUXDB_ADMIN_ENABLED="true" - INFLUXDB_ADMIN_USER="admin" - INFLUXDB_ADMIN_PASSWORD="admin" - INFLUXDB_USER="user" - INFLUXDB_USER_PASSWORD="user" ports: - 8086:8086 - 8083:8083
Например в сервис можно добавить volumes volumes: - "influxdb:/var/lib/influxdb" в самый конец добавьте volumes: influxdb: external: true в итоге у вас должно получиться примерно вот так influxdb: container_name: influx image: influxdb:latest restart: always environment: - INFLUXDB_DB="samle" - INFLUXDB_ADMIN_ENABLED="true" - INFLUXDB_ADMIN_USER="admin" - INFLUXDB_ADMIN_PASSWORD="admin" - INFLUXDB_USER="user" - INFLUXDB_USER_PASSWORD="user" volumes: - "influxdb:/var/lib/influxdb" ports: - 8086:8086 - 8083:8083 volumes: influxdb: external: true перед запуском создайте внешний volume docker volume create influxdb и запускайте docker-compose up -d Взято вот отсюда https://hub.docker.com/_/influxdb
Gleb
там вторая версия а у меня весь копоз на 3.3
а зачем тебе 3.3? если у тебя сворм то бери композ для сворма и юзай свежую версию, если у тебя нет сворма почему вообще 3? Чем выше мажорная версия тем лучше?)