我们可以创建一个包含jdk的基础镜像 java8:latest,然后再创建一个基于java8:latest的resin镜像,但是我之前装过jdk的环境,所以直接创建resin镜像了。
准备下载resin-4.0.44放在/opt目录
1、先随意下载一个基础镜像(公司的网络是在没办法吐槽,centos一直下载不下来,java镜像一次搞定
sudo docker pull java:latest
下载成功后可以查看一下镜像信息
docker images
详细命令请看https://my.oschina.net/nonstop/blog/863213
2、编辑Dockerfile
cd /opt
touch Dockerfile
vim Dockerfile
内容如下:
FROM java:latest ADD resin-4.0.44 /opt/resin4 EXPOSE 8080 CMD ["/opt/resin4/bin/resin.sh","console"]
3、然后我们给新产生的镜像名称叫resin4:latest,在当前文件夹下面运行命令:
docker build -t resin4:latest .
-t后面就是镜像的名称。最后的.是告诉docker Dockerfile的位置在当前目录。
然后就是一个构建过程。构建成功后,使用docker images。可以看到已经有resin4的镜像。
4、基于镜像启动容器
sudo docker run --name test -d -P 18081:8080 resin4:latest
现在我们可以用访问一下地址
curl 'http://127.0.0.1:18081' -v
5、在resin镜像中部署web项目
(1)将web项目test 打包到/opt目录(各位看客自己随意)
(2)将web项目test 挂载到resin的虚拟目录中
sudo docker run --name test1 -d -P 18082:8080 -v /opt/test:/opt/resin4/webapps/ROOT resin4:latest
然后访问地址即可
curl 'http://127.0.0.1:18082' -v