Dockerfile 的常見參數

Docker File 常用指令

  • FROM 指定基礎鏡像

    FROM centos:7
    
  • MAINTAINER: 指定作者/維護着

    MAINTAINER Tian Go <[email protected]>
    
  • RUN 執行的命令

    RUN ["yum", "install", "httpd"]
    RUN yum install redis
    RUN ln -s /opt/bin/python3 /bin/python
    
  • WORKDIR: 指定工作目錄

    WORKDIR /data
    
  • ENV 設置環境變量

    ENV MYSQL_ROOT_PASSWORD 123456
    ENV JAVA_HOME /usr/local/jdk1.8.0_45
    
  • ADD 拷貝文件、目錄到鏡像中

    如果是壓縮包會自動幫忙解壓

    如果是網址,自動下載並解壓

    ADD html.tar.gz /var/www/html
    ADD https://xxx.com/html.tar.gz /var/www/html
    
  • COPY 拷貝和複製文件,不支持自動解壓和下載

    COPY ./start.sh /start.sh
    
  • CMDENTRYPOINT

    CMD ["-C", "/start.sh"] 
    CMD ["/usr/sbin/sshd", "-D"] 
    CMD /usr/sbin/sshd -D
    
    ENTRYPOINT ["/bin/bash", "-C", "/start.sh"]
    ENTRYPOINT /bin/bash -C '/start.sh'
    
    • 如果沒有ENTRYPOINTCMD 要寫完整的內容命令[command,arg1,arg2]docker run 後面會覆蓋掉 cmd
    • 如果有ENTRYPOINTCMD 可以只寫 [arg1,arg2] ,那麼ENTRYPOINT[command]
    • 還可以這樣ENTRYPOINT寫[command,arg1] CMD 可以只寫 [arg2]

參考

https://blog.csdn.net/sunt2018/article/details/105102037

https://www.cnblogs.com/edisonchou/p/dockerfile_inside_introduction.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章