Files
aiot-platform/Dockerfile.gateway

39 lines
1.0 KiB
Docker
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Build Stage
FROM maven:3.9-eclipse-temurin-17 AS build
WORKDIR /app
# 配置 Maven 使用阿里云镜像源
COPY settings.xml /usr/share/maven/conf/settings.xml
# 复制项目源码
COPY . .
# 执行 Maven 构建
# 这里的 install 是为了让 gateway 能引用到本地构建的 core/api 等模块依赖
# -pl 指定只构建 gateway 及其依赖
# -am (also make dependents) 构建依赖模块
RUN mvn -B clean install -DskipTests -Dmaven.javadoc.skip=true
# Run Stage
FROM eclipse-temurin:17-jre
WORKDIR /app
# 设置时区
ENV TZ=Asia/Shanghai
# 复制网关 jar 包
# 注意路径viewshanghai-module-iot/viewshanghai-module-iot-gateway/target/viewshanghai-module-iot-gateway.jar
COPY --from=build /app/viewshanghai-module-iot/viewshanghai-module-iot-gateway/target/viewshanghai-module-iot-gateway.jar app.jar
# 暴露端口
# MQTT
EXPOSE 1883
# HTTP Gateway
EXPOSE 8092
# TCP Gateway (Optional)
EXPOSE 8091
# 启动命令
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-Duser.timezone=Asia/Shanghai", "-jar", "app.jar"]