docker学习记录1

起因

现在自己学习微服务,服务器越来越多,虽然自己写了一些shell脚本来安装需要的软件,比如mysql,redis,jdk等等,但是还是好麻烦。希望学习docker能够快速安装部署这些东西。

 

记录一些学习内容

ADD命令与COPY的区别

建议使用copy,因为是字面意思的命令,而add命令会有一些额外操作,比如如果add的是一个tar压缩包,压缩格式为 gzip , bzip2 以及 xz 的情况

下,就会解压,其他压缩包就不会,如果是个url,也会把资源下载下来。所以不同情况下的操作不太一样,除非解压缩tar的情况。

 

ENTRYPOINT

docker run 镜像名 参数

这个时候参数会覆盖CMD命令里的参数

而如果使用的是entrypoint执行命令的话,参数是作为额外的参数传给cmd的

 

ENV

相当于可以定义变量

ENV VERSION=1.0 DEBUG=on \
NAME="Happy Feet"

然后使用$VERSION就可以啦

 

WORKDIR

RUN cd /app
RUN echo "hello" > world.txt

每个run都是在各自的层执行的,所以第一个cd并不会切换目录

应该使用workdir来切换工作目录

 

posted @ 2018-03-29 21:14  abcwt112  阅读(125)  评论(0编辑  收藏  举报