这几天准备在配置新版本的测试环境,因为之前的也是用docker跑tomcat,但是现在新办法直接砍掉一部分tomcat,直接用java来跑依赖包。这对我们运维来说就蛋疼了,确实是没有用docker直接跑jar包的经验,网上搜了一堆零零碎碎的资料,最后到底还是跑起来了,具体实现还需要完善,今天先写一些下来记录一下,以免再碰到此类问题。
交代一下具体背景情况:
1、jar包在普通环境上的运行脚本已经写好,jar包也已经做好,统一归档到一个目录下面几个分支目录。
2、用的是官方java的alpine-7-jre镜像
3、docker用的是1.11,宿主机跑的是ubuntu14.04 LTS
4、为了方便pull镜像,自己在阿里云仓库构建了官方的镜像,另外加上一些常用的工具如:wget vim 之类
直接docker run 的过程记录:
root@ubuntuandy:~# docker run --name jar --net=host registry.aliyuncs.com/andymo/jar root@ubuntuandy:~# docker ps -a
如上图所示:刚刚运行的官方镜像立即退出了!!我的命令并没有加上-d ,其实加了也一样会自动退出。
然后仔细去看了一下官方的dockerfile文件,如下:
FROM alpine:3.4 # A few problems with compiling Java from source: # 1. Oracle. Licensing prevents us from redistributing the official JDK. # 2. Compiling OpenJDK also requires the JDK to be installed, and it gets # &nb