@docker_ru

Страница 875 из 1375
Ilya
14.11.2018
08:36:56
https://github.com/Bo0oM/ParamPamPam/blob/master/Dockerfile
попробуй не от alpine наследовать имидж

Ilya
14.11.2018
08:39:12
там компилится левенштейн, мб из-за muslc медленнее

вообще докерфайл стремноват

Google
Maxim
14.11.2018
09:12:30
привет! как можно дождатся в скрипте запуск докер контейнера? 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 ?

может флаг какой-то есть?

пока ставлю sleep 10s перед запуском тестов, но может есть более адекватное решение

steve
14.11.2018
09:17:10




Anton
14.11.2018
10:55:17
Ребзи, можно ли примонтировать папку хоста к контейнеру в котором уже есть эта папка но с другим контентом? На данный момент папка пустая, даже без исходного контента

Rustam
14.11.2018
11:14:41
как можно помотреть содержимое контейнера без запуска и вообще это реально?

Dmitry
14.11.2018
11:15:16
docker export

O
14.11.2018
11:26:51
Привет, смотрю легаси скрипт запуска контейнеров , там почему-то стопается и стартует 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, но он как-то должен устанаваливать соединение с другим контейнером

Google
Vladimir
14.11.2018
11:38:52
Ребят, а как выполнить cmd так, чтобы контейнер не завершился после выполнения sh скрипта?

Dmitry
14.11.2018
11:39:44
exec

O
14.11.2018
11:40:05
docker exec -ti container_name bash

мда-мда)
идеи? )

Dmitry
14.11.2018
11:41:39
Не городить подобные скрипты)

O
14.11.2018
11:43:25
Не городить подобные скрипты)
я так понимаю, в скрипте изменения sed'a не подхватываются контейнером автоматом, из-за этого рестартуют все

Dmitry
14.11.2018
11:59:49
Я не знаю что там внутри но выглядит так, словно не осилили билд нормальный с пробросом параметров нормальым

O
14.11.2018
12:10:30
для чего там замена адреса?
это инстал. скрипт, юзер вводит реальный адрес хоста, этот адрес прописывается в файлик и используется сервисом внутри контейнера. Понятно, что нужно копать внутри контейнера, но я вот пытаюсь понять, зачем такой костыль с рестартом контейнера 2мя компоусами нужен. Спросил, т.к. не знаю в каких случаях рестарт помогает. Буду тестить дальше...)

Rustam
14.11.2018
12:17:22
подскажите когда я прописываю в volumes - ./:/app в docker-compose файле у меня не создается директоия app внутри контейнера. С чем это может быть связано

O
14.11.2018
12:18:10
есть переменные окружения
спс, гляну build-args, переменные используются, забыл сказать, это уже готовые имиджи на стороне кастомера (свои особенности), во время запуска инстал. скрипта стартуют

Dmitry
14.11.2018
12:19:18
сделай скрипт внутри контейнера

и запускай его

типа

docker exec containername setup

O
14.11.2018
12:21:40
сделай скрипт внутри контейнера
инстал. скрипт запускает несколько контейнеров, ну скорее что-то внутри контейнера и нужно будет делать, спс

Google
Dmitry
14.11.2018
12:22:40
вообще, внутренности контейнера доступны всегда и не прямо секурны

так что поставляйте с докерфайлами спокойно

и пусть клиент билдит - всё настраивается под него, а затем просто запускает

Rustam
14.11.2018
12:24:05
подскажите когда я прописываю в volumes - ./:/app в docker-compose файле у меня не создается директоия app внутри контейнера. С чем это может быть связано

O
14.11.2018
12:24:34
и пусть клиент билдит - всё настраивается под него, а затем просто запускает
билдить клиенту будет проблемно, там nodejs используется, куча ньюансов с версиями и доп. зависимостями во время билда, пока используется вариант передачи имеджей тарником

Rustam
14.11.2018
12:26:32
build

docker-compose build

Dmitry
14.11.2018
12:27:13
вот ответ на твой вопрос)

Rustam
14.11.2018
12:27:31
не понял

Dmitry
14.11.2018
12:27:41
волюмы доступны во время работы контейнера но не во время билда.

Рустам
14.11.2018
12:29:27
Rustam
14.11.2018
12:29:44
но у меня в соседнем проекте тоже самое работает. ТО естьу меня качается образ. Во время билда я вывожу инфу о директориях. Там нет нужной папки. Прописываю volumes, запускаю снова build и у меня создается директория

Dmitry
14.11.2018
12:31:09
такого не может быть) ты что-то упускаешь

O
14.11.2018
12:47:25
по моему вопросу, вот более наглядный пример, внутри одного из контейнеров с nginx во время инстала добавляется в ./etc/nginx/sites-available/default необходимый адрес и снова рестартуется docker-compose stop/up -d —no-recreate;

Antonio
14.11.2018
12:58:33
пытаюсь запустить маленький проект под докером. Один из сервисов - мускул. Конфиг для базы хочу взять из файла .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
14.11.2018
13:19:56
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
14.11.2018
13:25:39
так в том и дело, что он должен взять не ./.env , а ./src/.env

Konstantin
14.11.2018
13:31:01
пытаюсь запустить маленький проект под докером. Один из сервисов - мускул. Конфиг для базы хочу взять из файла .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 переменные в конфиге, дублировать не нужно

Google
Antonio
14.11.2018
13:32:25
Но тогда у меня переменные в конфиге должны называться также, как они используются в контейнере?

Damir
14.11.2018
13:47:58
yes

Igor
14.11.2018
13:48:50
привет, подскажите с логами, драйверами и гелфом

как правильно конфигурить, чтобы в грейлоге можно было нормально фильтровать?



ну ок, добавил лейбл - в грейлоге ничего нет с таким лейблом



{ "log-driver": "gelf", "log-opts": { "gelf-address": "udp://graylog:12201", "labels": "igorrr" } } }

Alexander
14.11.2018
14:32:44
а поднимал ли кто-нибудь acme-dns (https://github.com/joohoi/acme-dns)? запустил его контейнер с --publish 53:53, но такое чувство, что из-за другого контейнера запущенного с --network host 53 порт в итоге закрыт на хостовой машине. может ли в этом быть проблема или не туда воюю?

Artem
14.11.2018
16:51:49
Всем привет. У меня есть git-репозиторий со скриптом на питоне, и докерфайлом, который этот скрипт запускает и генерирует файлы. Я хочу сделать несколько докерфайлов, которые будут запускать скрипт по-разному. Как разложить их в репозитории?

То есть допустимо ли складывать несколько докерфайлов в одну директорию?

Artem
14.11.2018
16:52:49
почему нет ?

Artem
14.11.2018
16:53:44
например есть docker build использовать, то указывается нужный как docker build -f path/to/Dockerfile

Artem
14.11.2018
16:57:13
Отлично. А инструкция FROM работает только для докерхаба? От соседнего докерфайла можно наследоваться?

Artem
14.11.2018
16:58:40
Спасибо

Ivan
14.11.2018
17:04:13


Google
xPushkin
14.11.2018
20:26:08
Друзья, подскажи пожалуйста как поставить лимит на логи контейнера

xPushkin
14.11.2018
20:40:16
Dibro
14.11.2018
21:32:44
привет, хочу стопнуть все контейнеры, есть ли разница между: docker stop $(docker ps -aq) и docker stop $(docker ps -q) везде предлагают первый вариант, хотя, как мне кажется, это одно и тоже

Konstantin
14.11.2018
21:33:19
Так ты описание флагов то глянь

Зачем гадать то

Dibro
14.11.2018
21:34:40
Так ты описание флагов то глянь
без -а выведутся только запущенные, но я то их потом в стоп передаю, зачем мне другие

Konstantin
14.11.2018
21:34:53
Вот и ответ)

Dibro
14.11.2018
21:35:23
Вот и ответ)
дак просто везде с -а пишут, зочем

Konstantin
14.11.2018
21:35:43
Хз, это же интернеты)

Николай
15.11.2018
04:43:06
Ребят, может кто сталкивался. Имеется несколько приложений на Laravel (php). В docker-compose описал такие сервисы: -nginx -postgres -rabbit -app 1 -app 2 -app 3 -... -app N Тут в каждом приложении (app N) dockerfile основан на php-fpm, тоесть в контейнере с прилагой только php и сама прилага. Контейнер с nginx прокидывается в каждую прилагу (volumes_from). На этом этапе все хорошо, все работает. Что надо: в контейнере с nginx завести виртуальный хост для проксирования каждой прилаги с одного домена. То есть, имеем домен api.example.com и нужно чтобы по запросу http://api.example.com/app1 отвечала прилага app 1, http://api.example.com/app2 отвечала прилага app 2 и т.д. Но так как в контейнерах с прилагами нет вебсервера, простым проксированием по имени контейнера обратится к ним не получится. Казалось бы, засунуть в каждую прилагу nginx и не парится, но это противоречит концепции докера "1 контейнер = 1 процесс", да и выглядит это как то по уебански. Как быть?

Илья
15.11.2018
04:45:19
Сделай чтобы был в контейнере с приложением nginx а не php А в конфигах nginx укажи php:9000 или как оно там

location ~ \.php$ { include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass php-fpm:9000; try_files $uri =404; }

php-fpm - название твоего сервиса

Страница 875 из 1375