1.打包镜像
首先需要将自己的jar/war文件和Dockerfile整理出来,以备使用。
将两个文件上传到服务器中。
Dockerfile文件参数修改:
FROM openjdk:8-jdk-alpine
VOLUME /tmp
RUN apk --no-cache add tzdata ttf-dejavu && \
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
echo "Asia/Shanghai" > /etc/timezone
COPY ./Bug3Porject-1.0.0-SNAPSHOT.war app.war
ENV JAVA_OPTS=""
EXPOSE 9000
ENTRYPOINT java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /app.war
需要修改COPY中的参数,将./Bug3Porject-1.0.0-SNAPSHOT.war改成真实jar/war包名称。
在两个文件的目录下执行命令,构建镜像:
docker build -t bug3project ./
【注】bug3project 这个名称需要小写。
构建镜像过程如下图,出现Successfully xxx即为构建成功,其中 bug3project:latest 为本地服务器中的镜像名:版本号。
之后通过 docker images查询镜像即可查询刚刚构建的镜像
2.推送远端
2.1给推送的镜像打新镜像标签
docker tag bug3project:latest image2.docker.xx.com/tzrtest/bug3test:1.0.0
(1)bug3project:latest
是本地服务器的镜像名称和版本
(2)image2.docker.xx.com/tzrtest/bug3test:1.0.0
image2.docker.xx.com是远程的镜像仓库地址,tzrtest表示命名空间或者叫项目名,bug3test:1.0.0表示推送到远程的镜像名称:版本号
2.2推送
docker push image2.docker.xx.com/tzrtest/bug3test:1.0.0
出现以下信息表示推送完成。
3.附加内容
3.1Dockerfile前端
FROM nginx:stable-alpine
#RUN apt-get update \
# && apt-get install -y nginx
COPY ./dist /usr/share/nginx/html
EXPOSE 80
CMD ["nginx","-g","daemon off;"]