首页 > 其他 > 详细

Dockerfile指令及docker的常用命令

时间:2017-02-24 12:30:08      阅读:233      评论:0      收藏:0      [点我收藏+]

Dockerfile
FROM:

FROM <image>  
FROM <image>:<tag>

MAINTAINER:

MAINTAINER <name>

RUN

RUN apt-get update
RUN mkdir /some_dir/

CMD:(设置docker run时启动的命令)

#ENTRYPOINT和CMD都是启动命令,
#如果只有一个那就执行那个。
#如果两个都有并且都是完整的命令,执行最后一个
#如果有ENTRYPOINT,CMD是参数,那么CMD就是ENTRYPOINT默认的参数
CMD ["executable","param1","param2"] (like an exec, this is the preferred form)  
CMD command param1 param2 (as a shell)  
CMD ["param1","param2"] (as default parameters to ENTRYPOINT)

ENTRYPOINT:(设置容器启动时的命令)

ENTRYPOINT ["executable", "param1", "param2"] (like an exec, the preferred form)  
ENTRYPOINT command param1 param2 (as a shell) 

USER:(指定容器的用户)

USER root      #默认就是root用户

EXPOSE:(容器的端口)

EXPOSE <port1> [<port2>.....]

ENV:(环境变量)

#设置了ENV后,后续的RUN命令都可以用
ENV <key> <value>
ENV JAVA_HOME /path/to/java/

ADD

#src必须在当前Dockerfile目录,不支持绝对目录,向ADD一个绝对目录的文件需要提前复制文件到当前目录
ADD <src> <dest>
ADD a_dir/ /usr/a_dir/

VOLUME:(很麻烦的一个东西也很重要)

WORKDIR:(设置容器内的工作目录)

#在/usr/local下创建src目录
WORKDIR /usr WORKDIR /local mkdir src/

ONBUILD:(在子镜像中执行)

 

docker的常用命令:

docker build -t <image> <Dockerfile_dir>
docker build -t ubuntu:16.04 .

docke run -it --name <name> <image_name>
docker run -it --name test -p 5000:5000 ubuntu:16.04 /bin/bash

docker logs -f <容器名orID>

docker ps
docker ps -a
docker rm $(docker ps -a -q)      #删除所有容器
docker images
docker rmi <image_name>
docker rmi $(docker images | grep none | awk ‘{print $3}‘ | sort -r)

docker stop <container>
docker start <container>
docker kill <container>
docker attach <container>
docker inspect <container>
docker exet -it <conatainer> /bin/bash #进入容器并给个终端
docker cp <container>:/path/file .    #将容器内东西拷出来

#A的容器保存复制到B启动
  #A
docker save <container> > ./save.tar
scp save.tar <user>@<ip>:<path>
  #B
docker load save.tar

 

Dockerfile指令及docker的常用命令

原文:http://www.cnblogs.com/badboyf/p/6437857.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!