2016-07-22 2 views
-2

Это мой Dockerfile:Простой Dockerfile нет работы

FROM debian:stable 
MAINTAINER xxxx <[email protected]> 
RUN apt-get update && apt-get upgrade -y 
CMD ["/bin/bash"] 

Затем я бегу в каталоге Dockerfile:

docker build -t testimage . 

Наконец:

docker run -d testimage 

Контейнер не старт:

docker ps -a 

CONTAINER ID  IMAGE    COMMAND    CREATED    STATUS      PORTS    NAMES 
c4fe93e2e225  test    "/bin/bash"   17 minutes ago  Exited (0) 9 minutes ago      gloomy_ritchie 

ответ

2

Вы пытаетесь запустить отдельный контейнер (-d), но вы также пытаетесь запустить интерактивную оболочку (/bin/bash). Поскольку для bash требуется интерактивный терминал, он немедленно завершается, поэтому ваш контейнер выходит.

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

docker run -it testimage 

В -it флаги установить контейнер для интерактивного использования; см. справочную страницу для docker-run для получения дополнительной информации.

Отдельный контейнер чаще всего используется для запуска постоянной службы (например, базы данных или веб-сервера), хотя вы можете запускать что угодно, пока он не ожидает присоединения к активному терминалу.

+0

Спасибо, извините за то, что так новичок. – alvarezsh

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