Docker: Elementos de uma arquivo Dockerfile
Vamos pegar por exemplo o arquivo Dockerfile abaixo:
FROM ubuntu:12.04 # add the files we require, jar + WLP files ADD wlp-developers-extended-8.5.5.2.jar /root/ ADD wlp-developers-runtime-8.5.5.2.jar /root/ ADD JAXWSEJBSample.jar /root/ # install WLP RUN apt-get update RUN apt-get install -y default-jre RUN java -jar /root/wlp-developers-runtime-8.5.5.2.jar --acceptLicense /root/ RUN java -jar /root/wlp-developers-extended-8.5.5.2.jar --acceptLicense /root/ RUN cd /root/wlp && java -jar ../JAXWSEJBSample.jar /root/wlp EXPOSE 9080 CMD /root/wlp/bin/server run JAXWSEJBSample
Comandos do arquivo DockerFile
FROM
- FROM ubuntu:12.04
Informo que a docker image vai ter como base layer o ubuntu:12.04
RUN
- RUN apt-get update
O comando RUN executa um comando ao necessário na montagem do container.
CMD
- CMD /root/wlp/bin/server run JAXWSEJBSample ou CMD ["python","app.py"]
CMD é o comando que é executado ao iniciar o container.
ADD
- ADD wlp-developers-extended-8.5.5.2.jar /root/
Copia o arquivo para dentro do container
COPY
- COPY app.py /app.py
Copia o arquivo para dentro do container
SHELL
ENV
EXPOSE
- EXPOSE 9080
Expõe o serviço na porta 9080