У меня есть простые команды для создания и запуска контейнера (create.sh):Не удается запустить простой докер контейнер с помощью команды «старт Докер» из созданного образа
docker build -t foo .
docker rm bar
docker create --name=bar foo && \
docker start bar && \
docker exec bar sh /bin/echo Test!!!
Dockerfile:
#/bin/bash
FROM centos:7
RUN yum update -y
Но это не может быть запущена:
$ bash create.sh
Sending build context to Docker daemon 4.608 kB
Step 1 : FROM centos:7
---> 980e0e4c79ec
Step 2 : RUN yum update -y
---> Using cache
---> 80b94205920c
Successfully built 80b94205920c
bar
a1db507225ca7479bdcc3bb3d4e3a86339827f4bf0e9365f507978b11d99df19
bar
Error response from daemon: Container bar is not running
Контейнер был создан, но он еще не начался.
выписки из дока https://docs.docker.com/engine/reference/builder/#/cmd 'Основной целью ЦМДА является предоставление defaults для исполняемого контейнера. ' – user2915097
from https://docs.docker.com/engine/reference/builder/#/entrypoint' ENTRYPOINT позволяет вам сконфигурировать контейнер, который будет запускаться как исполняемый файл. Например, начнется nginx с его содержимым по умолчанию, прослушивая порт 80: docker run -i -t -rm -p 80:80 nginx' – user2915097
Хм, это все еще не ясно. Вы имеете в виду, что этот контейнер немедленно останавливается, потому что в фоновом режиме есть задачи? Как и nginx, apache и т. Д. – Kirby