DockerFileコマンドの概要

免責事項:この記事はブロガーオリジナル記事ですが、許可ブロガーなく再生してはなりません。https://blog.csdn.net/wufaliang003/article/details/90746346

説明のみWindows以外のシステム。

FROM [:] [AS]:ベースイメージを設定します

  1. FROM alpine:latest

RUN \ [ "実行"、 "PARAM1"、 "PARAM2"]:シェルスクリプトを実行します。ドッキングウィンドウのない実装は、読み取り専用の層の別の層を追加しなくなるので、あまり使用RUNが来ました。

  1. RUN /bin/bash -c 'source $HOME/.bashrc; \

  2. echo $HOME'

  3. 等同于

  4. RUN /bin/bash -c 'source $HOME/.bashrc; echo $HOME'

  5. 等同于

  6. RUN ["/bin/bash", "-c", "source $HOME/.bashrc; echo $HOME"]

CMD [ "実行可能"、 "PARAM1"、 "PARAM2"] \ [ "のparam1"、 "PARAM2"] \コマンドのparam1のPARAM2:DockerFile一つだけCMDは、複数の最後の実行されます。それはほとんどデフォルトのコマンドは、コンテナの開始後に実行されることを意味します。

  1. FROM *:*

  2. CMD ["catalina.sh", "run"]

LABEL = = ...:イメージタグ

  1. LABEL "com.example.vendor"="ACME Incorporated"

  2. LABEL com.example.label-with-value="foo"

  3. LABEL version="1.0"

  4. LABEL description="This text illustrates \

  5. that label-values can span multiple lines."

EXPOSE [/ ...]:暴露コンテナ港

  1. EXPOSE 80/tcp

  2. EXPOSE 80/udp

ENV \ =:コンテナ環境変数を設定します。あなたが使用できるドッキングウィンドウの実行--env =環境変数を変更

  1. ENV myName John Doe

  2. ENV myDog Rex The Dog

  3. ENV myCat fluffy

ADD [--chown =:] ... \ [--chown =:] [ ""、... ""]:ミラーに追加し、新しいファイルをコピーするか、リモートのファイルをフォルダまたはURLファイルシステム。WORKDIRによって定義された絶対または相対パス。

  1. ADD hom* /mydir/         # 添加所有以 "hom" 开头的文件

  2. ADD hom?.txt /mydir/     # ? 替换任何单个的字符, e.g., "home.txt"

  3. ADD test relativeDir/    # 添加 "test" 到 `WORKDIR`/relativeDir/

  4. ADD test /absoluteDir/   # 添加 "test" 到 /absoluteDir/

  5. ENV cpath /home/zb

  6. ARG zbpath=/home/lala

  7. WORKDIR $cpath

  8. ADD **.jpg $cpath

  9. ADD **.jpg $zbpath

  10. # 添加含有特殊字符的文件或者文件夹时如“[]”,需要遵循 golang 的规则将它们进行转义,以防它们为匹配模式

  11. ADD arr[[]0].txt /mydir/ # 复制一个文件名为 "arr[0].txt" 到 /mydir/

  12. # 通过 --chown 指定添加文件或者文件夹的用户名和组名

  13. ADD --chown=55:mygroup files* /somedir/

  14. ADD --chown=bin files* /somedir/

  15. ADD --chown=1 files* /somedir/

  16. ADD --chown=10:11 files* /somedir/

COPY [--chown =:] ... / [--chown =:] [ ""、... ""]:ADDコマンドほとんど。

ENTRYPOINT [ "実行"、 "PARAM1"、 "PARAM2"] /コマンドPARAM1のPARAM2:容器は、コマンドの実行を開始します。フォームが定義されている場合ENTRYPOINTは次にCMD CMD [「PARAM1」、「PARAM2」] JSON配列は、第一パラメータと第二パラメータENTRYPOINTなりなります

  1. ARG VERSION=latest

  2. FROM alpine:$VERSION

  3. ENTRYPOINT ["ls", "-la"]

ENTRYPOINTとCMDの比較

1.場合、最後の複数ENTRYPOINT CMDそれらのみ実行

2.容器は実行可能ファイルがENTRYPOINTを定義する必要があります

定義とENTRYPOINT CMD、CMDの両方がデフォルトパラメータENTRYPOINTである3

CMDで指定されたドッキングウィンドウrunコマンド、CMDが上書きされます4。

VOLUME [ "/データ"]:ミラーボリュームがマウント。自動的にホスト上の対応する共有ディレクトリを生成します。

  1. RUN mkdir /data1

  2. RUN touch /data1/2a.txt

  3. VOLUME /data1

  4. # 通过命令 docker inspect hasVvolume

  5. "Mounts": [

  6.            {

  7.                "Type": "volume",

  8.                "Name": "0d63fcdf621ee728bb85dfcc2b30f3acddf6489a0e93b81ced17f05860497321",

  9.                "Source": "/var/lib/docker/volumes/0d63fcdf621ee728bb85dfcc2b30f3acddf6489a0e93b81ced17f05860497321/_data",

  10.                "Destination": "/data1",

  11.                "Driver": "local",

  12.                "Mode": "",

  13.                "RW": true,

  14.                "Propagation": ""

  15.            }

  16.        ]

  17. ===============================================================================================

  18. =========================

  19. # 也可以通过 docker run -v 来挂载共享目录,这时 Source 指出 -v 时定义的目录

  20. "Mounts": [

  21.        {

  22.                "Type": "bind",

  23.                "Source": "/Users/zhangbo/Desktop/data1",

  24.                "Destination": "/data1",

  25.                "Mode": "",

  26.                "RW": true,

  27.                "Propagation": "rprivate"

  28.            }

  29.        ]

コンテナ共有ディレクトリ

  1. # 使用 --volumes-from,达到容器中文件夹共享

  2. docker run -itd --name noVvolume-v-1 --volumes-from noVvolume-v 48cd9e43b6a9

ユーザー[:] / [:]:ミラーにユーザーを追加します

WORKDIR /パス/に/ WORKDIRまたはWORKDIR to_workdir /パス/に/ WORKDIR:为RUN、CMD、ENTRYPOINT、COPYは、ADD创建工作目录

  1. ENV DIRPATH /path

  2. WORKDIR $DIRPATH/$DIRNAME

  3. RUN pwd

ARG [=]:内の変数ドッカファイル

  1. FROM busybox

  2. ARG user1="zhang bo"

  3. ARG buildno

  4. RUN echo $user1

  5. RUN echo $buildno

  6. Step */* : RUN echo $user1

  7. ---> Running in a56a602a8f87

  8. zhang bo

  9. Removing intermediate container a56a602a8f87

  10. ---> 3e9c6ec19129

  11. Step */* : RUN echo $buildno

  12. ---> Running in 6598768a1080

プレハブ変数

  1. FROM ubuntu

  2. ARG CONT_IMG_VER

  3. ENV CONT_IMG_VER ${CONT_IMG_VER:-v1.0.0}

  4. RUN echo $CONT_IMG_VER

  5. # 可以通过 --build-arg 标签进行给定的预制的变量。--build-arg <varname>=<value>

  6. docker run --build-arg CONT_IMG_VER=******* .

次のようにドッキングウィンドウ一般的に使用されるコマンドは、

管理コマンド:

  1.  container   管理容器

  2.  image       管理镜像

  3.  network     管理网络

  4.  node        管理Swarm节点

  5.  plugin      管理插件

  6.  secret      管理Docker secrets

  7.  service     管理服务

  8.  stack       管理Docker stacks

  9.  swarm       管理Swarm集群

  10.  system      查看系统信息

  11.  volume      管理卷

  12.  如:docker container ls 显示所有容器

通常のコマンド:

  1.  attach     进入一个运行的容器

  2.  build      从一个DockerFile构建镜像

  3.  commit     从容器创建一个镜像

  4.  cp          从容器和主机文件系统之间拷贝文件

  5.  create      创建一个容器

  6.  diff        检查容器文件系统上的更改

  7.  events      从服务器获取实时事件

  8.  exec        在正在运行的容器中运行命令

  9.  export      将容器的文件系统导出为tar存档

  10.  history     显示镜像的历史记录

  11.  images      查看镜像列表

  12.  import      从归档文件中创建镜像

  13.  info        显示系统范围的信息

  14.  inspect     返回Docker对象的低级信息

  15.  kill        kill运行中的容器

  16.  load        从存档或者STDIN加载镜像

  17.  login       登陆docker镜像仓库

  18.  logout      退出docker镜像仓库

  19.  logs        获取一个容器的日志

  20.  pause       暂停一个或多个容器中的所有进程

  21.  port        查看端口映射或容器的特定映射列表

  22.  ps          查看容器列表

  23.  pull        从镜像仓库拉取镜像

  24.  push        将本地的镜像上传到镜像仓库,要先登陆到镜像仓库

  25.  rename      重命名容器

  26.  restart     重启容器

  27.  rm          删除容器

  28.  rmi         删除镜像

  29.  run         创建一个新的容器并运行一个命令

  30.  save        将指定镜像保存成 tar 归档文件

  31.  search      从Docker Hub搜索镜像

  32.  start       启动容器

  33.  stats       实时显示容器资源使用情况的统计信息

  34.  stop       停止容器

  35.  tag         标记本地镜像,将其归入某一仓库

  36.  top         展示一个容器中运行的进程

  37.  unpause     恢复容器中所有的进程

  38.  update      更新容器配置

  39.  version     显示Docker的版本信息

  40.  wait        阻塞直到容器停止,然后打印退出代码

  41.  如:docker images 显示所有镜像

いいえマイクロチャネル世間の注目との見出し今日は、優れた記事は、更新を続けています。

 

 

おすすめ

転載: blog.csdn.net/wufaliang003/article/details/90746346