@docker_ru

Страница 1202 из 1375
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 работает с терминалом и вы можете с ним интерактировать

вернее не пробрасываете терминал, а создаете псевдотерминал

Nikolay
27.04.2019
17:25:28
вернее не пробрасываете терминал, а создаете псевдотерминал
Спасибо. Правильно ли понимать , что it - это взаимодействие с потоком stdin в entrypoint?

Anton
27.04.2019
17:32:57
Спасибо. Правильно ли понимать , что it - это взаимодействие с потоком stdin в entrypoint?
можно так сказать, но строго говоря за взаимодействие отвечает только "i". "t" создает псевдотерминал. Но ввиду того, что без терминала всеравно ничего не получится, то обычно эти флаги используются в паре

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 проекты делаю на шарпе поэтому мне то как раз это и удобно

там без винды никак

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 он может работать под линуксом

dot
27.04.2019
18:35:55
я только изза этого заморочился изза нет

гонего*

melancholiac
27.04.2019
18:36:00
Тогда да, накати докер в всл пробрось туда проект и собирай имейдж оттуда

dot
27.04.2019
18:37:07
попробую щас по другому чуть сделать когда образ с нуля делаешь он его создает. Щас удалю первоначальный образ и по новой с нуля сделаю его

так вроде все заработало образ он мне создал и я для него создал контейнер . Скажите а как мне его теперь на docker hub залить ? Идея в том что бы потом под линуксом от туда его забрать и запустить ?

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 Что я не так делаю ?

dot
27.04.2019
20:11:02
эмм аа блин понял спасибо огромное !!

Dmitry
27.04.2019
20:25:34
Привет.

Google
Dmitry
27.04.2019
20:25:39
Используете ли вы Docker для контейнеризации сервера БД? Не сталкивались ли вы при этом с проблемами?

dot
27.04.2019
20:28:22
хмм а если после выполнения команды docker create myimage вроде он его создает но при выполнении комманды ps -a мне выдается только два поля с инфой PID TTY и поле TIME CMD и выполнение docker start image говорит что нет такого контейнера ?

что я не так делаю*

?

name я ему image присваиваю

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

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 в аналогичных условиях? Как решаете вопрос с хранением состояния?

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