部署 docker 镜像参数优化
This commit is contained in:
parent
8569ff08a2
commit
94f95d1dcd
74
.dockerignore
Normal file
74
.dockerignore
Normal file
@ -0,0 +1,74 @@
|
||||
# 版本控制相关(不打包Git元数据)
|
||||
.git
|
||||
.gitignore
|
||||
.gitattributes
|
||||
.hg
|
||||
.svn
|
||||
.gitmodules
|
||||
|
||||
# IDE 配置文件(避免IDE配置污染镜像)
|
||||
.idea/
|
||||
*.iml
|
||||
*.iws
|
||||
*.ipr
|
||||
.vscode/
|
||||
*.sublime-*
|
||||
.gradle/
|
||||
build/
|
||||
|
||||
# 构建产物(仅保留最终JAR,排除中间产物)
|
||||
target/classes/
|
||||
target/test-classes/
|
||||
target/maven-status/
|
||||
target/generated-sources/
|
||||
target/generated-test-sources/
|
||||
!target/*.jar # 例外:保留打包好的JAR包
|
||||
!target/*.war # 若使用WAR打包
|
||||
|
||||
# 本地配置文件(防止开发环境配置泄露到生产镜像)
|
||||
*.properties
|
||||
*.yml
|
||||
*.yaml
|
||||
!src/main/resources/application-prod.yml # 例外:保留生产环境配置
|
||||
!src/main/resources/bootstrap-prod.yml
|
||||
|
||||
# 日志和临时文件
|
||||
logs/
|
||||
*.log
|
||||
*.tmp
|
||||
*.bak
|
||||
tmp/
|
||||
temp/
|
||||
|
||||
# 文档和说明文件(减小镜像体积)
|
||||
*.md
|
||||
*.txt
|
||||
*.docx
|
||||
*.pdf
|
||||
docs/
|
||||
examples/
|
||||
README*
|
||||
CHANGELOG*
|
||||
|
||||
# 敏感信息文件
|
||||
*.pem
|
||||
*.key
|
||||
*.cert
|
||||
*.pfx
|
||||
*.secret
|
||||
*.env
|
||||
*.local
|
||||
|
||||
# 脚本文件(运行镜像不需要源脚本)
|
||||
*.sh
|
||||
*.bat
|
||||
*.py
|
||||
!docker-entrypoint.sh # 例外:若有自定义启动脚本则保留
|
||||
|
||||
# 其他无关文件
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
*.zip
|
||||
*.tar.gz
|
||||
*.tar
|
||||
*.gz
|
||||
60
pom.xml
60
pom.xml
@ -326,21 +326,11 @@
|
||||
<mysql.user>web_dev</mysql.user>
|
||||
<mysql.pwd>Abc654321$^</mysql.pwd>
|
||||
<mysql.driver>com.mysql.cj.jdbc.Driver</mysql.driver>
|
||||
<!-- <mysql.host>159.75.249.163</mysql.host>-->
|
||||
<!-- <mysql.port>3306</mysql.port>-->
|
||||
<!-- <mysql.db>mall_prod</mysql.db>-->
|
||||
<!-- <mysql.user>root</mysql.user>-->
|
||||
<!-- <mysql.pwd>J0XivNvAcR14}pA6Cysm.E17</mysql.pwd>-->
|
||||
<!-- <mysql.driver>com.mysql.cj.jdbc.Driver</mysql.driver>-->
|
||||
<!-- redis配置 -->
|
||||
<redis.host>114.132.210.208</redis.host>
|
||||
<redis.database>15</redis.database>
|
||||
<redis.port>6379</redis.port>
|
||||
<redis.password>Gpff654321</redis.password>
|
||||
<!-- <redis.host>159.75.249.163</redis.host>-->
|
||||
<!-- <redis.database>15</redis.database>-->
|
||||
<!-- <redis.port>6480</redis.port>-->
|
||||
<!-- <redis.password>hwe9EgqgMAwY</redis.password>-->
|
||||
<!-- rabbitmq配置 -->
|
||||
<rabbitmq.host>114.132.210.208</rabbitmq.host>
|
||||
<rabbitmq.port>5672</rabbitmq.port>
|
||||
@ -480,17 +470,12 @@
|
||||
<!-- sentinel配置 -->
|
||||
<sentinel.transport.dashboard>172.16.0.11:8718</sentinel.transport.dashboard>
|
||||
<!-- mysql配置 -->
|
||||
<mysql.host>172.16.0.11</mysql.host>
|
||||
<mysql.host>172.16.0.9</mysql.host>
|
||||
<mysql.port>13306</mysql.port>
|
||||
<mysql.db>mall_prod</mysql.db>
|
||||
<mysql.user>webprod</mysql.user>
|
||||
<mysql.pwd>J1XivNvAcR21}pA6Cysm.E29</mysql.pwd>
|
||||
<mysql.driver>com.mysql.cj.jdbc.Driver</mysql.driver>
|
||||
<!-- redis5配置 -->
|
||||
<!-- <redis.host>172.16.0.11</redis.host>-->
|
||||
<!-- <redis.database>0</redis.database>-->
|
||||
<!-- <redis.port>6379</redis.port>-->
|
||||
<!-- <redis.password>aIqoc08IeuKBd4yl</redis.password>-->
|
||||
<!-- redis7配置 -->
|
||||
<redis.host>172.16.0.11</redis.host>
|
||||
<redis.database>0</redis.database>
|
||||
@ -515,17 +500,28 @@
|
||||
</activation>
|
||||
</profile>
|
||||
</profiles>
|
||||
|
||||
<build>
|
||||
|
||||
|
||||
<pluginManagement>
|
||||
|
||||
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<layers>
|
||||
<enabled>true</enabled>
|
||||
</layers>
|
||||
<!-- 排除开发时的配置文件 -->
|
||||
<excludes>
|
||||
<exclude>
|
||||
<groupId>org.projectlombok</groupId>
|
||||
<artifactId>lombok</artifactId>
|
||||
</exclude>
|
||||
</excludes>
|
||||
</configuration>
|
||||
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-dependency-plugin</artifactId>
|
||||
@ -550,12 +546,30 @@
|
||||
<!-- Docker 远程管理地址-->
|
||||
<dockerHost>${docker.host}</dockerHost>
|
||||
<!--定义基础镜像-->
|
||||
<baseImage>java:8</baseImage>
|
||||
<!-- <baseImage>java:8</baseImage>-->
|
||||
<!-- <baseImage>openjdk:8-jre</baseImage>-->
|
||||
<baseImage>openjdk:8-jre-alpine</baseImage>
|
||||
<!--定义容器启动命令,注意不能换行-->
|
||||
<entryPoint>["java", "-jar", "-Xms256m", "-Xmx512m", "-XX:PermSize=64M", "-XX:MaxPermSize=512M", "-Dspring.profiles.active=${spring.profile}", "-Duser.timezone=Asia/Shanghai", "/${project.build.finalName}.jar"]
|
||||
<entryPoint>["java", "-jar", "-Xms128m", "-Xmx512m", "-XX:MetaspaceSize=128m", "-XX:MaxMetaspaceSize=256m", "-XX:+UseContainerSupport", "-XX:MaxRAMPercentage=60.0", "-XX:+UseSerialGC", "-XX:MinHeapFreeRatio=40", "-XX:MaxHeapFreeRatio=60", "-Dspring.profiles.active=${spring.profile}", "-Duser.timezone=Asia/Shanghai", "/${project.build.finalName}.jar"]
|
||||
</entryPoint>
|
||||
|
||||
<!--推送镜像仓库校验安全证书,无安全证书无法推送-->
|
||||
<dockerCertPath>${docker.ca}</dockerCertPath>
|
||||
|
||||
<!-- 添加清理命令来过滤无用文件 -->
|
||||
<runs>
|
||||
<!-- 清理 APK 缓存(Alpine 镜像) -->
|
||||
<run>rm -rf /var/cache/apk/*</run>
|
||||
<!-- 删除 Maven 构建过程中产生的临时文件 -->
|
||||
<run>rm -rf /root/.m2</run>
|
||||
<!-- 删除可能存在的日志文件 -->
|
||||
<run>find / -name "*.log" -type f -delete 2>/dev/null || true</run>
|
||||
<!-- 删除测试相关文件 -->
|
||||
<run>find / -name "*test*" -type f -delete 2>/dev/null || true</run>
|
||||
<!-- 删除文档文件 -->
|
||||
<run>find / -name "*.md" -type f -delete 2>/dev/null || true</run>
|
||||
</runs>
|
||||
|
||||
<resources>
|
||||
<resource>
|
||||
<targetPath>/</targetPath>
|
||||
@ -565,6 +579,8 @@
|
||||
</resources>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
</build>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user