Vlad
@andrey_furman если что, System: Win10x64
Yavir
https://gist.github.com/vladknp/22d4204f52c2c7b3fb8c8727da2a8736 или прям сюда вставить?
проверил доку по пм2 - вы всё верно изначально прописали
Yavir
покажите код, где вы утверждаете, что переменная окружения не подтягивается
Yavir
имено само место в приложении
Yavir
или, можно еще так: command: "pm2-runtime start ecosystem.config.js --env production" command: "pm2 start ecosystem.config.js --env production"
Yavir
Хочу последовательно сделать npm run build && npm run start черезе директиву CMD [“npm”, “build”, “start”
Yavir
]
Yavir
не особо получилось
Yavir
как реализовать последовательное выполнение команд в докерафайле?
Ильдар
CMD date && hostname
Vlad
const path = require('path'); console.log('------- process.env.NODE_ENV', process.env) module.exports = { apps: [{ name: 'MMM', script: 'src/index.js', instances: 1, autorestart: true, watch: process.env.NODE_ENV !== 'production' ? path.resolve(__dirname, 'src') : false, ignore_watch : ["node_modules", ".git"], watch_options: { followSymlinks: false, usePolling: true, }, max_memory_restart: '256M', testo: { "NODE_ENV": 'development', }, pusto : { "NODE_ENV": 'production', } }] } command: "pm2 start ecosystem.config.js --env pusto" вывод сонсоли ------- process.env.NODE_ENV { PATH: app | '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', app | HOSTNAME: '2677a2412962', app | NODE_VERSION: '11.9.0', app | YARN_VERSION: '1.13.0', app | HOME: '/root', app | PM2_USAGE: 'CLI', app | PM2_INTERACTOR_PROCESSING: 'true' }
Mykyta
Возможно было у кого-то и знаете в чем трабла? Регуярно бильдятся имаги приложухи и один имедж сломался, верхний слой не скачивается, отдает Retrying in xx seconds, после чего: ERROR: for MY IMAGE unexpected EOF unexpected EOF Что примечательно на МакОС пулиться номально, на убутну вот такая трабла
Ильдар
можно CMD [“npm”, “run”, “build"] CMD [“npm”, “start”]
Просто. Просто использовать нужный синтаксис CMD https://docs.docker.com/engine/reference/builder/#cmd
Yavir
благодарю, ребята
Vlad
http://joxi.ru/krDGM1lHER7XdA
не, эта беда как-то по другому работает. Не совсем понятно как использовать эту коммандую После запуска контейнера зашел внутрь docker exec -it app bash внутри комманду pm2 restart ecosystem.config.js --env production --update-env но увы ))) Без желаемого результата ))
Mykyta
может ubuntu за проксей?
трабла только с одной имагой и одним лейером, нет не за проксей
Vlad
если не убивать старый имедж контейнер создается на базе старого имеджа
Vlad
я знаю это)
одна из причин, почему начал использовать docker-composer
George
одна из причин, почему начал использовать docker-composer
нет такого программного продукта как докер композер
George
docker-compose
Anvar
кто нибудь юзал laradock? зачем там dind при минимальном стеке nginx + php-fpm + mysql + source (app)?
Jürgen
кто нибудь юзал laradock? зачем там dind при минимальном стеке nginx + php-fpm + mysql + source (app)?
Они пытаются делать сквозной единый ворспейс +для дженкинс
Anvar
Ясно. Спасибо.
Pavel
postgres: image: postgres:9.5 ports: - "5432" volumes_from: - data data: image: postgres:9.5 Ребята не понимаю, что тут происходит? почему два Postgres устанавливают, еще другой ссылается на второй
George
ну, может они наполняет данными другой?
George
типа бутстрапа?
Pavel
да хз
George
ну, по данному фрагменту ничего сказать нельзя
Anonymous
postgres: image: postgres:9.5 ports: - "5432" volumes_from: - data data: image: postgres:9.5 Ребята не понимаю, что тут происходит? почему два Postgres устанавливают, еще другой ссылается на второй
а откуда этот кусок docker-compose ? data -это сайдкик по идее должен быть , но почему он собран из образа постгреса у меня тоже вопрос :)
George
Вообще сайдкик делается из самого постгресса. Нафига второй контейнер.... Я могу предположить, но это какой-то не бест пректис прям
Lamobot
postgres: image: postgres:9.5 ports: - "5432" volumes_from: - data data: image: postgres:9.5 Ребята не понимаю, что тут происходит? почему два Postgres устанавливают, еще другой ссылается на второй
Это старый вариант использования volume'ов из другого контейнера. Данные лежат в контейнере data, а само приложение базы в postgres. При этом докер делает маунт всех volume из data в postgres
George
Типа старый/не старый, а то, что пример - говно
Pavel
Это старый вариант использования volume'ов из другого контейнера. Данные лежат в контейнере data, а само приложение базы в postgres. При этом докер делает маунт всех volume из data в postgres
Походу так и есть А как правильно сейчас делают? Если правильно понял На уровне сервера надо создавать Волюмы, и указать их в контейнерах. Не простые папки а которые создаются командой docker volume create
Pavel
Создал образ Ruby:2.6 и он весит 1Гигабайт Это нормально?
Pavel
Мне таких микро сервисов нужно несколько Если кжадый контейнер будет весить 1Гига то ......
Andor
то?
Andor
а зачем руками создавать образ рубей который есть готовый?
Andor
карочи, у меня проблема
Lamobot
Мне таких микро сервисов нужно несколько Если кжадый контейнер будет весить 1Гига то ......
Контейнеры основанные на одном образе будут занимать только место, которое занимают измененные файлы по отношению к базовому образу. layer fs
Andor
есть тимсити-агент, который запущен в докере
Andor
в него внутрь прокинуты директории с хоста, в том числе рабочая директория, где он выполняет команды
Andor
туда же прокинут сокет докера тимсити агент делает гит клон и запускает docker-compose run stuff
Andor
и оно не пашет, говорит что файлы не может найти
Andor
сделал там ls и файлов внутри контейнера который запускает тимситевый композ и правда нету
Pavel
а зачем руками создавать образ рубей который есть готовый?
нее не создавал свою вручную конечно Мне просто нужно создавать API на основе RoR (Ruby on Rails) и их будет несколько, и как я планирую должны дружно жить в docker composere
Andor
api на основе ror?
Andor
это прям сильно
Pavel
пчему
Andor
надеюсь вы это называете микросервисами
Pavel
каждый сервис будет со своим базой данных
Pavel
нуда типа да микросеврисы
Andor
микросервисы на рельсах
Andor
ништяк!
Pavel
я вот создал парочку, Image я так понимаю это слепки, и весят по 1 Гига
Pavel
микросервисы на рельсах
Ну на питоне можно, какая разница
Andor
на питоне, а не на джанге же
Pavel
но в рельцах я привык, и миграции БД с коробки и т.п.
Pavel
ORM
Andor
ну да, без рельс не бывает ни миграций ни орм
Pavel
ну да, без рельс не бывает ни миграций ни орм
а что тебе не нравиться в рельцах :) там есть специальное API mode , все лишнее удаляется
Pavel
я клепать всякие костыли безопасности не надо
Andor
мне не нравится приставка "микро" для сервисов на рельсах
Pavel
ну блин Определение Микросервисы никто в мире нормально дать не может, а ты тут в рельцах прикопался
Pavel
это же такое общирное понятие
Pavel
Каждый Гуру толкует по своему
Andor
у тебя не микросервисы, а просто сервисы