Romuald
та нет, NODE_ENV прописана в .bashrc в пользаке и в руте тоже
https://forums.docker.com/t/docker-compose-not-seeing-environment-variables-on-the-host/11837/8
Romuald
Вроде она
rmshell
Получается выстрел в ногу чтоли?
из env_file он не по порядку читает указаные файлы и объявляет полученые значения?
Roman
какие-то сложные конструкции, если я все правильно понял, то достаточно положить в .env NODE_ENV с нужным окружением, а не тащить с локального энва какими-то костылями
Flexo
Народ, а вот еще вопрос. У меня в проекте есть hot reload, т.е. когда я что-то меняю в исходниках проект автоматом пересобирается. Но вот я в dokerfile пишу: RUN mkdir -p /app WORKDIR /app COPY . . На сколько я понял это весь мой проект копируется внутрь контейнера при сборке контейнера. Т.е. когда я буду менять код в файлах проекта, то никакой автоматической пересборки не будет? Т.к. файлы внутри контейнера не поменялись, а мои изменения будут видны только после пересборки контейнера. Можно ли как-то настроить синхронизацию файлов проекта снаружи и внутри контейнера?
CHIP
Спасибо) погуглю
https://docs.docker.com/develop/develop-images/dockerfile_best-practices/
CHIP
не нужно, в оф доке все есть)
CHIP
годнота же
Roman Karas`
какие-то сложные конструкции, если я все правильно понял, то достаточно положить в .env NODE_ENV с нужным окружением, а не тащить с локального энва какими-то костылями
ну идея такая, и вроде как правильная, на хостах прописана в окружениях одна переменная NODE_ENV со значением dev или prod. А в проекте лежат два файлика .env.dev и .env.prod. В зависимости от переменной используем требуемый файл
Roman
ну идея такая, и вроде как правильная, на хостах прописана в окружениях одна переменная NODE_ENV со значением dev или prod. А в проекте лежат два файлика .env.dev и .env.prod. В зависимости от переменной используем требуемый файл
Выше писали, что окружение внутри конейнера никак не сопоставляется с окружением хоста, там оно свое, на то он и контейнер, все необходимое вы описываете в отдельных конфигах/композах/параметрах запуска. В вашем случае достаточно добавить в .env.dev NODE_ENV=dev, а в .env.prod NODE_ENV=production
rmshell
COPY это наверное уже под прод лучше
Flexo
VOLUME
Спасибо!
Roman
Тёзка, так оно и есть, и эти переменные там лежат несомненно, но композеру нужно объяснить из какого файла читать
сорри, не так понял, тогда вот: https://unix.stackexchange.com/questions/3507/difference-between-shell-variables-which-are-exported-and-those-which-are-not-in суть - не все переменные передаются дочерним процессам
Roman Karas`
в случае если не на одном уровне лижит с .env без вяких суффиксов
Да так и есть, на одном уровне, на самом верхнем
Kirill
Всем привет! Подскажите пжлст, логинюсь в docker login -u username registry.gitlab.com и пцытаюсь собрать контейнер, где использую приватный образ из регистри, получаю ошибку failed to build: Get https://registry.gitlab.com/v2/... denied: access forbidden
Kirill
Как быть)
Kirill
Разлогинивался и логинился обратно - не помогло
Kirill
пытаюсь собрать локально docker-compose
Kirill
в ci соответственно будет всё ок, поскольку там по CI ключу логинюсь. Для локально логина так же использую access token, но он что-то не помогает
Ins
Приношу извинения за оффтоп. Скинье пожалуйста ссылку, где могут с отправкой почты в Linux помочь? Отправляю через mail -s, получаю сообщение Client does not have permissions to send as this sender (in reply to end of DATA command))
Kirill
набери просто в консоли docker login
но тогда если я ввожу аккаунт от гитлаба, то он не пускает
Kirill
он будет просить именно docker hub аккаунт
Roman Karas`
не помогло)
странно, мне помогало, просто залогинился на докерхабе вот этим способом и начали выполняться коммиты и пуши на докерхаб образов
Kirill
да не
Kirill
я в Dockerfile использую FROM из регистри гитлаба
Kirill
там приватный регистри просто
Roman
я в Dockerfile использую FROM из регистри гитлаба
а у тебя спулить этот базовый образ локально получается?
Kirill
да
Kirill
локально docker pull пуллит норм
Kirill
может в docker-compose где-то auth не подтягивается
DjinN
подскажите, я собираю контейнер в нем nginx, я хочу ему конфиг закинуть, но в конфиге есть переменные, как заставить докер подставить переменные в конфиг?
Roman
может в docker-compose где-то auth не подтягивается
попробуй компоуз обновить, они вроде фиксили эту багу
Kirill
как один из вариантов)
Kirill
а кто-нибудь использует docker swarm в своих проектах?
Kirill
ну точнее, думаю кто-то точно да использует)) как настраивали деплой из гитлаба?
Marshall
Добрый день. Можете подсказать принцип работы scale? У Я поднял у себя проксу на nginx и два сервиса через scale 5000-50001 порту. Я хочу внести изменение в свое приложение и отключить одну машинку, а другой пусть работает, а потом после прогрева подключить и отрубить вторую. Как через scake реализовать ztd?
Kirill
А сервер свой?
Я локально пытаюсь)
Kirill
Регистри нет, офф гитлаба
Romuald
Я локально пытаюсь)
У меня вчера была такая ошибка. Но у нас свой gitlab-ee развернут. Соответственно должен быть свой registry модуль подключен, чтобы все работало ок.
Romuald
Если я правильно все понял
Kirill
На самом деле бага странная ибо в одном проекте образ из того же репозитория пуллится норм в докере, а в другом проекте просит авторизацию
Kirill
Странно
Romuald
У меня такая строка docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN $CI_REGISTRY
DjinN
Как выше подсказывают - sed, тоже искал, кроме него ничего не нашел
я нашел универсальный вариант https://github.com/johanhaleby/bash-templater
Kirill
Kirill
я то локально баг ловлю)
Kirill
будучи авторизованным в регистри локально
Kirill
есть у кого сниппет или может полезная мануалка по деплою docker контейнеров из регистри в пайплайне на vps сервак?
Andrey
Не очень красивое но рабочее image: docker:stable-git services: - docker:stable-dind stages: - build - deploy variables: DOCKER_DRIVER: overlay2 .build: &build stage: build script: - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY" - docker build -t $IMAGE ${LATEST_IMAGE:+ -t $LATEST_IMAGE} . - docker push "$IMAGE" && if [[ ! -z "$LATEST_IMAGE" ]]; then docker push $LATEST_IMAGE; fi .deploy: &deploy stage: deploy before_script: - mkdir -p ~/.ssh && chmod 0700 ~/.ssh - if [[ -f /.dockerenv ]]; then echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config; fi - eval $(ssh-agent -s) - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null script: - docker -H ssh://$SSH_USER@$HOST login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY" - docker -H ssh://$SSH_USER@$HOST rm -f $CI_PROJECT_NAME || true - docker -H ssh://$SSH_USER@$HOST run -p "8080:80" --name $CI_PROJECT_NAME -d $IMAGE build: <<: *build variables: IMAGE: $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA LATEST_IMAGE: $CI_REGISTRY_IMAGE:latest deploy_develop: <<: *deploy variables: IMAGE: $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA CONTAINER_NAME: $CI_PROJECT_NAME only: - develop
rmshell
Кто-то на маке юзает dinghy?
Alexander
на хабре сегодня видел статью
Anton
Всем привет. Подскажите, а как в кубере запустить поду?
Anton
asorokinubuntu@asorokinubuntu-300E4Z-300E5Z-300E7Z:~/Desktop/scripts/scripts/postgres-deployment$ kubectl logs postgres-5d56c6cfdd-nhpnr Error from server (BadRequest): container "postgres" in pod "postgres-5d56c6cfdd-nhpnr" is waiting to start: trying and failing to pull image
rmshell
А всё уже, просто мне нужно изучать английский, а так трабл решился )
rmshell
А всё уже, просто мне нужно изучать английский, а так трабл решился )
Хотя в нет, не резельвится бд по имени сервиса находясь в одной сетке oO
cent
А тут есть админы @devops_ru ?
cent
чем помочь
Разбанить) Приложенько писал для хакатона, провтыкал что не был установлен параметр конкретного чатика, и он во всех чатиках нагадил. И вот на devops_ru совсем оперативно сработали и забанили)
cent
какой смысл разбанивать, если опять будет какашка
Откуда инфа, что опять будет какашка?