在传统项目向基于容器和微服务的架构迁移时,其中最基本的操作是制作镜像。本文介绍制作一个基础的jdk镜像,并push到私有仓库。
1. 准备文件
- jdk
下载jdk-7u79-linux-x64.tar.gz,拷贝过来即可
- java.sh
设置java的环境变量,内容为:
export JAVA_HOME=/opt/jdk1.7.0_79
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/
2. Dockerfile
最重要的是Dockerfile,内容为:
# build the base image: jdk
# this is the docker file, use the ubuntu 14.04
# VERSION 1
# Author: jthink
# the basic image
FROM apline
# maintainer
MAINTAINER jackyue locutus@foxmail.com
# copy the file
ADD ./sources.list /etc/apt
RUN apk update && apk install tar unzip
ADD ./jdk-7u79-linux-x64.tar.gz /opt
ADD ./java.sh /etc/profile.d // 设置java环境变量
# CMD to start
CMD /usr/sbin/sshd -D
3. 构建和推送
# docker build -t 192.168.xx.xx:5000/ubuntu:14.04-jdk7 .
# docker push 192.168.xx.xx:5000/ubuntu:14.04-jdk7
4. 启动容器
# docker run -it --name ubuntu-jdk7 192.168.xx.xx:5000/ubuntu:14.04-jdk7 /bin/bash