2015-09-14 6 views
4

я пытаюсь запустить контейнер со следующей командойКак сохранить изображение ubuntu?

sudo docker run ubuntu 

после этого я проверил с

sudo docker ps -a 

найден контейнер вышел уже

почему это выход?

Как я могу держать его в беге в backgroud без указания -и и приложить к нему по требованию?

ответ

9

решаемые себя элегантным способом сохранить ход контейнера и ждут дальнейшего «пристроить» или «Exec» состоит в следующем (держать STDIN открыт -i опция)

sudo docker -i -d run ubuntu 
+0

Чтобы вернуться в контейнер, он работает (потому что я забываю каждый раз):' docker exec -it [container_id_or_name] bash' – Brandon

0

правильный синтаксис

(от docker run --help)

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

вы забыли указать команду.

Вы должны взглянуть на Docker ступице

https://registry.hub.docker.com/

Например, для Nginx, если вы посмотрите на

https://hub.docker.com/_/nginx/

вы найдете

docker run --name some-nginx -v /some/nginx.conf:/etc/nginx/nginx.conf:ro -d nginx

Если посмотреть на

https://github.com/nginxinc/docker-nginx/blob/7f3ef0927ec619d20181e677c97f991df0d7d446/Dockerfile

вы заметите, что последняя строка Dockerfile является

CMD ["nginx", "-g", "daemon off;"]

Это означает, что при запуске Nginx докер изображение, скрытое действие для запуска nginx.

0

Если вы хотите, чтобы контейнер не существует, вы должны использовать -d рассуждение

Так что это выглядит следующим образом:

docker run -d ubuntu 
+0

протестирована с опцией -d еще выйти –

+0

вы должны показать выход, если вы хотите получить больше помощи :) 'Докер пс -a' –

1

Вам необходимо запустить приложение с помощью команды Докер запуска, который выиграл Выход.

Пример:

docker run -d --entrypoint '/bin/bash cat' ubuntu

+0

@Micheal это возвращает ошибку«ошибка ответа от демона: не удается запустить контейнер 2bb0e1b79d10401023d4655 80dcc2bfa2f18d58cefed7d02c13ed879c8717f47: [8] Системная ошибка: exec: "/ bin/bash cat": stat/bin/bash cat: нет такого файла или каталога " –

Смежные вопросы