新兵实战搭建CentOS7下docker+springboot项目+nginx反向代理(一)
新兵实战搭建CentOS7下docker+springboot项目+nginx反向代理
工作之余把之前学的串起来 后面把前端也加进来 形成一个体系,对未来开发可以作为参考
1.Springboot打包
网上快速搭建一个springboot的教程很多这里省略。测试本地环境可以运行成功后进行项目打包工作。打包有两种形式,war包与jar包。springboot官方推荐打包为jar包 。其中已经包含了一个tomcat服务器。打开idea编辑器,右侧maven工具箱的Lifecycle先后运行compiler package指令。如果有报错 应该是依赖包没有装好 点clean后重新下载必须的依赖。
打包完成后 可以看到项目根目录下的target目录下多了一个项目名+版本号命名的jar包。
2.Springboot配置docker
为了便于docker容器化应用 需要在springboot中配置docker.
1.添加依赖。在pom.xml配置文件中加入docker maven插件。之前按照网上教程${docker.image.prefix}会报错 暂时没解决.只能手动指定docker镜像名词为dockertest。
<!-- Docker maven plugin --> <plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>1.0.0</version> <configuration> <imageName>dockertest/${project.artifactId}</imageName> <dockerDirectory>src/main/docker</dockerDirectory> <resources> <resource> <targetPath>/</targetPath> <directory>${project.build.directory}</directory> <include>${project.build.finalName}.jar</include> </resource> </resources> </configuration> </plugin>
2.编写dockerFile文件。在项目src/main路径下新建docker文件夹。在该文件夹下新建DockFile文件。
FROM openjdk:8-jdk-alpine VOLUME /tmp ADD engine_three-0.0.1-SNAPSHOT.jar app.jar RUN sh -c 'touch /app.jar' ENV JAVA_OPTS="" ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
解释下这个配置文件:
VOLUME 指定了临时文件目录为/tmp。其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp。改步骤是可选的,如果涉及到文件系统的应用就很有必要了。/tmp目录用来持久化到 Docker 数据文件夹,因为 Spring Boot 使用的内嵌 Tomcat 容器默认使用/tmp作为工作目录
项目的 jar 文件作为 “app.jar” 添加到容器的
ENTRYPOINT 执行项目 app.jar。为了缩短 Tomcat 启动时间,添加一个系统属性指向 “/dev/urandom” 作为 Entropy Source
然后项目重新编译打包完成。
测试浏览器打开localhost:8080
测试项目通过。
下一章使用本地虚拟机搭建一个centos环境。
- 新兵实战搭建CentOS7下docker+springboot项目+nginx反向代理 (二)
- 新兵实战搭建CentOS7下docker+springboot项目+nginx反向代理 (三)
- 实战mysql集群搭建(一)--centos7下二进制安装mysql-5.6
- 【服务器实战搭建】centos7下使用yum安装mysql
- CentOS 7下 YUM 本地仓库的搭建
- Centos7下nginx+owncloud+php+mysql搭建个人私有云
- CentOS7下搭建postfix邮件服务器实现extmail的web访问
- Linux+Apache+Oracle+php Centos7下环境搭建 安装Oracle 用yum安装Apache 安装php php与oracle连接
- CentOS7下java环境的搭建教程
- CentOS 7下Mongodb副本集搭建
- CentOS 7下Mongodb副本集搭建
- CentOS7下搭建postfix邮件服务器实现extmail的web访问
- Centos7下LAMP环境搭建,常用软件安装卸载以及进程查看与操作
- CentOS 7下YUM 本地仓库的搭建详细步骤
- Centos7下Java开发基本环境搭建
- centos7下gitlab服务器搭建
- Centos7下搭建LAMP平台环境
- CentOS7下搭建hadoop2.7.3完全分布式
- CentOS7下 Hadoop2.7.3+Spark2.1.0 集群环境搭建(1NN+2DN)
- CentOS7下搭建FTP服务器