docker-compose部署项目
-
前言
最近有小伙伴来咨询自己的开源项目,我很是激动,但是我没有部署一个线上版本,所以只能让他们拉项目本地跑起来。然后告诉他们那个功能在哪里哪里。所以我准备部署一个线上版本,于是就有了这篇博文,主要做下过程记录。 首先想到的就是java -jar或是nohup java -jar 直接运行jar包,但是总是不愿意使用这种老土的方式。后来查了一些资料,综合考虑下,决定选用docker-compose 来部署我的项目。 如果部署的是war包,请移步:https://blog.csdn.net/HXNLYW/article/details/105585745
-
基础环境准备
Docker-compose基础及安装:http://www.javadaily.cn/articles/2019/11/27/1574852024888.html github下载很慢,提供下我下载了半个小时的版本: https://pan.baidu.com/s/1GzBT-JPbifHgYOEmX6RhzQ 提取码:iplz
-
采用docker-compose部署项目
version: "3" services: # 网关 gateway-service: # 指定容器名称 container_name: gateway # 重启机制 restart: always image: java:8 volumes: # 本地jar包路径 - ./ridgecloud-gateway.jar:/app.jar # 挂载日志 -v A:B ,A指宿主机位置,B指容器位置 - ./logs:/logs # 指定容器时间为宿主机时间 - /etc/localtime:/etc/localtime:ro # 上传文件 - /data/ridgecloud/files:/data/ridgecloud/files # 访问端口 ports: - "8888:8080" environment: # 指定时区 - TZ=Asia/Shanghai # nacos指定分组 - nacos_group=product_beta # 指定注册中心,配置中心地址 - nacos_url=10.0.3.31:8848 - nacos_namespace=dev #启动容器后执行的命令 entrypoint: java -jar -Dserver.port=8080 -Dspring.profiles.active=dev app.jar
-
pom打包配置
<build> <!--自定义打包文件名--> <finalName>gourd-hu</finalName> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <fork>true</fork> <!--启动类路径--> <mainClass>com.gourd.hu.ServiceHuApplication</mainClass> </configuration> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
-
属性文件配置
# Tomcat server: port: 9201 servlet: context-path: /config # Spring spring: application: # 应用名称 name: ridgecloud-system profiles: # 环境配置 active: dev cloud: nacos: discovery: # 服务注册地址 server-addr: ${nacos_url:10.0.0.40:8848} group: ${nacos_group:system_group_jh} namespace: ${nacos_namespace:ridge_cloud} config: # 配置中心地址 server-addr: ${nacos_url:10.0.0.40:8848} # 配置文件格式 file-extension: yml # 共享配置 shared-configs: - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}