DockerFile

FROMpython

指定基礎image,必須爲DockerFile的第一條指令docker

FROM ubuntu:14.04
複製代碼

LABELshell

生成後的image的相關信息ubuntu

LABEL author=vaad
LABEL email=steven199409@outlook.com
LABEL version="1.1.0"
LABEL description="This is a test try for docker"
複製代碼

COPYvim

將本地文件添加到容器中,容器會自動建立cpdir目錄bash

ADD test /cpdir/
複製代碼

WORKDIRssh

設置命令執行的工做目錄以及進入容器時所在的目錄ui

WORKDIR /home/dk
複製代碼

VOLUMEspa

指定持久化目錄,只能指定容器的掛載目錄,本地的掛載目錄會隨機指定code

VOLUME ["/data","testdata"]
複製代碼

ENV

設置環境變量

ENV AUTHOR vaad
ENV VERSION 1.1.0
複製代碼

ARG

外部啓動容器後傳入的參數

ARG PYTHON python3
複製代碼

RUN

構建image的時候執行的命令,建議爲shell格式;RUN能夠用ENV和ARG的值

RUN apt-get update && \
apt-get install -y \
$PYTHON \
vim
複製代碼

ENTRYPOINT && CMD

運行容器時執行的命令,建議爲exec格式;CMD只能夠用ENV的值,可是建議不用

方式一 只用ENTRYPOINT
ENTRYPOINT ["echo","hello"]

方式二 只用CMD
CMD ["echo","hello"]

方式三 ENTRYPOINT+CMD(建議使用的方式)
ENTRYPOINT ["echo"]
CMD ["hello","world"]

假如經過DockerFile建立了名字爲vu的鏡像,能夠
# docker run vu
對於方式三來講,想當於執行了echo hello world
或者
#docker run vu test
對於方式三來講,至關於執行了echo test
複製代碼

USER

指定執行命令的用戶,目前還不會,須要進入容器配置
USER reet
複製代碼

一個簡化的Dockerfile

FROM ubuntu:14.04

MAINTAINER steven
MAINTAINER steven199409@outlook.com

LABEL version="1.1.0"
LABEL description="This is a test try for docker"

ARG PYTHON

ADD . /temp/

RUN apt-get update && apt-get install -y \
vim \
$PYTHON \
openssh-server
RUN useradd --create-home --no-log-init -G sudo wuhongwei

WORKDIR /

VOLUME ["/data"]
複製代碼
相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息