环境:Centos7.7 Docker
目的:制作jdk1.8+java项目简易镜像,上传到docker hub
问题解决借鉴:https://blog.csdn.net/chengqiuming/article/details/79038772
https://blog.csdn.net/wzygis/article/details/78205867
https://docs.microsoft.com/zh-tw/visualstudio/docker/tutorials/share-your-app
上网下载jdk1.8、tomcat8压缩包,并上传本地虚拟机(或服务器)/home/docker;路径自定,仅供参考;
建议先将压缩包在当前路径解压一遍,这样做的目的是为了获知压缩包解压后文件名是怎样的;
编辑Dockerfile文件;建议文件名为Dockerfile(官方建议),否则在生成镜像时需要 -y 指定dockerfile文件;
vim Dockerfile
FROM centos:7.7.1908
MAINTAINER doubitv<doubitv@qq.com>
COPY readme.txt /user/local/src/readme.txt
COPY weather-0.0.1-SNAPSHOT.jar /usr/local/src/weather-0.0.1-SNAPSHOT.jar
ADD jdk-8u51-linux-x64.tar.gz /usr/local/src
RUN yum -y install vim
WORKDIR /usr/local/src
ENV JAVA_HOME /usr/local/src/jdk1.8.0_51
ENV PATH $JAVA_HOME/bin:$PATH
ENV CLASSPATH $JAVA_HOME/lib
EXPOSE 8082
CMD java -jar weather-0.0.1-SNAPSHOT.jar
关于CMD需要注意:如果有多条CMD命令,只有最后一行生效
参考:https://blog.csdn.net/chengqiuming/article/details/79038772
构建镜像
docker build -t doubitv/weather:2.0 .
版本号2.0,如果不指定版本号默认为latest
docker build -t doubitv/weather . #如果不指定版本号为图片下方weather:latest
现在,上docker官网,确保你有一个账户,登录docker
docker login -u 用户名 -p 密码
它这里有个警告,好像账户敏感信息会被保存到本地
更改你要上传的docker镜像名称,将你的docker账户名加上并声明版本号
参考:https://docs.microsoft.com/zh-tw/visualstudio/docker/tutorials/share-your-app
将刚才改名字的docker镜像上传到Docker Hub
docker push doubitv/weather:2.0
查看自己生成的镜像
结束
2021-09-02