DockerFlie的基本命令解析

DockerFlie官網文檔: https://docs.docker.com/engine/reference/builder/ python

Docker 倉庫地址: https://github.com/docker-library/docs 能夠借鑑參考寫 git

   

RUN EXEC

exec 是當前命令執行(執行完會kill當前終端) github

run shell是子進程運行(/bin/shell -c echo hello web

   

CMD ENTRYOINT

在容器run的時候 默認啓動的命令 容器默認是 /bin/bash docker

CMD 是主進程啓動,是會被覆蓋的 shell

ENTRYOINT 子進程啓動,不會被覆蓋 flask

   

CMD ["executable","param1","param2"] 默認用這個 bash

CMD ["param1","param2"] 給ENTRYPOINT的參數 app

CMD command param1 param2 ui

   

LABEL MAINTAINER

   

LABEL 說明性數據

MANINTAINER 被LABEL取締

   

EXPOSE

設置暴露端口,

EXPOSE 6379 … …

   

ENV ARG

環境變量

ENV 設置執行命令時候的環境變量,構建完成,還有效

ARG 執行命令時的環境變量,構建完成後 無效 docker build --build-arg user=what_user 能夠給定義的arg傳入值(好比用戶名和密碼,手動傳入)

   

COPY ADD

宿主機目錄文件拷貝到容器

COPY 拷貝文件

ADD 自動解壓文件

 

例子

# flask web

FROM python:alpine

COPY ./code /code

WORKDIR /code

RUN pip install -r requirements.txt

CMD ["python", "app.py"]

 

docker build . -t [取名]

相關文章
相關標籤/搜索