Dockerfile介紹

Dockerfile介紹

1.dockerfile的簡介

  • Dockerfile是由一條條的命令語句組成,並且支持以#開頭的介紹或者註解性文字。
  • Dockerfile通常分爲四的部分:基礎鏡像信息、維護者信息、鏡像操作指令和容器啓動是執行指令
# This dockerfile uses the ubuntu image
# VERSION 2 - EDITION 1
# Author: docker_user
# Command format: Instruction [arguments / command] ..

# Base image to use, this must be set as the first line
FROM ubuntu
#這是基礎的鏡像(一定要寫)
# Maintainer: docker_user <docker_user at email.com> (@docker_user)
MAINTAINER docker_user [email protected]
#維護者的信息(可寫可不寫)
# Commands to update the image
RUN echo "deb http://archive.ubuntu.com/ubuntu/ raring main universe" >> /etc/apt/sources.list
RUN apt-get update && apt-get install -y nginx
RUN echo "\ndaemon off;" >> /etc/nginx/nginx.conf
#鏡像的操作指令
# Commands when creating a new container
CMD /usr/sbin/nginx
#容器啓動時的指令

2.docker的操作指令

  • 整理了一些常用的操作指令
指令 含義
FROM 鏡像 指定新鏡像所基於的鏡像,第一條指令必須爲FROM指令 ,每創建一個鏡像就需要一條FROM指令 。
MAINTAINER 名字 說明新鏡像維護人的信息
RUN 命令 在所基於的鏡像上執行命令,並提交到新的鏡像中
CMD [“要運行的程序”,“參數1”,“參數2”] 指令啓動容器時要運行的命令或者腳本,Dockerfile只能有一條CMD命令,如果指定多條則只能最後一條被執行
EXPOSE 端口號 指定新鏡像加載到docker時要開啓的端口
ENV 環境變量 變量值 設置一個環境變量的值,會被後面的RUN使用
ADD 源文件/目錄 目標文件/目錄 將源文件複製到目標文件,源文件要與Dockerfile位於相同的目錄中,或者是一個URL
COPY 源文件/目錄 目標文件/目錄 將本地主機上的文件/目錄複製到目標地點,源文件/目錄要與Dockerfile在相同的目錄中
VOLUME [“目錄”] 在容器中創建一個掛載點
USER 用戶名/UID 指定運行容器時的用戶
WORKDIR 路徑 爲後續的RUN、CMD、ENTRYPOINT指定工作目錄
ONBUILD 命令 指定所生成的鏡像作爲一個基礎鏡像時所要運行的命令
HEALTHCHECK 健康檢查

3.創建鏡像

  • 編寫完成 Dockerfile 之後,可以通過 docker build 命令來創建鏡像。
  • 基本的格式爲 docker build [選項] 路徑,該命令將讀取指定路徑下(包括子目錄)的 Dockerfile,並將該路徑下所有內容發送給 Docker 服務端,由服務端來創建鏡像。因此一般建議放置 Dockerfile 的目錄爲空目錄。也可以通過 .dockerignore 文件(每一行添加一條匹配模式)來讓 Docker 忽略路徑下的目錄和文件。
    dockerignore 文件(每一行添加一條匹配模式)來讓 Docker 忽略路徑下的目錄和文件。
  • 要指定鏡像的標籤信息,可以通過 -t 選項
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章