4. 构建一个镜像
- 构建hello-world
docker镜像通过Dockerfile构建。
创建名称为Dockerfile空白文件,其中录入以下内容:
FROM alpine:3.9
cmd ["echo", "hello world"]
此文件的意思是,基于alpine:3.9这个微型linux镜像构建,并在每次启动docker镜像的时候执行 "echo"命令输出一
个“hello world”
在Dockerfile所在文件夹使用以下命令构建:
docker build -t glf_hello .
这个命令意思是,以当前目录为上下文环境,构建出一个名称为 glf_hello:latest 的docker镜像。
完成后,再使用docker images命令查看:
即可运行此镜像:
docker run glf_hello
即可看到如下输出:
- 修改nginx镜像
使用run命令来在创建镜像时修改镜像中的内容,此处run命令执行 echo一段文字来更改nginx的默认首页内容
FROM nginx
RUN echo '<h1>hello docker</h1>' > /usr/share/nginx/html/index.html
使用以下命令构建
docker build -t glf_nginx .
运行构建的镜像查看
docker run -d --name=mynginx -p 80:80 glf_nginx
可以看到nginx的默认首页内容已经更换
- 构建复杂的jdk镜像
以下为Dockfile内容
FROM centos:7
ENV JAVA_HOME /opt/jdk
ENV PATH ${JAVA_HOME}/bin:${PATH}
COPY jdk1.8.0_121.tar.gz /tmp/jdk1.8.0_121.tar.gz
RUN mkdir -p "$JAVA_HOME"; \
tar --extract --file