Anton
27.04.2019
17:03:24
попробуйте запустить "docker run --rm alpine" (без "-it")
ничего не произошло и вам сразу вернулось управление, так?
на самом деле произошло много чего. А именно запустился контейнер в котором запустился sh, т.к. вы не передали "-t", он сразу получил EOF, то есть эквивалентно, как если вы в консоле ctrl+d нажмете. Поэтому sh сразу завершил свое выполнение, а вместе с ним и контейнер.
теперь попробуйте с "-t" без "i": "docker run --rm -t alpine"
Google
Anton
27.04.2019
17:07:16
теперь контейнер не завершает работу, потому что вы "пробросили терминал". sh не получил EOF и продолжает работать. Но что бы вы туда не писали, вы не видите результата, потому что вы не включили интерактивный режим (ключ "i")
и наконец, когда вы пробрасываете и терминал "t", и включаете интерактивный режим "i": "docker run --rm -it alpine", sh работает с терминалом и вы можете с ним интерактировать
вернее не пробрасываете терминал, а создаете псевдотерминал
ildar
27.04.2019
17:20:57
Nikolay
27.04.2019
17:25:28
Anton
27.04.2019
17:32:57
Nikolay
27.04.2019
17:33:19
https://pastebin.com/8LLj32eB
А почему папки в image ,а не в контейнере ?я же скачал (сбилдел) image, а запускается контейнер . Ты.е к одному image может быть много контейнеров.
Anton
27.04.2019
17:36:24
я думаю потому, что файловая система монтируется _из_ _образа_. Да, контейнеров может быть несколько, поэтому там будет несколько mount-id и несколько папок
Nikolay
27.04.2019
17:42:23
Понял.спасибо большое . Благодаря вам все стало намного понятнее .
dot
27.04.2019
18:20:40
Всем привет :) только начинаю разбираться с докером и поставил цель залить коровское приложение в докер. Делаю вот поэтому мануалу https://docs.microsoft.com/ru-ru/dotnet/core/docker/build-container но у меня пишет что нет такой директории или файла когда я выполняю команду docker build -t myimage . Мне пишет ошибку Step 2/3 : COPY app/bin/Release/netcoreapp2.2/publish/ app/
COPY failed: stat /var/lib/docker/tmp/docker-builder054582053/app/bin/Release/netcoreapp2.2/publish: no such file or directory я пишу код в visual studio в винде и естественно у меня нет такой директории. Как тут правильно сделать ?
Subb98
27.04.2019
18:22:20
Нифига себе. Мануал по докеру на сайте майкрософт. А это вообще законно?
dot
27.04.2019
18:24:19
в студии уже можно делать проекты с поддержкой докеров но я не врубаюсь во второй шаг :(
Subb98
27.04.2019
18:25:02
второй - это который?
Google
Subb98
27.04.2019
18:25:33
А, я понял, то, что ты скопировал. Я думал в статье
dot
27.04.2019
18:26:52
ну да , но я не могу врубиться как тут образ то сделать ? Как можно удалить образы ?
Subb98
27.04.2019
18:26:55
Ну, наверное, тебе как минимум, обратные слеши надо юзать. Ну и почитать мануалы по докеру
Как можно удалить образы ?
docker rmi <image_name>
https://docs.docker.com/get-started/
dot
27.04.2019
18:28:32
да там вообще такого пути нет и быть не может , я же под виндой писал а он мне линуксовой путь пишет
Subb98
27.04.2019
18:29:15
внутри докер-контейнера не винда
там линукс )
ildar
27.04.2019
18:29:43
Модель для начала потренироваться в линкксовом окружении на линуксовых кошечках?
Нафиг сразу в винду втыкаться..
Subb98
27.04.2019
18:30:22
нафиг в неё в принципе )
dot
27.04.2019
18:31:06
аа ясно , блин это проблема . Мне же получается нужно скомпилировать в вижуал студии проект . А потом запихать его в образ ?Я в visual studio проекты делаю на шарпе поэтому мне то как раз это и удобно
там без винды никак
Subb98
27.04.2019
18:31:46
dot
27.04.2019
18:32:30
да там классов 20 в проекте может быть , тут без visual studio никак :(
melancholiac
27.04.2019
18:32:37
Но докер на винде и ранится в простенькой линуксовой виртуалке, не?
ildar
27.04.2019
18:32:38
Питон хелло ворлд в докер в виртуалке засунь там.
dot
27.04.2019
18:33:57
да это то уже делал, под линуксом работало
Google
melancholiac
27.04.2019
18:34:13
По хорошому надо скопировать файлы и компилять моно/ксамарином
dot
27.04.2019
18:34:44
нее тут фишка в net core он может работать под линуксом
melancholiac
27.04.2019
18:35:21
dot
27.04.2019
18:35:55
я только изза этого заморочился изза нет
гонего*
melancholiac
27.04.2019
18:36:00
Тогда да, накати докер в всл пробрось туда проект и собирай имейдж оттуда
dot
27.04.2019
18:37:07
попробую щас по другому чуть сделать когда образ с нуля делаешь он его создает. Щас удалю первоначальный образ и по новой с нуля сделаю его
так вроде все заработало образ он мне создал и я для него создал контейнер . Скажите а как мне его теперь на docker hub залить ? Идея в том что бы потом под линуксом от туда его забрать и запустить ?
melancholiac
27.04.2019
19:03:07
ildar
27.04.2019
19:09:36
dot
27.04.2019
19:14:24
An image does not exist locally with the tag: testprof/myimage когда я делаю команду push testprof/myimage скажите что это означает ?
образ с таким названием у меня есть
аа все получилось :)
еше тупой вопрос. Я залил на docker hub свой образ затем на линуксе его получаю , он скачивается. Но я его почему то не вижу через команду ps -a Что я не так делаю ?
binka
27.04.2019
20:09:55
Bogdan
27.04.2019
20:10:40
dot
27.04.2019
20:11:02
эмм аа блин понял спасибо огромное !!
Dmitry
27.04.2019
20:25:34
Привет.
Google
Dmitry
27.04.2019
20:25:39
Используете ли вы Docker для контейнеризации сервера БД? Не сталкивались ли вы при этом с проблемами?
George
27.04.2019
20:27:14
Достаточно?
dot
27.04.2019
20:28:22
хмм а если после выполнения команды docker create myimage вроде он его создает но при выполнении комманды ps -a мне выдается только два поля с инфой PID TTY и поле TIME CMD и выполнение docker start image говорит что нет такого контейнера ?
что я не так делаю*
?
name я ему image присваиваю
George
27.04.2019
20:32:44
dot
27.04.2019
20:33:03
да я читал вроде
George
27.04.2019
20:33:04
Есть как бы разница между docker start, docker run и docker stop
dot
27.04.2019
20:33:29
ну это то я понимаю
в туториале docker create выводит инфу вот так CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES а у меня совсем по другому
George
27.04.2019
20:36:48
??
dot
27.04.2019
20:39:25
аа он для запущенных контейнеров инфу выводит а я свой образ запустить не могу
Dmitry
27.04.2019
21:06:53
George
27.04.2019
21:11:11
ну, много можно рассказать
начиная от "забыли БД засунуть в вольюм и прохерили все данные" до работы распределенных баз, где нужно указывать конкретный хостнейм (иначе не работает)
Dmitry
27.04.2019
21:17:04
https://vsupalov.com/database-in-docker/
Здесь советуют не использовать Docker для деплоя БД в production. Что думаете об этом?
Sergey
27.04.2019
21:18:09
Google
?simplemice
27.04.2019
21:18:15
мы полностью согласны, используйте containerd
George
27.04.2019
21:23:00
Lucas
27.04.2019
21:34:27
Sergey
27.04.2019
21:38:51
даже эти 5% импакта по ресам
и это еще если докерд не глюканёт
George
27.04.2019
21:39:52
Как минимум следующий факт - любая БД думает, что она единственная на хосте
Что постгрес, что монга, что кликхаус
Если мы их запихиваем в докер, то мы им изначально даём неверные ожидания
Вывод - их ВСЕ нужно готовить для работы в докере. Иначе проблемы. Нужно ли это - решать вам, но это доп. работа и доп когнитивная нагрузка на опса
Sergey
27.04.2019
21:42:05
я вот в душе не ебу че буду делать
если я вдруг буду гонять нагрузочные тесты на кластере баз данных в докере, и что то пойдет не так
Dmitry
27.04.2019
21:48:50
Есть ещё вопрос. У меня есть веб-приложение на Flask, для его работы мне нужны сервисы uwsgi и nginx. В production, куда я буду его отправлять, будут и другие приложения, они тоже используют nginx. Получается, лучше будет исключить nginx из набора контейнеров?
И настраивать nginx под разные приложения вручную?
Есть ещё вопрос. Многие приложения являются stateful и хранят пользовательские файлы (например, картинки), файлы логов. Как учитывать их при деплое? Использовать volumes?
Yury
28.04.2019
04:48:14
Не использовать диск для записи состояния. Все остальное - костыли разной степени стремности.
Dmitry
28.04.2019
05:30:36
В основном я занимаюсь разработкой веб-приложений. Среди них я встречал мало stateless-приложений, большинство является stateful и оперирует БД и файлами. Используете ли вы Docker в аналогичных условиях? Как решаете вопрос с хранением состояния?