2015-11-10 9 views
0

Я строй контейнера:докера запустить контейнер, как перезапускать

docker build -f Dockerfile.xyz -t dave/xyz . 

после этого я бег докера с:

docker run -it \ 
--env='LDAP_USER=uid=bot_for_git,ou=bots,dc=company,dc=org' \ 
--env='LDAP_PASS=' --volume=/srv/docker/xyz/data1:/data \ 
-p 8010:8010 -p 9989:9989 dave/xyz 

и убедился, что все в порядке.

Что дальше?

Мое предположение, что я должен работать docker ps, возьмите контейнер идентификатор оттуда, и запустить контейнер с теми же предпочтениями (окружающая среда, отображение портов, объемы отображения) Я должен работать:

docker start -a container_id 

я прав ?

А что перестраивать образ, если изменение Dockerfile.xyz и восстановление DAVE/хуга, делает контейнер с container_id получить обновление автоматически, или я должен повторить docker run -it шаг?

ответ

3

docker build [...] создает image. Вы можете видеть свои изображения с помощью docker images. Вы можете дать этому изображению определенное имя с опцией --tag=[...]:

docker build --tag="superuser/bestimage:latest" . 

docker run [...] <imageId> принимает этот образ и начинает контейнер. Вы можете видеть активные контейнеры с docker ps (все с docker ps -a). Если вы использовали тег выше, может использоваться docker run -it superuser/bestimage:latest.

При восстановлении изображения создается новое изображение с новым идентификатором. Вы можете видеть это через docker images.

делает контейнер с container_id получить обновления автоматически

Нет. Чтобы обновить ваш контейнер, вы должны сначала удалить контейнер с docker kill <id>, а затем начать новый с docker run -it <newID>.

+0

Что относительно разговора '' -> 'container_id'? Я имею в виду, как упоминалось в моем вопросе, когда я впервые использовал 'docker run --env -p imageId', аргументы' docker run' (env, ports, volume) сохраняются в 'container_id', после чего я могу запустить этот контейнер с 'docker start container_id'? – user1244932

+0

Что вы ищете - это пометка. Обновлен ответ. – michaelbahr

+1

Вы точно не отвечаете о контейнере из созданного образа и 'docker start' vs' docker run', но выясните его сам – user1244932