一、dockerfile文件
FROM centos
WORKDIR /home/cafintech/App/
COPY metaData ./metaData/
RUN yum -y install java-1.8.0-openjdk.i686
RUN yum -y install python-setuptools
RUN easy_install supervisor
RUN mkdir -p /etc/supervisor/
ADD supervisord.conf /etc/supervisor/supervisord.conf
CMD ["/usr/bin/supervisord","-c","/etc/supervisor/supervisord.conf"]
#CMD ["/usr/bin/supervisord","-c","/etc/supervisord.conf"]
#CMD ["/bin/bash"]
#CMD ["/home/cafintech/App/metaData/bin/start.sh","run"]
二、配置文件详解
1.FROM centos
我们的docker是基于哪个基础镜像的
2.WORKDIR /home/cafintech/App/
我们的工作目录
3.COPY metaData ./metaData/
将本地的项目拷贝到docker内部
4,run命令
在docker内部执行一下命令,可以是安装软件,新建文件夹等操作
5.add命令
将本地的配置文件拷贝到docker内部
6.cmd命令
docker启动时在docker内部执行的命令,注意这条命令应该是前台进程,否则docker启动一会儿后会立刻停止
ps:当你docker run想执行dockerfile的cmd命令。那你的docker run后面不能加command,否则会覆盖dockerfile里面的command
如果你希望你docker启动之后一直待在那里而不是运行一下就停止,那你dockerfile里面的command应该是前台进程
针对supervisord,需要设置配置文件 supervisord.conf nodaemon=true