基于Idea一键构建容器部署
- 基于idea的docker插件完成一件上传到docker并完成服务的启动
- Idea安装Docker插件,并配置远程地址参数
engine APIURL:tcp://192.168.154.129:2375
- 在需要添加部署的项目的根目录下创建一个Dockerfile文件
# 设置JAVA版本 FROM java:8-alpine # 指定存储卷, 任何向/tmp写入的信息都不会记录到容器存储层 VOLUME /tmp COPY /target/app.jar /app.jar # 设置JVM运行参数, 这里限定下内存大小,减少开销 ENV JAVA_OPTS="\ -server \ -Xms256m \ -Xmx512m \ -XX:MetaspaceSize=256m \ -XX:MaxMetaspaceSize=512m" # 入口点, 执行JAVA运行命令 ENTRYPOINT ["java", "-jar", "/app.jar"]
- 在services窗口点开后连接远程docker
- 选择创建新的Deployment
Name:docker-userservice(自定义) Dockerfile:user_service/Dockerfile(选择当前项目下的Dockerfile文件) Content folder:user_service(自动注入) image tag:userservice:1.0(定义一个版本) Container name:user_service(生成的容器名) Bind prots:8081:8081(端口映射) Run options:--network=my-net(在同一个my-net网关下启动)
- 配置完成后,点击run执行
- 测试,在服务器的eureka控制台查看服务是否正常注册,在docekr容器内查看服务是否正常启动即可
- 该模块遇到一个问题,子模块user_service依赖公共模块api_service,不能单独打包,后续有时间再研究