Docker: Elementos de uma arquivo Dockerfile: Difference between revisions
(→USER) |
(→LABEL) |
||
Line 49: | Line 49: | ||
Expõe o serviço na porta 9080 | Expõe o serviço na porta 9080 | ||
== LABEL == | == LABEL == | ||
Define metadados para a imagem | |||
LABEL title="Container XYZ" | |||
LABEL version="1.0" | |||
LABEL description="This text illustrates \ | |||
== STOPSIGNAL == | == STOPSIGNAL == | ||
== USER == | == USER == |
Revision as of 00:09, 27 September 2018
Vamos pegar por exemplo o arquivo Dockerfile abaixo:
FROM python:3.6.1-alpine RUN pip install flask COPY app.py /app.py CMD ["python","app.py"]
docker image build -t python-hello-world .
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
LABEL
Define metadados para a imagem
LABEL title="Container XYZ" LABEL version="1.0" LABEL description="This text illustrates \
STOPSIGNAL
USER
A instração USR define o usuário/uid e o group/gid para ser usado ao executar a imagem e para qualquer instrução RUN, CMD e ENTRYPOINT que a segue no Dockerfile.
USER <user>[:<group>] or USER <UID>[:<GID>]
VOLUME
A instrução VOLUME é server para compartilhar um diretório do filesystem do host e o filesystem do container.
VOLUME ["/path1/", "/path2/"]
WORKDIR
A instrução WORKDIR, define o diretório de trabalho para qualquer comando RUN, CMD, ENTRYPOINT, COPY e ADD.
Se o diretório de trabalho não existir, ele é criado.