问题描述
我想在此image的顶部构建我的dockerfile。它是ubuntu + python。 第三方docker文件:
FROM ubuntu:latest
MAINTAINER fnndsc "[email protected]"
RUN apt-get update \
&& apt-get install -y python3-pip python3-dev \
&& cd /usr/local/bin \
&& ln -s /usr/bin/python3 python \
&& pip3 install --upgrade pip
ENTRYPOINT ["python3"] #this entry point line is my concern
但是我想用作我自己的dockerfile的基础:
FROM fnndsc/ubuntu-python3
RUN pip install enum34 llvmlite numba
RUN mkdir -p ./voice_flask/d
workdir /voice_flask/d
copY . /voice_flask/d
CMD ["python","server.py"]
问题:基本映像的dockerfile停在ENTRYpoint-但我不需要此入口点,我有自己的最后一个命令-'CMD python server.py'。
ENTRYPOINT是否会影响我自己的dockerfile?该基本dockerfile是否已执行并坐在python shell上等待?
编辑:换句话说,是否执行了该基本dockerfile?还是我只提取图像,并在其上面构建了自己的dockerfile?
解决方法
您构建的Docker映像将继承基础映像的入口点,除非您对其进行更改。如果您对切入点感到满意,则无需执行任何操作。 CMD
定义将哪些参数传递给入口点。如果您对基本入口点python3
感到满意,则可以:
CMD ["server.py"]
在您的Dockerfile中。
,@paolo为您提供了使用基础映像中现有入口点的解决方案。
如果您对该入口点不满意,可以参考自己的入口
ENTRYPOINT ["my_script","param1","param2"]
或者甚至将其完全删除以仅使用CMD
ENTRYPOINT []