如何创建一个安全的Docker基镜像

如题所述

** 构建一个Java环境基镜像 **

正如我刚解释的,Alpine Linux是一个构建自有镜像时不错的选择,因此,我们在此将使用它来构建简洁高效的Docker镜像,我们开始吧!

组合:Alpine + bash

每个Dockerfile第一个指令都是指定它的父级容器,通常是用于继承,在我们的例子中是<code>alpine:latest</code>:
sh

FROM alpine:latest

MAINTAINER cSphere <docker@csphere.cn>

我们同时声明了谁为这个镜像负责,这个信息对上传到Docker Hub的镜像是必要的。

就这样,你就有了往下操作的基础,接下来安装我们选好的shell,把下边的命令加上:
sh

RUN apk add --no-cache --update-cache bash

CMD ["/bin/bash"]

最终的Dockerfile是这样:

```sh

FROM alpine:latest

MAINTAINER cSphere < docker@csphere.cn >

RUN apk add --no-cache --update-cache bash

CMD ["/bin/bash"]

```

好了,现在我们构建容器:
sh

$ docker build -t my-java-base-image .

Sending build context to Docker daemon 2.048 kB

Step 1 : FROM alpine:latest

---> 2314ad3eeb90

Step 2 : MAINTAINER cSphere <docker@csphere.cn>

---> Running in 63433312d77e

---> bfe94713797a

Removing intermediate container 63433312d77e

... 省略若干行

Step 4 : CMD /bin/bash

---> Running in d2291684b797

---> ecc443d68f27

Removing intermediate container d2291684b797

Successfully built ecc443d68f27

并且运行它:
sh

$ docker run --rm -ti my-java-base-image

bash-4.3#

成功了!我们有了一个运行着bash的Alpine Linux。
温馨提示:内容为网友见解,仅供参考
第1个回答  2017-03-10
构建一个Java环境基镜像 ** 正如我刚解释的,Alpine Linux是一个构建自有镜像时不错的选择,因此,我们在此将使用它来构建简洁高效的Docker镜像,我们开始吧! 组合:Alpine + bash 每个Dockerfile第一个指令都是指定它的父级容器
相似回答