本以为在服务器上打包和本地一样easy。
踩坑无数。
1.编写Makefile
build:
mvn install -Dmaven.test.skip=true
REGISTRY ?= "registry.cn-beijing.aliyuncs.com/XXX"
VERSION ?= $(shell git describe --exact-match 2> /dev/null || \
git describe --match=$(git rev-parse --short=8 HEAD) --always --dirty --abbrev=8)
image: build
sudo docker build -f Dockerfile -t $(REGISTRY)/java-app:$(VERSION) .
sudo docker push $(REGISTRY)/java-app:$(VERSION)
文件中的格式极为重要:空格不要多点,tab符号要出现在正确地方。
这里贴一下觉得不错的文章,关于makefile:make 教程
2.环境搭建
1.java环境:jdk安装
2.maven环境
(修改setting中的localRepository的配置,如果用默认的~/.m2/repository 会出现依赖无法找到的异常,不知道问题的原因。)
项目打包
完成上述部署后,就可以愉快的在服务上打包,生成镜像了。
就是为什么安装好maven后,需要改本地仓库,这个有点摸不着头脑!