日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Dockerfile使用

 印度阿三17 2019-09-16

Dockerfile

Docker可以通過讀取Dockerfile中的指令自動構(gòu)建image。 Dockerfile是一個文本文檔,文檔中包含用戶可以在命令行上調(diào)用以構(gòu)建image的所有命令。 使用docker build 命令用戶可以創(chuàng)建一個連續(xù)執(zhí)行多個命令行指令的自動構(gòu)建程序。

使用

docker build Path命令根據(jù)Dockerfile來構(gòu)建一個鏡像, Path可以是磁盤上的文件夾或是git倉庫

命令

  • FROM

    指定基礎(chǔ)鏡像,必須是第一行非注釋指令

  • MAINTAINER

    指定鏡像的作者信息

  • RUN

    指定鏡像中運行的指令, 例如:

    你想要構(gòu)建你的django應(yīng)用,那么你在django中所有使用的模塊,應(yīng)當(dāng)在鏡像構(gòu)建時裝載,所以此時應(yīng)使用

    RUN pip install -r requirements.txt

  • EXPOSE

    指定一個或多個端口

    但是同樣需要在RUN命令需要指定端口的映射

  • CMD

    指定容器運行中的默認(rèn)命令, docker run指令會將其覆蓋

    容器運行時執(zhí)行舉例: 當(dāng)容器運行時你應(yīng)當(dāng)啟動你的django程序,此時應(yīng)使用:

    CMD python manage.py runserver 0.0.0.0:8000

  • ENTRYPOINT

    與CMD類似但是不會被docker run 時指定的命令覆蓋, 如果想覆蓋需要添加指令

  • ADD

    將文件或目錄復(fù)制到Dockerfile創(chuàng)建的鏡像中

    包含類似的解壓功能

  • COPY

    將文件或目錄復(fù)制到Dockerfile創(chuàng)建的鏡像中

    單純的復(fù)制文件

  • VOLUME

    掛載,大家知道容器有隔離的作用,你可以把系統(tǒng)和容器想象為兩個互不干擾的環(huán)境,那么我們要想要將兩個環(huán)境中的某一個文件進(jìn)行共通,那么就用到此命令

    VOLUME /opt/logs /var/logs

    上面命令表示將系統(tǒng)的/opt/logs文件夾掛載到容器內(nèi)的/var/logs文件夾上,這就意味在系統(tǒng)/opt/logs的文件夾發(fā)生改變,相應(yīng)的容器內(nèi)的/var/logs文件夾立即會讀取到發(fā)生的變化;反之亦然

  • WORKDIR

    在容器內(nèi)部創(chuàng)建工作目錄, 絕對目錄,我們在容器內(nèi)的文件路徑就都可以依照此處的WORKDIR來使用相對路徑

  • ENV

    設(shè)置環(huán)境變量

  • USER

    指定運行鏡像的用戶身份

  • ONBUILD

    為鏡像添加觸發(fā)器,當(dāng)被用于子鏡像時,將會觸發(fā)

  • shell和exec模式

    RUN CMD ENTRYPOINT都支持這兩種命令模式

    • shell模式 RUN /bin/bash -c 'echo $HOME'

    • exec模式 RUN ["/bin/bash", "-c", "echo hello"]

e.g:

FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
COPY requirements.txt /code/
RUN pip install -r requirements.txt
COPY . /code/
CMD python manage.py runserver 0.0.0.0:8000

docker build .
    基礎(chǔ)鏡像使用python,tag為3
    設(shè)置環(huán)境變量PYTHONUNBUFFERED值為1
    執(zhí)行命令: mkdir /code
    將容器內(nèi)的/code目錄設(shè)置為工作目錄
    將當(dāng)前目錄下的requirements.txt文件拷貝到容器內(nèi)的/code下
    執(zhí)行命令: pip install -r requirements.txt
    將當(dāng)前目錄下的所有文件拷貝到容器內(nèi)的/code下
docker run image
    執(zhí)行命令: python manage.py runserver 0.0.0.0:8000

docker build Path

來源:https://www./content-4-454301.html

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多