Sergey
такое возможно?
с Kubernetes возможно все:)
Sergey
у вас будет сеть контейнеров связанная по API
Sergey
и реплики контейнеров
Ruslan
мне бы в докере разобраться)
Sergey
просто по сути вам нужно будет на несколько хостов как то докером раскидывать
Sergey
лучше сворм\кубер
Ruslan
лучше сворм\кубер
у меня swarm сейчас настроен
Sergey
https://docs.docker.com/network/overlay-standalone.swarm/
Sergey
оно?
Sergey
я не совсем понял вопрос, дело в сети или в чем
Ruslan
я не совсем понял вопрос, дело в сети или в чем
скриншоты наверное помогут. Секунду
Ruslan
я погасил машину, воркеры переехали на первый инстанс
Sergey
ииии?
Ruslan
я запустил машину, воркеры остались на первой, вторая машина простаивает
Sergey
что надо то в итоге? вы что куда раскидывать то хотите
Sergey
докер как запускается
Ruslan
что надо то в итоге? вы что куда раскидывать то хотите
я хочу чтобы сварм раскидал воркеры между машинами
Sergey
https://www.upcloud.com/support/docker-swarm-orchestration/
Sergey
оно?
Sergey
Ruslan
@vizdrag единственный способ который я вижу - это убить воркеры и они сами переедут на второй инстанс
Grigorii
Кто может помочь с Docker Plugin в Jenkinsе? В Configure System -> cloud -> docker указал хост докера, на котором должен стартовать контейнеры, образ и лейбл. В jenkinsfile указал ... agent { docker { image 'repo/php-jenkins-slave' label 'php-agent' } ... но конетйнер упорно пытается стартануть на мастере и фейлится, потому что там докера нет
Iskander
label 'php-agent'
Iskander
этот лейбл есть на агенте?
Iskander
рекомендуется отключить сборку на мастере, это рано или поздно приведет к поверждению jenkins_home
Iskander
https://t.me/jenkins_ru
Grigorii
этот лейбл есть на агенте?
я так понял, что это просто лейбл для докер хоста в самом дженкинсе. потому что мы там можем настроить больше одного докер хоста и уже ссылаться на конкретный хост с помощью этого лейбла из дженкинсфайла
Iskander
нет, это лейбл для агента
Grigorii
нет, это лейбл для агента
wow, а где на агенте указать лейбл нужно? просто у меня как-то работало раньше, потом я jdk переустановил на агенте и все, больше не работает
Iskander
в настройках агента, точный путь не помню, но это в основных настройках должно быть
Iskander
manage nodes -> node
Grigorii
а, погоди, у меня динамические агенты должны быть, существуют только во время билда
Grigorii
в образе с моим приложением стоит jdk и slave.jar, контейнер должен подниматься и подключаться к мастеру как слейв
Iskander
нужно настройки плагина смотреть
Iskander
как бутстрапятся твои агенты
Iskander
и т.д.
ikasymov
Кто поднимал nodejs + express + sequelize на докере?
ikasymov
у меня пару вопросов
Aleksei
Так задавай
ikasymov
Так задавай
там sequelize создает config папку с config.json как правильнее будет эти конфиги настроить на докере?
ikasymov
без этой папки sequelize не запускает миграции
Aleksei
Так а какие с ними проблемы? Смапь на volume если надо
ikasymov
ну придется ручками писать хост имя базы пароль юзера
ikasymov
и при гите тоже проблемы будут, свои данные с этого файла чистить и пушать
Yar
И в чем именно проблема
ikasymov
А где sequelize создает, этож орм
смотри, orm создает config папку, и что б запустить миграции надо там свои данные прописывать
Алексей
services: app: image: ${image} migrate: image: ${image} command: ./node_modules/bin/sequelize db:migrate
ikasymov
данные надо что б он брал с .env
Pavel
Привет, ребят. Может кто знает, у letsencrypt-nginx-proxy-companion есть возможность перенаправить все запросы с одного поддомена на другой хост?
Алексей
так сконфигуряй чтоб sequelize брал данные из env
Yar
Запускай через coreenv
Yar
Все файлы внутрь контейнера
ikasymov
так сконфигуряй чтоб sequelize брал данные из env
ты понял проблему? там sequelize-cli ищет папу config.json
Алексей
ты понял проблему? там sequelize-cli ищет папу config.json
ну так я тебе говорю, запустить приложение твое только подменить запуск вместо приложухи запустить миграцию
Алексей
у тебя будет все тоже самое что и в приложении сконфигуренное
Алексей
ты понял решение?
Yar
не пойму сложностей
ikasymov
смотри
Yar
по понятнее обьясни
ты в контейнер кидай конфиг с заполнеными значениями, а комить только дефолтные
Алексей
по понятнее обьясни
version: '3' services: app: image: registry.gitlab.com/______:${TAG} env_file: - .env restart: always networks: - local - dev migration: image: registry.gitlab.com/________:${TAG} env_file: - .env command: "bash -c 'yarn sequelize db:migrate && yarn sequelize db:seed:all'" networks: - local - dev
Алексей
вот мой конфиг, который накатывает миграции при каждом деплое
Алексей
app и migration использует один и тот же image только раззные команды
ikasymov
есть index.js там sequelize берет все данные с .env там проблем нет, но сам sequelize-cli или ./node_modules/bin/sequelize db:migrate требует config.json который создается командой sequelize init и туда придется мои данные ручками писать
Алексей
в одном случае запускается приложение во втором миграции
ikasymov
{ "development": { "username": "test", "password": "test", "database": "test", "host": "172.18.0.2", "dialect": "mysql" }, "test": { "username": "root", "password": null, "database": "database_test", "host": "127.0.0.1", "dialect": "mysql" }, "production": { "username": "root", "password": null, "database": "database_production", "host": "127.0.0.1", "dialect": "mysql" } }
ikasymov
я про это говорью
ikasymov
все забыли что ли?
ikasymov
Алексей
.sequelizerc const path = require('path'); module.exports = { config: path.resolve('config', 'index.js') }; config/index.js const dbConf = { host: process.env.DB_HOST, username: process.env.DB_USERNAME, password: process.env.DB_PASSWORD, database: process.env.DB_NAME, dialect: 'postgres', logging: true }; module.exports = { development: dbConf, test: dbConf, production: Object.assign({}, {logging: false}, dbConf) };
Yar
все забыли что ли?
сделай инит на компе, в контейнер уже кидай приложуху с генерированным config.
Алексей
все забыли что ли?
забыл как пользоваться process.env и читать доку sequelize?