我有码头工具1.7.1,我跟随james turbnall这本码头书。 创建了两个图像(apache,jekyll),然后创建了一个jekyll容器 我在docker文件中创建了带有EXPOSE 80的-P标记的apache容器,但是我运行了docker端口80但没有公共端口错误。
然后我升级到docker 1.8.1但没有改变我试过-P,-p,EXPOSE和每个参数但我无法修复它。
运行Docker ps -a时的我的ports列始终为空。
Dockerfile:
FROM ubuntu:14.04
MAINTAINER AbdelRhman Khaled
ENV REFRESHED_AT 2015-09-05
运行apt-get -yqq更新
运行apt-get -yqq安装apache2
VOLUME [“/ var / www / html”]
WORKDIR / var / www / html
ENV APACHE_RUN_USER www-data
ENV APACHE_RUN_GROUP www.data
ENV APACHE_LOG_DIR / var / log / apache2
ENV APACHE_PID_FILE /var/run/apache2.pid
ENV APACHE_RUN_DIR / var / run / apache2
ENV APACHE_LOCK_DIR / var / lock / apache2
RUN mkdir -p $ APACHE_RUN_DIR $ APACHE_LOCK_DIR $ APACHE_LOG_DIR
EXPOSE 80
ENTRYPOINT [“/ usr / sbin / apache2”]
CMD [“-D”,“FOREGROUND”]
命令:
$ sudo docker build -t jamtur01 / apache。
$ sudo docker run -d -P --volumes-from james_blog jamtur01 / apache
$ sudo docker port container_ID 80
错误:没有为aa99fef6544a
发布公共端口'80 / tcp'
答案 0 :(得分:0)
刚刚更改了图片标记名称,现在一切正常。