Bo0oM
ЧЯДНТ?
ilya
докерфайл в студию
Bo0oM
докерфайл в студию
https://github.com/Bo0oM/ParamPamPam/blob/master/Dockerfile
Bo0oM
Bo0oM
вилларибо и белобадже
stanopolous
https://github.com/Bo0oM/ParamPamPam/blob/master/Dockerfile
ну у тебя там urllib3, добавь в логгер их и посмотри что конкретно много времени занимает
smile
COPY . ./ в докер файле?
stanopolous
https://github.com/Bo0oM/ParamPamPam/blob/master/Dockerfile
наугад сложно что-то понять, на ум только днс приходит, зависит от того как стартуешь
Vladimir
COPY . ./ в докер файле?
Точно. Спасибо большое!
ilya
https://github.com/Bo0oM/ParamPamPam/blob/master/Dockerfile
попробуй не от alpine наследовать имидж
ilya
там компилится левенштейн, мб из-за muslc медленнее
ilya
вообще докерфайл стремноват
Max
привет! как можно дождатся в скрипте запуск докер контейнера? docker run -d -p 27017:27017 -v ~/data:/data/db --name=gokada-mongo-test mongo && npx mocha --exit --timeout 5000 -r dotenv/config ./tests/controllers/ dotenv_config_path=.testing.env && docker rm -f gokada-mongo-test ?
Max
может флаг какой-то есть?
Max
пока ставлю sleep 10s перед запуском тестов, но может есть более адекватное решение
Anonymous
Anonymous
smile
Ребзи, можно ли примонтировать папку хоста к контейнеру в котором уже есть эта папка но с другим контентом? На данный момент папка пустая, даже без исходного контента
RusaXXX
как можно помотреть содержимое контейнера без запуска и вообще это реально?
Дима
docker export
AlexK
Привет, смотрю легаси скрипт запуска контейнеров , там почему-то стопается и стартует docker-compose после изменения файла внутри контейнера. Вопрос, можно ли это как-то оптимизировать, т.е. не переранивать docker-compose заново после изменения чего-либо? `docker exec -i container_name <<EOF sed -i "s/old/$IPADDRESS/g" script.js EOF docker-compose -f 1.yml stop docker-compose -f 1.yml up -d --no-recreate` Не спрашивайте. что делает script.js, но он как-то должен устанаваливать соединение с другим контейнером
Vladimir
Ребят, а как выполнить cmd так, чтобы контейнер не завершился после выполнения sh скрипта?
Дима
exec
AlexK
docker exec -ti container_name bash
AlexK
мда-мда)
идеи? )
Дима
Не городить подобные скрипты)
AlexK
Не городить подобные скрипты)
я так понимаю, в скрипте изменения sed'a не подхватываются контейнером автоматом, из-за этого рестартуют все
Дима
Я не знаю что там внутри но выглядит так, словно не осилили билд нормальный с пробросом параметров нормальым
AlexK
для чего там замена адреса?
это инстал. скрипт, юзер вводит реальный адрес хоста, этот адрес прописывается в файлик и используется сервисом внутри контейнера. Понятно, что нужно копать внутри контейнера, но я вот пытаюсь понять, зачем такой костыль с рестартом контейнера 2мя компоусами нужен. Спросил, т.к. не знаю в каких случаях рестарт помогает. Буду тестить дальше...)
Дима
есть переменные окружения
RusaXXX
подскажите когда я прописываю в volumes - ./:/app в docker-compose файле у меня не создается директоия app внутри контейнера. С чем это может быть связано
AlexK
есть переменные окружения
спс, гляну build-args, переменные используются, забыл сказать, это уже готовые имиджи на стороне кастомера (свои особенности), во время запуска инстал. скрипта стартуют
Дима
сделай скрипт внутри контейнера
Дима
и запускай его
Дима
типа
Дима
docker exec containername setup
AlexK
сделай скрипт внутри контейнера
инстал. скрипт запускает несколько контейнеров, ну скорее что-то внутри контейнера и нужно будет делать, спс
Дима
вообще, внутренности контейнера доступны всегда и не прямо секурны
Дима
так что поставляйте с докерфайлами спокойно
Дима
и пусть клиент билдит - всё настраивается под него, а затем просто запускает
RusaXXX
подскажите когда я прописываю в volumes - ./:/app в docker-compose файле у меня не создается директоия app внутри контейнера. С чем это может быть связано
AlexK
и пусть клиент билдит - всё настраивается под него, а затем просто запускает
билдить клиенту будет проблемно, там nodejs используется, куча ньюансов с версиями и доп. зависимостями во время билда, пока используется вариант передачи имеджей тарником
RusaXXX
build
RusaXXX
docker-compose build
Дима
вот ответ на твой вопрос)
RusaXXX
не понял
Дима
волюмы доступны во время работы контейнера но не во время билда.
Рустам
RusaXXX
но у меня в соседнем проекте тоже самое работает. ТО естьу меня качается образ. Во время билда я вывожу инфу о директориях. Там нет нужной папки. Прописываю volumes, запускаю снова build и у меня создается директория
Konstantin
Дима
такого не может быть) ты что-то упускаешь
AlexK
по моему вопросу, вот более наглядный пример, внутри одного из контейнеров с nginx во время инстала добавляется в ./etc/nginx/sites-available/default необходимый адрес и снова рестартуется docker-compose stop/up -d —no-recreate;
Antonio
пытаюсь запустить маленький проект под докером. Один из сервисов - мускул. Конфиг для базы хочу взять из файла .env в папке с исходниками. В docker-compose есть такой конфиг: version: '3' volumes: dbdata: services: db: image: mysql:8.0.13 command: --default-authentication-plugin=mysql_native_password restart: always env_file: - ./src/.env environment: - MYSQL_DATABASE=${DB_DATABASE} - MYSQL_USER=${DB_USERNAME} - MYSQL_PASSWORD=${DB_PASSWORD} - MYSQL_ROOT_PASSWORD='supersecret' ports: - "3306:3306" volumes: - dbdata:/var/lib/mysql вывод енвайромента: cat ./src/.env| grep DB_ DB_HOST=db DB_PORT=3306 DB_DATABASE=db_site DB_USERNAME=user DB_PASSWORD=secret но при выполнении _docker-compose build db_ получаю WARNING: The DB_DATABASE variable is not set. Defaulting to a blank string. WARNING: The DB_USERNAME variable is not set. Defaulting to a blank string. WARNING: The DB_PASSWORD variable is not set. Defaulting to a blank string. db uses an image, skipping Почему не видятся переменные?
Damir
env_file: - ./src/.env автоматом подключает все переменные из твоего файла ./src/.env (нет необходимости прописывать их в разделе environment) WARNING: The DB_DATABASE variable is not set. Defaulting to a blank string - не находит твой файл .env в корневой папке, где находится docker-compose.yml, поэтому и не может найти ${DB_DATABASE} и тп. Вроде как-то так, могу ошибаться
Antonio
так в том и дело, что он должен взять не ./.env , а ./src/.env
Konstantin
пытаюсь запустить маленький проект под докером. Один из сервисов - мускул. Конфиг для базы хочу взять из файла .env в папке с исходниками. В docker-compose есть такой конфиг: version: '3' volumes: dbdata: services: db: image: mysql:8.0.13 command: --default-authentication-plugin=mysql_native_password restart: always env_file: - ./src/.env environment: - MYSQL_DATABASE=${DB_DATABASE} - MYSQL_USER=${DB_USERNAME} - MYSQL_PASSWORD=${DB_PASSWORD} - MYSQL_ROOT_PASSWORD='supersecret' ports: - "3306:3306" volumes: - dbdata:/var/lib/mysql вывод енвайромента: cat ./src/.env| grep DB_ DB_HOST=db DB_PORT=3306 DB_DATABASE=db_site DB_USERNAME=user DB_PASSWORD=secret но при выполнении _docker-compose build db_ получаю WARNING: The DB_DATABASE variable is not set. Defaulting to a blank string. WARNING: The DB_USERNAME variable is not set. Defaulting to a blank string. WARNING: The DB_PASSWORD variable is not set. Defaulting to a blank string. db uses an image, skipping Почему не видятся переменные?
он не видит только на этапе формирования конфига, var substitution для конфига работает только из .env . Но в контейнер ENV передаются, так как ты подключил файл. И да, env файл или env переменные в конфиге, дублировать не нужно
Antonio
Но тогда у меня переменные в конфиге должны называться также, как они используются в контейнере?
Damir
yes
Igor
привет, подскажите с логами, драйверами и гелфом
Igor
как правильно конфигурить, чтобы в грейлоге можно было нормально фильтровать?
Igor
Igor
ну ок, добавил лейбл - в грейлоге ничего нет с таким лейблом
Igor
Igor
{ "log-driver": "gelf", "log-opts": { "gelf-address": "udp://graylog:12201", "labels": "igorrr" } } }
alexander
а поднимал ли кто-нибудь acme-dns (https://github.com/joohoi/acme-dns)? запустил его контейнер с --publish 53:53, но такое чувство, что из-за другого контейнера запущенного с --network host 53 порт в итоге закрыт на хостовой машине. может ли в этом быть проблема или не туда воюю?
Artem
Всем привет. У меня есть git-репозиторий со скриптом на питоне, и докерфайлом, который этот скрипт запускает и генерирует файлы. Я хочу сделать несколько докерфайлов, которые будут запускать скрипт по-разному. Как разложить их в репозитории?
Artem
То есть допустимо ли складывать несколько докерфайлов в одну директорию?