English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Объяснение различий при создании образа docker и запуске контейнера (подведение итогов)

Docker建立在Linux ядра, в настоящее время в большинстве основных Linux систем уже поддерживается Docker и опыт использования лучше всего,当然, Docker также поддерживается на платформах Windows и MacOS, но для предоставления поддержки Linux нужно использовать виртуализационные инструменты, такие как Boot2Docker.

Ниже мы подробно расскажем о различиях в запуске контейнеров при создании образов Docker двумя способами, те, кто интересуется, могут вместе с нами изучить!

1. При запуске образов, созданных с помощью docker commit, можно загрузить скрипт для запуска своего приложения, например:

docker run -d -P tomcat7.0b:jdk1.6 /run.sh

Последний /run.sh запускает приложение Tomcat, что означает, что при запуске контейнера также запускается приложение Tomcat. В противном случае запускается только контейнер, но само приложение не запускается.

Содержимое run.sh таково:

#!/bin/bash
/usr/sbin/sshd -D &
exec ${CATALINA_HOME}/bin/catalina.sh run

И еще注意, этот контейнер создан на основе образов, созданных с помощью файла Docfile, если вы выполните операцию, а затем используете docker commit для создания нового образа на основе этого контейнера, то контейнер, созданный на основе нового образа, все равно нужно будет загрузить скрипт для запуска своего приложения.

При использовании образов, созданных с помощью файла Docfile, для запуска контейнера не нужно добавлять этот скрипт.

FROM sshd3:ubuntu
MAINTAINER waitfish from dockerpool.com([email protected])
ENV DEBIAN_FRONTEND noninteractive
RUN echo "Asia/Shanghai" > /etc/timezone && dpkg-reconfigure -f noninteractive tzdata
RUN apt-get install -yq --no-install-recommends wget pwgen ca-certificates && apt-get clean && rm -rf /var/lib/apt/lists/*
ENV CATALINA_HOME /tomcat 
ENV JAVA_HOME /jdk
ADD apache-tomcat-7.0.69 /tomcat
ADD jdk1.6.0_45 /jdk
#ADD create_tomcat_admin_user.sh /create_tomcat_admin_user.sh
ADD run.sh /run.sh
RUN chmod +x /*.sh
RUN chmod +x /tomcat/bin/*.sh
EXPOSE 8080
CMD ["/run.sh"]

Последний абзац CMD означает, что при запуске контейнера вызывается этот скрипт.

Ниже приведены два типа создания изображений Docker, которые я представил вам, надеюсь, это поможет вам. Если у вас есть какие-либо вопросы, пожалуйста, оставьте комментарий, я постараюсь ответить вам вовремя. В этом regard, я очень благодарен вам за поддержку сайта呐喊 уроков!

Вам может понравиться