
Maxim
15.04.2018
10:46:46
Классный гайд нашел по локальной разботке с использованием докера:
https://muracon18.bretfisher.com/#1
Для начинающих думаю будет очень полезно

Maxim
15.04.2018
10:52:16

Maxim
15.04.2018
10:52:41
https://dpaste.de/gEAU

Google

Maxim
15.04.2018
10:52:45
вот
cat в начале и cat в конце лишние, это так случайно вышло :)

Maxim
15.04.2018
10:54:19
понял) ща попробую
так, где-то я криворук вчера был... все работает)

Сергей
15.04.2018
12:20:45
подскажите как реализовать такое. У меня 22 порт юзается сервером но приложение тоже хочет юзать 22 порт (это гит сервер) ак быть и будет ли всё норм работать?

Artem
15.04.2018
12:24:30
Зачем ему ssh порт?

Сергей
15.04.2018
12:24:59
gogs можешь глянуть)

Artem
15.04.2018
12:25:05
Повесь на другой порт хоста, а в конфиге того что его юзает по-любому можно изменить порт

Сергей
15.04.2018
12:25:06
чтобы репозитории лить)

Artem
15.04.2018
12:25:21
Т.к. частенько 22 порт в принципе закрывают

Сергей
15.04.2018
12:25:26

Artem
15.04.2018
12:26:08
Типо -p 2200:22 если в контейнере это слушается на 22 порту

Google

Сергей
15.04.2018
12:27:27
подскажи как работает?
expose:
- "3000"
у меня просто nginx-proxy и я не могу разобраться как с портами быть в приложениях)
которые в веб ведут
подскажите как сделать чтобы в nginx-proxy подхватывался нужный порт автоматический, а не руками прописывать для контейнера?

Artem
15.04.2018
13:42:21
Expose это просто описательно, только для того чтобы знать на каком порту внутри приложение
Там можно хоть 6666 написать

Сергей
15.04.2018
13:44:39
надо кроме VIRTUAL_HOST еще VIRTUAL_PORT писать и окей всё поднялось)

Andrey
15.04.2018
13:53:56
Ребят, подскажите плс, как можно получить путь к файлам в контейнере, который залинкован к текущему?
Ситуация такая:
nginx - отдельный контейнер с линкой на api_app
api_app - отдельный контейнер
В конфиге nginx нужно добавить путь к корню api_app(like root /var/app/public)
Возможно, сама архитектура контейнеров не очень
Нашел вариант - шарить именованные volum'ы, но что-то кажется, что есть вариант лучше

Artem
15.04.2018
14:07:21
Линк не даёт никакого доступа к фс, только роутинг по имени
Так что через волюмы

Andrey
15.04.2018
14:13:23
Если делать через волюмы, то как я понимаю, у всех сервисов, которые используют один и тот же именованный волюм, будут одинаковые файлы в директории волюма?
И если какой-то сервис изменит какой-то файл в директории волюма, то он изменится везде?

Евгений
15.04.2018
14:50:12

Andrey
15.04.2018
14:50:40
Получается, что да

Peter
15.04.2018
15:08:56
Подскажите, пожалуйста.
Вот есть какой-нибудь сайт на PHP.
Хочу завернуть его в докер.
Создаю два контейнера (с php-fpm и nginx), ну и docker-compos.
Как сделать так, чтобы у обоих контейнеров был доступ к контенту сайта?
Везде в интернете предлагаю создать volume с контентом, но разве это не убивает саму идею докеризации? Разве оно не должно быть stateless?

Александр
15.04.2018
15:12:55
Клади в nginx статику, которую должен отдавать он, а в пхп - то, что нужно для него. Без всяких волюмов. Волюм нужен тут будет для файлов, которые будут изменяться пользователем или сайтом
И кстати, контент разве в обычных файлах лежит? Не в бд?

Peter
15.04.2018
15:15:09
Тут контент - фоточки всякие, например. А php по ним ходит и создает ссылочки на сайте

Google

Peter
15.04.2018
15:16:32
Неужели нет возможности скопировать одно и тоже в два контейнера?

Black
15.04.2018
15:31:41
привет всем, кто-нить на лине юзал dante server?

TIMUR
15.04.2018
15:33:41
Господа, добрый вечер, есть вопрос 1

Black
15.04.2018
15:35:16
спасибо, сам разобрался

TIMUR
15.04.2018
15:35:17
Я пока еще изучаю докер и хочу понять как он работает. Как я понял, есть некая иерархия зависимостей, и если первый образ, берет за основу второй, то качается и второй и первый. Вопрос собственно в чём, тут есть у меня 1 образ, зовётся "microsoft/aspnetcore-build:2.0", не пойму почему, но он весит больше 1.7 гигов, хотя при наследованиии от jessie другие контейнеры весят в районе 200-300 мегабайт, это туда напихали много чего или же я где-то сглупил?

Юра
15.04.2018
15:36:25
эт нормальный вариант
можешь copy . .
это скопирует в контейнер

Peter
15.04.2018
15:38:33
можешь copy . .
но если у меня два докерфайла, лежащих соответственно в разных поддиректориях, то copy не сработает

Юра
15.04.2018
15:38:58
ты путь можешь любой указать

Peter
15.04.2018
15:39:06

TIMUR
15.04.2018
15:39:14

Peter
15.04.2018
15:39:44

Юра
15.04.2018
15:40:05
есть вариант обернуть содержимое в контейнер и сделать его базовым image для двух других

Peter
15.04.2018
15:40:51
Да, я думал об этом, но тогда не получится реюзать готовые образы nginx и php-fpm, что неприятно

TIMUR
15.04.2018
15:41:40
Кажется, на свой вопрос, я ответил сам

Peter
15.04.2018
15:43:53

Сергей
15.04.2018
15:44:56
от чего такие ошибки?(
37#37: *1 connect() failed (111: Connection refused) while connecting to upstream, client: *.*.*.*, server: b.domain.pw, request: "GET / HTTP/1.1", upstream: "http://172.18.0.2:3000/", host: "github.baks.pw"

Google

TIMUR
15.04.2018
15:45:15
Хм, что-то не уловил
Тебе предложили обернуть содержимое в контейнер, но ты говоришь, что не сможешь юзать готовые сборки nginx и php, так наследуй контейнер с содержимым от готовых образов, а своё приложение в свою очередь от контейнера с содержимым

Peter
15.04.2018
15:46:31

TIMUR
15.04.2018
15:47:05

Peter
15.04.2018
15:47:57
Никак, пытаюсь разобраться в докере на конкретной задаче

TIMUR
15.04.2018
15:48:53

Peter
15.04.2018
15:49:07
ну это понятно

TIMUR
15.04.2018
15:49:23

Peter
15.04.2018
15:49:30
Собственно поднять два контейнера (nginx + php) - не проблема
Проблема дать им общие файлы
Точнее так: дать им общие файлы, не создавая volume

TIMUR
15.04.2018
15:50:14

Eduard
15.04.2018
15:50:21
Зачем им общие файлы?)

TIMUR
15.04.2018
15:50:21
Так и не создавай

Peter
15.04.2018
15:51:48
Тогда volume
Но оно же не будет тогда stateless, или я чего-то не понимаю?

TIMUR
15.04.2018
15:52:40
И всё

Peter
15.04.2018
15:53:18
А как это деплоить тогда?
Папка то будет вне контейнеров

Eduard
15.04.2018
15:53:59
Список файлов должен быть по хорошему отдельно

Google

Peter
15.04.2018
15:54:18
Ну я понимаю

Eduard
15.04.2018
15:54:25
И php получает к нему доступ не обращаясь к каталогу с ними

Peter
15.04.2018
15:54:33
Мне это скорее в образовательных целях

Eduard
15.04.2018
15:54:47
Потому что никто не гарантирует что контейнеры в кластере будут на одной железке
А иначе докер и не нужон)

Peter
15.04.2018
15:55:13
Ага, поэтому мне простым решением казалось просто copy делать
Только вот внезапно нельзя из внешних директорий копировать

TIMUR
15.04.2018
15:55:55
Почему нельзя?
Абсолютный путь?

Eduard
15.04.2018
15:57:38
Ну в качестве костыльного метода я бы выгрузил листинг в файл и маунтил к пхп, а директорию с файлами к nginx
Или ещё 3 контейнер с бд сделал и список туда положил

Peter
15.04.2018
15:58:45
Почему нельзя?
Ну смотри, создал такую структуру:
content/
docker-compose.yml
php/Dockerfile
nginx/Dockerfile
При билде вылезает:
Service 'ohp' failed to build: Forbidden path outside the build context:

Александр
15.04.2018
15:59:36
Укажи корневой контекст при сборке

Peter
15.04.2018
16:00:08

Александр
15.04.2018
16:00:18
Он по дефолту находится в папке с Dockerfile, если через docker-compose

Peter
15.04.2018
16:00:33

Александр
15.04.2018
16:00:46
Я с телефона
Docker build context