mirror of
https://gitee.com/pnoker/iot-dc3.git
synced 2026-10-31 02:01:51 +08:00
Native binaries cannot re-resolve the spring.profiles.active
${NODE_ENV:dev} placeholder at runtime: the AOT pass freezes the dev
profile (and application-dev.yml) into the image. RabbitEnvironmentConfig
then reads spring.env=dev and prefixes every exchange and queue with the
dev_<user> isolation tag, which silently splits the broker topology
against JVM services running with NODE_ENV=test (messages end up
NO_ROUTE between the two lines).
Build-time profile pinning does not reach the AOT snapshot (verified
with NODE_ENV, SPRING_PROFILES_ACTIVE env vars and MAVEN_OPTS system
properties). SPRING_ENV feeds the same EnvironmentPostProcessor through
the system-environment property source, which outranks profile YAML at
runtime, so one ENV default in native-runtime-base covers every native
target. Deployments that want an isolation tag can override the
variable.
Verified by rebuilding dc3-driver-virtual-native and running the image
bare: subscriptions now use untagged dc3.q.* names.
Co-Authored-By: Claude Code <noreply@anthropic.com>
1414 lines
64 KiB
Docker
1414 lines
64 KiB
Docker
#
|
|
# Copyright 2016-present the IoT DC3 original author or authors.
|
|
#
|
|
# This program is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU Affero General Public License as
|
|
# published by the Free Software Foundation, either version 3 of the
|
|
# License, or (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU Affero General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU Affero General Public License
|
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
#
|
|
|
|
# syntax=docker/dockerfile:1.6
|
|
|
|
# =============================================================================
|
|
# Unified multi-target Dockerfile for IoT DC3.
|
|
#
|
|
# Build context MUST be the repo root. Maven runs INSIDE the builder stage —
|
|
# no host JDK / Maven required. When the build context and args are unchanged,
|
|
# Docker BuildKit / Podman Buildah reuse the builder stage cache across service
|
|
# targets, so multiple service images do not rerun Maven.
|
|
#
|
|
# Build a single service:
|
|
# podman build --target dc3-gateway -t pnoker/dc3-gateway:dev .
|
|
#
|
|
# Build against a locally rebuilt JRE:
|
|
# podman build --build-arg DC3_JRE_IMAGE=localhost/pnoker/dc3-jre:21 \
|
|
# --target dc3-gateway -t localhost/dc3-gateway:dev .
|
|
#
|
|
# Build everything via compose (BuildKit reuses the builder stage):
|
|
# podman compose -f dc3/docker-compose-dev.yml build
|
|
#
|
|
# Multi-arch (CI):
|
|
# docker buildx build --platform linux/arm64,linux/amd64 \
|
|
# --target dc3-gateway --push --tag ... .
|
|
# =============================================================================
|
|
|
|
ARG DC3_JDK_IMAGE=docker.io/pnoker/dc3-jdk:21
|
|
ARG DC3_JRE_IMAGE=docker.io/pnoker/dc3-jre:21
|
|
# Native toolchain / runtime images for the *-native targets below. Same
|
|
# image families as the jar targets (dc3-jdk / dc3-jre), native in the tag.
|
|
ARG DC3_JDK_NATIVE_IMAGE=docker.io/pnoker/dc3-jdk:25-native
|
|
ARG DC3_NATIVE_IMAGE=docker.io/pnoker/dc3-jre:12-native
|
|
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Stage 1: builder — runs `mvn package` ONCE for the whole multi-module reactor.
|
|
#
|
|
# --platform=$BUILDPLATFORM forces the JDK to run on the host's native arch.
|
|
# JARs are platform-agnostic, so we never want Maven to run under QEMU
|
|
# emulation when producing arm64 + amd64 images.
|
|
#
|
|
# --mount=type=cache caches ~/.m2/repository across builds.
|
|
# -----------------------------------------------------------------------------
|
|
FROM --platform=$BUILDPLATFORM ${DC3_JDK_IMAGE} AS builder
|
|
LABEL dc3.author=pnoker
|
|
LABEL dc3.author.email=pnokers.icloud.com
|
|
|
|
ARG PROFILE=dev
|
|
ARG MAVEN_OPTS_EXTRA=""
|
|
ENV MAVEN_OPTS="${MAVEN_OPTS_EXTRA}"
|
|
|
|
WORKDIR /build
|
|
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
|
|
|
|
COPY . .
|
|
# settings-container.xml goes straight to Maven Central (no Aliyun mirror), so
|
|
# brand-new releases are visible immediately even when the mirror lags behind.
|
|
# The noop sync factory avoids resolver file-lock failures on BuildKit cache
|
|
# mounts (overlay-backed filesystems); only one Maven process runs per build.
|
|
RUN --mount=type=cache,target=/root/.m2/repository \
|
|
mvn -U -B -e -T 1C -s .mvn/settings-container.xml clean package -DskipTests \
|
|
-Daether.syncContext.named.factory=noop -P ${PROFILE}
|
|
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Stage 1N: native-builder — GraalVM native-image compilation for the DC3
|
|
# native service set (dc3-center/* + dc3-gateway).
|
|
#
|
|
# NOTE: this stage deliberately does NOT pin --platform=$BUILDPLATFORM. Native
|
|
# executables are platform-specific, so every target platform needs its own
|
|
# native-image run. Under multi-arch buildx the arm64 pass runs emulated and
|
|
# is SLOW — prefer per-arch runners, or build single-platform:
|
|
# docker buildx build --platform linux/amd64 --target dc3-gateway-native ...
|
|
#
|
|
# The reactor is `install`ed ONCE into the BuildKit-cached ~/.m2/repository;
|
|
# each service then compiles its own executable in a separate RUN layer, so a
|
|
# change to one service only re-runs that service's native-image step.
|
|
# -----------------------------------------------------------------------------
|
|
FROM ${DC3_JDK_NATIVE_IMAGE} AS native-builder
|
|
LABEL dc3.author=pnoker
|
|
LABEL dc3.author.email=pnokers.icloud.com
|
|
|
|
ARG PROFILE=dev
|
|
ARG MAVEN_OPTS_EXTRA=""
|
|
ENV MAVEN_OPTS="${MAVEN_OPTS_EXTRA}"
|
|
|
|
WORKDIR /build
|
|
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
|
|
|
|
COPY . .
|
|
# Install ONLY the native service set and its upstream (-am): driver/mq/e2e
|
|
# modules stay out (dc3-e2e produces no installable artifact, the TCK/e2e
|
|
# modules need Docker, and drivers are not part of the native set). `install`
|
|
# runs the full lifecycle through verify, which the package-only jar builder
|
|
# never sees — skip the verify-phase style gates (spotless ratchetFrom /
|
|
# checkstyle need a .git checkout the context excludes; ci-backend.yml owns
|
|
# them) and all test compilation.
|
|
RUN --mount=type=cache,target=/root/.m2/repository \
|
|
mvn -U -B -e -T 1C -s .mvn/settings-container.xml clean install \
|
|
-Dmaven.test.skip=true -Dspotless.skip=true -Dcheckstyle.skip=true \
|
|
-Daether.syncContext.named.factory=noop -P ${PROFILE} \
|
|
-pl dc3-gateway,dc3-center/dc3-center-auth,dc3-center/dc3-center-manager,dc3-center/dc3-center-data,dc3-center/dc3-center-agentic,dc3-center/dc3-center-single -am
|
|
|
|
RUN --mount=type=cache,target=/root/.m2/repository \
|
|
mvn -B -e -s .mvn/settings-container.xml -DskipTests \
|
|
-Daether.syncContext.named.factory=noop -P ${PROFILE},native native:compile -pl dc3-gateway
|
|
|
|
RUN --mount=type=cache,target=/root/.m2/repository \
|
|
mvn -B -e -s .mvn/settings-container.xml -DskipTests \
|
|
-Daether.syncContext.named.factory=noop -P ${PROFILE},native native:compile -pl dc3-center/dc3-center-auth
|
|
|
|
RUN --mount=type=cache,target=/root/.m2/repository \
|
|
mvn -B -e -s .mvn/settings-container.xml -DskipTests \
|
|
-Daether.syncContext.named.factory=noop -P ${PROFILE},native native:compile -pl dc3-center/dc3-center-manager
|
|
|
|
RUN --mount=type=cache,target=/root/.m2/repository \
|
|
mvn -B -e -s .mvn/settings-container.xml -DskipTests \
|
|
-Daether.syncContext.named.factory=noop -P ${PROFILE},native native:compile -pl dc3-center/dc3-center-data
|
|
|
|
RUN --mount=type=cache,target=/root/.m2/repository \
|
|
mvn -B -e -s .mvn/settings-container.xml -DskipTests \
|
|
-Daether.syncContext.named.factory=noop -P ${PROFILE},native native:compile -pl dc3-center/dc3-center-agentic
|
|
|
|
RUN --mount=type=cache,target=/root/.m2/repository \
|
|
mvn -B -e -s .mvn/settings-container.xml -DskipTests \
|
|
-Daether.syncContext.named.factory=noop -P ${PROFILE},native native:compile -pl dc3-center/dc3-center-single
|
|
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Stage 1D: driver-native-builder — GraalVM native-image compilation for ONE
|
|
# driver service, selected by the NATIVE_SERVICE build arg (module name under
|
|
# dc3-driver/, e.g. dc3-driver-virtual). Kept as a separate stage from
|
|
# native-builder so the center build's cached layers stay byte-identical: ARG
|
|
# values participate in the BuildKit cache key, and CI fans drivers out as a
|
|
# matrix where every job must compile exactly its own driver and nothing else.
|
|
#
|
|
# Drivers join the native line in batches (see the matrix in docker-ci.yml):
|
|
# dnp3 (Rust FFI), ble (TinyB/JNA) and opc-da (vendored DCOM) stay on the JVM.
|
|
#
|
|
# The target name and the NATIVE_SERVICE arg MUST stay in sync — every
|
|
# dc3-driver-*-native target below pins its matching build arg in the compose
|
|
# file and CI matrix.
|
|
# -----------------------------------------------------------------------------
|
|
FROM ${DC3_JDK_NATIVE_IMAGE} AS driver-native-builder
|
|
LABEL dc3.author=pnoker
|
|
LABEL dc3.author.email=pnokers.icloud.com
|
|
|
|
ARG PROFILE=dev
|
|
ARG NATIVE_SERVICE
|
|
ARG MAVEN_OPTS_EXTRA=""
|
|
ENV MAVEN_OPTS="${MAVEN_OPTS_EXTRA:-}"
|
|
|
|
WORKDIR /build
|
|
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
|
|
|
|
COPY . .
|
|
# Install the selected driver and its upstream (-am): the SDK, api and common
|
|
# modules the driver needs. Same verify-gate skips as native-builder above —
|
|
# ci-backend.yml owns spotless and checkstyle.
|
|
RUN --mount=type=cache,target=/root/.m2/repository \
|
|
mvn -U -B -e -T 1C -s .mvn/settings-container.xml clean install \
|
|
-Dmaven.test.skip=true -Dspotless.skip=true -Dcheckstyle.skip=true \
|
|
-Daether.syncContext.named.factory=noop -P ${PROFILE} \
|
|
-pl dc3-driver/${NATIVE_SERVICE} -am
|
|
|
|
RUN --mount=type=cache,target=/root/.m2/repository \
|
|
mvn -B -e -s .mvn/settings-container.xml -DskipTests \
|
|
-Daether.syncContext.named.factory=noop -P ${PROFILE},native native:compile -pl dc3-driver/${NATIVE_SERVICE}
|
|
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Stage 2: runtime base — the only place where JRE image, timezone and common
|
|
# environment defaults are declared. Every service target builds on top of it.
|
|
# -----------------------------------------------------------------------------
|
|
FROM ${DC3_JRE_IMAGE} AS runtime-base
|
|
LABEL dc3.author=pnoker
|
|
LABEL dc3.author.email=pnokers.icloud.com
|
|
|
|
ENV PARAMS=''
|
|
ENV NODE_ENV=test
|
|
ENV SERVER_PACKAGES=io.github.pnoker
|
|
ENV APM_AGENT_ENABLE=false
|
|
ENV APM_SERVICE=http://dc3-apm:8200
|
|
|
|
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
|
|
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Stage 2N: native runtime base — minimal glibc runtime for native executables.
|
|
# No JVM flags and no -javaagent here: Elastic APM injection is impossible on
|
|
# native executables (observe via OpenTelemetry instead). Application params
|
|
# are still passed through the PARAMS env by entrypoint-native.sh.
|
|
# -----------------------------------------------------------------------------
|
|
FROM ${DC3_NATIVE_IMAGE} AS native-runtime-base
|
|
LABEL dc3.author=pnoker
|
|
LABEL dc3.author.email=pnokers.icloud.com
|
|
|
|
ENV PARAMS=''
|
|
# Native binaries cannot re-resolve the spring.profiles.active ${NODE_ENV:dev}
|
|
# placeholder at runtime (the AOT pass freezes the dev profile and its
|
|
# application-dev.yml into the image), so RabbitEnvironmentConfig would read
|
|
# spring.env=dev and prefix every broker entity with the dev_<user> isolation
|
|
# tag, splitting the topology against JVM services. SPRING_ENV feeds the same
|
|
# EnvironmentPostProcessor through the system-environment property source,
|
|
# which outranks profile YAML, so the tag stays empty. Deployments that DO want
|
|
# an isolation tag can override this variable.
|
|
ENV SPRING_ENV=test
|
|
|
|
|
|
# =============================================================================
|
|
# Service targets — one per microservice. Each target:
|
|
# 1. inherits runtime-base
|
|
# 2. sets service-specific ENV / WORKDIR / EXPOSE / VOLUME
|
|
# 3. COPYs its jar from the builder stage
|
|
# 4. copies the prebaked entrypoint.sh from the base image
|
|
# =============================================================================
|
|
|
|
|
|
# ---------- dc3-gateway ----------
|
|
FROM runtime-base AS dc3-gateway
|
|
ENV DC3_GATEWAY_PORT=8000
|
|
ENV SERVER_NAME=dc3-gateway
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/gateway/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/gateway/gc/gc-%t.log
|
|
WORKDIR /dc3-gateway
|
|
RUN mkdir -p /dc3-gateway/dc3/logs/gateway/gc
|
|
COPY --from=builder /build/dc3-gateway/target/dc3-gateway.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
EXPOSE ${DC3_GATEWAY_PORT}
|
|
VOLUME /dc3-gateway/dc3/logs
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-gateway.jar"]
|
|
|
|
|
|
# ---------- dc3-center-auth ----------
|
|
FROM runtime-base AS dc3-center-auth
|
|
ENV DC3_AUTH_PORT=8300
|
|
ENV DC3_AUTH_GRPC_PORT=9300
|
|
ENV SERVER_NAME=dc3-center-auth
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/center/auth/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/center/auth/gc/gc-%t.log
|
|
WORKDIR /dc3-center/dc3-center-auth
|
|
RUN mkdir -p /dc3-center/dc3-center-auth/dc3/logs/center/auth/gc
|
|
COPY --from=builder /build/dc3-center/dc3-center-auth/target/dc3-center-auth.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
EXPOSE ${DC3_AUTH_PORT}
|
|
EXPOSE ${DC3_AUTH_GRPC_PORT}
|
|
VOLUME /dc3-center/dc3-center-auth/dc3/logs
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-center-auth.jar"]
|
|
|
|
|
|
# ---------- dc3-center-manager ----------
|
|
FROM runtime-base AS dc3-center-manager
|
|
ENV DC3_MANAGER_PORT=8400
|
|
ENV DC3_MANAGER_GRPC_PORT=9400
|
|
ENV SERVER_NAME=dc3-center-manager
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/center/manager/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/center/manager/gc/gc-%t.log
|
|
WORKDIR /dc3-center/dc3-center-manager
|
|
RUN mkdir -p /dc3-center/dc3-center-manager/dc3/logs/center/manager/gc
|
|
COPY --from=builder /build/dc3-center/dc3-center-manager/target/dc3-center-manager.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
EXPOSE ${DC3_MANAGER_PORT}
|
|
EXPOSE ${DC3_MANAGER_GRPC_PORT}
|
|
VOLUME /dc3-center/dc3-center-manager/dc3/logs
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-center-manager.jar"]
|
|
|
|
|
|
# ---------- dc3-center-data ----------
|
|
FROM runtime-base AS dc3-center-data
|
|
ENV DC3_DATA_PORT=8500
|
|
ENV DC3_DATA_GRPC_PORT=9500
|
|
ENV SERVER_NAME=dc3-center-data
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/center/data/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/center/data/gc/gc-%t.log
|
|
WORKDIR /dc3-center/dc3-center-data
|
|
RUN mkdir -p /dc3-center/dc3-center-data/dc3/logs/center/data/gc
|
|
COPY --from=builder /build/dc3-center/dc3-center-data/target/dc3-center-data.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
EXPOSE ${DC3_DATA_PORT}
|
|
EXPOSE ${DC3_DATA_GRPC_PORT}
|
|
VOLUME /dc3-center/dc3-center-data/dc3/logs
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-center-data.jar"]
|
|
|
|
|
|
# ---------- dc3-center-agentic ----------
|
|
FROM runtime-base AS dc3-center-agentic
|
|
ENV DC3_AGENTIC_PORT=8600
|
|
ENV SERVER_NAME=dc3-center-agentic
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/center/agentic/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/center/agentic/gc/gc-%t.log
|
|
WORKDIR /dc3-center/dc3-center-agentic
|
|
RUN mkdir -p /dc3-center/dc3-center-agentic/dc3/logs/center/agentic/gc
|
|
COPY --from=builder /build/dc3-center/dc3-center-agentic/target/dc3-center-agentic.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
EXPOSE ${DC3_AGENTIC_PORT}
|
|
VOLUME /dc3-center/dc3-center-agentic/dc3/logs
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-center-agentic.jar"]
|
|
|
|
|
|
# ---------- dc3-center-single ----------
|
|
FROM runtime-base AS dc3-center-single
|
|
ENV DC3_SINGLE_PORT=8100
|
|
ENV DC3_SINGLE_GRPC_PORT=9100
|
|
ENV SERVER_NAME=dc3-center-single
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/center/single/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/center/single/gc/gc-%t.log
|
|
WORKDIR /dc3-center/dc3-center-single
|
|
RUN mkdir -p /dc3-center/dc3-center-single/dc3/logs/center/single/gc
|
|
COPY --from=builder /build/dc3-center/dc3-center-single/target/dc3-center-single.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
EXPOSE ${DC3_SINGLE_PORT}
|
|
EXPOSE ${DC3_SINGLE_GRPC_PORT}
|
|
VOLUME /dc3-center/dc3-center-single/dc3/logs
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-center-single.jar"]
|
|
|
|
|
|
# ---------- dc3-driver-listening-virtual ----------
|
|
FROM runtime-base AS dc3-driver-listening-virtual
|
|
ENV TCP_PORT=6270
|
|
ENV UDP_PORT=6271
|
|
ENV SERVER_NAME=dc3-driver-listening-virtual
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/listening-virtual/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/listening-virtual/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-listening-virtual
|
|
RUN mkdir -p /dc3-driver/dc3-driver-listening-virtual/dc3/logs/driver/listening-virtual/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-listening-virtual/target/dc3-driver-listening-virtual.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
EXPOSE ${TCP_PORT}
|
|
EXPOSE ${UDP_PORT}
|
|
VOLUME /dc3-driver/dc3-driver-listening-virtual/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-listening-virtual/dc3/data/driver/listening-virtual
|
|
VOLUME /dc3-driver/dc3-driver-listening-virtual/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-listening-virtual.jar"]
|
|
|
|
|
|
# ---------- dc3-driver-modbus-tcp ----------
|
|
FROM runtime-base AS dc3-driver-modbus-tcp
|
|
ENV SERVER_NAME=dc3-driver-modbus-tcp
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/modbus-tcp/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/modbus-tcp/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-modbus-tcp
|
|
RUN mkdir -p /dc3-driver/dc3-driver-modbus-tcp/dc3/logs/driver/modbus-tcp/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-modbus-tcp/target/dc3-driver-modbus-tcp.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-modbus-tcp/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-modbus-tcp/dc3/data/driver/modbus-tcp
|
|
VOLUME /dc3-driver/dc3-driver-modbus-tcp/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-modbus-tcp.jar"]
|
|
|
|
|
|
# ---------- dc3-driver-modbus-rtu ----------
|
|
FROM runtime-base AS dc3-driver-modbus-rtu
|
|
ENV SERVER_NAME=dc3-driver-modbus-rtu
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/modbus-rtu/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/modbus-rtu/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-modbus-rtu
|
|
RUN mkdir -p /dc3-driver/dc3-driver-modbus-rtu/dc3/logs/driver/modbus-rtu/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-modbus-rtu/target/dc3-driver-modbus-rtu.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-modbus-rtu/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-modbus-rtu/dc3/data/driver/modbus-rtu
|
|
VOLUME /dc3-driver/dc3-driver-modbus-rtu/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-modbus-rtu.jar"]
|
|
|
|
|
|
# ---------- dc3-driver-mqtt ----------
|
|
FROM runtime-base AS dc3-driver-mqtt
|
|
ENV SERVER_NAME=dc3-driver-mqtt
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/mqtt/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/mqtt/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-mqtt
|
|
RUN mkdir -p /dc3-driver/dc3-driver-mqtt/dc3/logs/driver/mqtt/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-mqtt/target/dc3-driver-mqtt.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-mqtt/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-mqtt/dc3/data/driver/mqtt
|
|
VOLUME /dc3-driver/dc3-driver-mqtt/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-mqtt.jar"]
|
|
|
|
|
|
# ---------- dc3-driver-opc-da ----------
|
|
FROM runtime-base AS dc3-driver-opc-da
|
|
ENV SERVER_NAME=dc3-driver-opc-da
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/opc-da/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/opc-da/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-opc-da
|
|
RUN mkdir -p /dc3-driver/dc3-driver-opc-da/dc3/logs/driver/opc-da/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-opc-da/target/dc3-driver-opc-da.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-opc-da/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-opc-da/dc3/data/driver/opc-da
|
|
VOLUME /dc3-driver/dc3-driver-opc-da/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-opc-da.jar"]
|
|
|
|
|
|
# ---------- dc3-driver-opc-ua ----------
|
|
FROM runtime-base AS dc3-driver-opc-ua
|
|
ENV SERVER_NAME=dc3-driver-opc-ua
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/opc-ua/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/opc-ua/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-opc-ua
|
|
RUN mkdir -p /dc3-driver/dc3-driver-opc-ua/dc3/logs/driver/opc-ua/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-opc-ua/target/dc3-driver-opc-ua.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-opc-ua/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-opc-ua/dc3/data/driver/opc-ua
|
|
VOLUME /dc3-driver/dc3-driver-opc-ua/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-opc-ua.jar"]
|
|
|
|
|
|
# ---------- dc3-driver-plcs7 ----------
|
|
FROM runtime-base AS dc3-driver-plcs7
|
|
ENV SERVER_NAME=dc3-driver-plcs7
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/plcs7/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/plcs7/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-plcs7
|
|
RUN mkdir -p /dc3-driver/dc3-driver-plcs7/dc3/logs/driver/plcs7/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-plcs7/target/dc3-driver-plcs7.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-plcs7/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-plcs7/dc3/data/driver/plcs7
|
|
VOLUME /dc3-driver/dc3-driver-plcs7/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-plcs7.jar"]
|
|
|
|
|
|
# ---------- dc3-driver-virtual ----------
|
|
FROM runtime-base AS dc3-driver-virtual
|
|
ENV SERVER_NAME=dc3-driver-virtual
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/virtual/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/virtual/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-virtual
|
|
RUN mkdir -p /dc3-driver/dc3-driver-virtual/dc3/logs/driver/virtual/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-virtual/target/dc3-driver-virtual.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-virtual/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-virtual/dc3/data/driver/virtual
|
|
VOLUME /dc3-driver/dc3-driver-virtual/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-virtual.jar"]
|
|
# ---------- dc3-driver-bacnet-ip ----------
|
|
FROM runtime-base AS dc3-driver-bacnet-ip
|
|
ENV SERVER_NAME=dc3-driver-bacnet-ip
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/bacnet-ip/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/bacnet-ip/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-bacnet-ip
|
|
RUN mkdir -p /dc3-driver/dc3-driver-bacnet-ip/dc3/logs/driver/bacnet-ip/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-bacnet-ip/target/dc3-driver-bacnet-ip.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-bacnet-ip/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-bacnet-ip/dc3/data/driver/bacnet-ip
|
|
VOLUME /dc3-driver/dc3-driver-bacnet-ip/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-bacnet-ip.jar"]
|
|
|
|
# ---------- dc3-driver-ble ----------
|
|
FROM runtime-base AS dc3-driver-ble
|
|
ENV SERVER_NAME=dc3-driver-ble
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/ble/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/ble/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-ble
|
|
RUN mkdir -p /dc3-driver/dc3-driver-ble/dc3/logs/driver/ble/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-ble/target/dc3-driver-ble.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-ble/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-ble/dc3/data/driver/ble
|
|
VOLUME /dc3-driver/dc3-driver-ble/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-ble.jar"]
|
|
|
|
# ---------- dc3-driver-can ----------
|
|
FROM runtime-base AS dc3-driver-can
|
|
ENV SERVER_NAME=dc3-driver-can
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/can/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/can/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-can
|
|
RUN mkdir -p /dc3-driver/dc3-driver-can/dc3/logs/driver/can/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-can/target/dc3-driver-can.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-can/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-can/dc3/data/driver/can
|
|
VOLUME /dc3-driver/dc3-driver-can/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-can.jar"]
|
|
|
|
# ---------- dc3-driver-coap ----------
|
|
FROM runtime-base AS dc3-driver-coap
|
|
ENV SERVER_NAME=dc3-driver-coap
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/coap/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/coap/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-coap
|
|
RUN mkdir -p /dc3-driver/dc3-driver-coap/dc3/logs/driver/coap/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-coap/target/dc3-driver-coap.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-coap/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-coap/dc3/data/driver/coap
|
|
VOLUME /dc3-driver/dc3-driver-coap/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-coap.jar"]
|
|
|
|
# ---------- dc3-driver-dlms ----------
|
|
FROM runtime-base AS dc3-driver-dlms
|
|
ENV SERVER_NAME=dc3-driver-dlms
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/dlms/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/dlms/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-dlms
|
|
RUN mkdir -p /dc3-driver/dc3-driver-dlms/dc3/logs/driver/dlms/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-dlms/target/dc3-driver-dlms.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-dlms/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-dlms/dc3/data/driver/dlms
|
|
VOLUME /dc3-driver/dc3-driver-dlms/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-dlms.jar"]
|
|
|
|
# ---------- dc3-driver-ethernet-ip ----------
|
|
FROM runtime-base AS dc3-driver-ethernet-ip
|
|
ENV SERVER_NAME=dc3-driver-ethernet-ip
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/ethernet-ip/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/ethernet-ip/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-ethernet-ip
|
|
RUN mkdir -p /dc3-driver/dc3-driver-ethernet-ip/dc3/logs/driver/ethernet-ip/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-ethernet-ip/target/dc3-driver-ethernet-ip.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-ethernet-ip/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-ethernet-ip/dc3/data/driver/ethernet-ip
|
|
VOLUME /dc3-driver/dc3-driver-ethernet-ip/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-ethernet-ip.jar"]
|
|
|
|
# ---------- dc3-driver-fins ----------
|
|
FROM runtime-base AS dc3-driver-fins
|
|
ENV SERVER_NAME=dc3-driver-fins
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/fins/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/fins/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-fins
|
|
RUN mkdir -p /dc3-driver/dc3-driver-fins/dc3/logs/driver/fins/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-fins/target/dc3-driver-fins.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-fins/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-fins/dc3/data/driver/fins
|
|
VOLUME /dc3-driver/dc3-driver-fins/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-fins.jar"]
|
|
|
|
# ---------- dc3-driver-http ----------
|
|
FROM runtime-base AS dc3-driver-http
|
|
ENV SERVER_NAME=dc3-driver-http
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/http/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/http/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-http
|
|
RUN mkdir -p /dc3-driver/dc3-driver-http/dc3/logs/driver/http/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-http/target/dc3-driver-http.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-http/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-http/dc3/data/driver/http
|
|
VOLUME /dc3-driver/dc3-driver-http/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-http.jar"]
|
|
|
|
# ---------- dc3-driver-iec104 ----------
|
|
FROM runtime-base AS dc3-driver-iec104
|
|
ENV SERVER_NAME=dc3-driver-iec104
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/iec104/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/iec104/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-iec104
|
|
RUN mkdir -p /dc3-driver/dc3-driver-iec104/dc3/logs/driver/iec104/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-iec104/target/dc3-driver-iec104.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-iec104/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-iec104/dc3/data/driver/iec104
|
|
VOLUME /dc3-driver/dc3-driver-iec104/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-iec104.jar"]
|
|
|
|
# ---------- dc3-driver-lwm2m ----------
|
|
FROM runtime-base AS dc3-driver-lwm2m
|
|
ENV SERVER_NAME=dc3-driver-lwm2m
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/lwm2m/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/lwm2m/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-lwm2m
|
|
RUN mkdir -p /dc3-driver/dc3-driver-lwm2m/dc3/logs/driver/lwm2m/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-lwm2m/target/dc3-driver-lwm2m.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-lwm2m/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-lwm2m/dc3/data/driver/lwm2m
|
|
VOLUME /dc3-driver/dc3-driver-lwm2m/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-lwm2m.jar"]
|
|
|
|
# ---------- dc3-driver-melsec ----------
|
|
FROM runtime-base AS dc3-driver-melsec
|
|
ENV SERVER_NAME=dc3-driver-melsec
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/melsec/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/melsec/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-melsec
|
|
RUN mkdir -p /dc3-driver/dc3-driver-melsec/dc3/logs/driver/melsec/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-melsec/target/dc3-driver-melsec.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-melsec/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-melsec/dc3/data/driver/melsec
|
|
VOLUME /dc3-driver/dc3-driver-melsec/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-melsec.jar"]
|
|
|
|
# ---------- dc3-driver-mysql ----------
|
|
FROM runtime-base AS dc3-driver-mysql
|
|
ENV SERVER_NAME=dc3-driver-mysql
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/mysql/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/mysql/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-mysql
|
|
RUN mkdir -p /dc3-driver/dc3-driver-mysql/dc3/logs/driver/mysql/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-mysql/target/dc3-driver-mysql.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-mysql/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-mysql/dc3/data/driver/mysql
|
|
VOLUME /dc3-driver/dc3-driver-mysql/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-mysql.jar"]
|
|
|
|
# ---------- dc3-driver-oracle ----------
|
|
FROM runtime-base AS dc3-driver-oracle
|
|
ENV SERVER_NAME=dc3-driver-oracle
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/oracle/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/oracle/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-oracle
|
|
RUN mkdir -p /dc3-driver/dc3-driver-oracle/dc3/logs/driver/oracle/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-oracle/target/dc3-driver-oracle.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-oracle/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-oracle/dc3/data/driver/oracle
|
|
VOLUME /dc3-driver/dc3-driver-oracle/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-oracle.jar"]
|
|
|
|
# ---------- dc3-driver-postgresql ----------
|
|
FROM runtime-base AS dc3-driver-postgresql
|
|
ENV SERVER_NAME=dc3-driver-postgresql
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/postgresql/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/postgresql/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-postgresql
|
|
RUN mkdir -p /dc3-driver/dc3-driver-postgresql/dc3/logs/driver/postgresql/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-postgresql/target/dc3-driver-postgresql.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-postgresql/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-postgresql/dc3/data/driver/postgresql
|
|
VOLUME /dc3-driver/dc3-driver-postgresql/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-postgresql.jar"]
|
|
|
|
# ---------- dc3-driver-serial ----------
|
|
FROM runtime-base AS dc3-driver-serial
|
|
ENV SERVER_NAME=dc3-driver-serial
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/serial/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/serial/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-serial
|
|
RUN mkdir -p /dc3-driver/dc3-driver-serial/dc3/logs/driver/serial/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-serial/target/dc3-driver-serial.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-serial/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-serial/dc3/data/driver/serial
|
|
VOLUME /dc3-driver/dc3-driver-serial/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-serial.jar"]
|
|
|
|
# ---------- dc3-driver-sl651 ----------
|
|
FROM runtime-base AS dc3-driver-sl651
|
|
ENV SERVER_NAME=dc3-driver-sl651
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/sl651/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/sl651/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-sl651
|
|
RUN mkdir -p /dc3-driver/dc3-driver-sl651/dc3/logs/driver/sl651/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-sl651/target/dc3-driver-sl651.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-sl651/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-sl651/dc3/data/driver/sl651
|
|
VOLUME /dc3-driver/dc3-driver-sl651/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-sl651.jar"]
|
|
|
|
# ---------- dc3-driver-snmp ----------
|
|
FROM runtime-base AS dc3-driver-snmp
|
|
ENV SERVER_NAME=dc3-driver-snmp
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/snmp/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/snmp/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-snmp
|
|
RUN mkdir -p /dc3-driver/dc3-driver-snmp/dc3/logs/driver/snmp/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-snmp/target/dc3-driver-snmp.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-snmp/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-snmp/dc3/data/driver/snmp
|
|
VOLUME /dc3-driver/dc3-driver-snmp/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-snmp.jar"]
|
|
|
|
# ---------- dc3-driver-sqlserver ----------
|
|
FROM runtime-base AS dc3-driver-sqlserver
|
|
ENV SERVER_NAME=dc3-driver-sqlserver
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/sqlserver/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/sqlserver/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-sqlserver
|
|
RUN mkdir -p /dc3-driver/dc3-driver-sqlserver/dc3/logs/driver/sqlserver/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-sqlserver/target/dc3-driver-sqlserver.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-sqlserver/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-sqlserver/dc3/data/driver/sqlserver
|
|
VOLUME /dc3-driver/dc3-driver-sqlserver/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-sqlserver.jar"]
|
|
|
|
# ---------- dc3-driver-tcp-udp ----------
|
|
FROM runtime-base AS dc3-driver-tcp-udp
|
|
ENV SERVER_NAME=dc3-driver-tcp-udp
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/tcp-udp/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/tcp-udp/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-tcp-udp
|
|
RUN mkdir -p /dc3-driver/dc3-driver-tcp-udp/dc3/logs/driver/tcp-udp/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-tcp-udp/target/dc3-driver-tcp-udp.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-tcp-udp/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-tcp-udp/dc3/data/driver/tcp-udp
|
|
VOLUME /dc3-driver/dc3-driver-tcp-udp/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-tcp-udp.jar"]
|
|
|
|
# ---------- dc3-driver-zigbee ----------
|
|
FROM runtime-base AS dc3-driver-zigbee
|
|
ENV SERVER_NAME=dc3-driver-zigbee
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/zigbee/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/zigbee/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-zigbee
|
|
RUN mkdir -p /dc3-driver/dc3-driver-zigbee/dc3/logs/driver/zigbee/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-zigbee/target/dc3-driver-zigbee.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-zigbee/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-zigbee/dc3/data/driver/zigbee
|
|
VOLUME /dc3-driver/dc3-driver-zigbee/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-zigbee.jar"]
|
|
# ---------- dc3-driver-dlt645 ----------
|
|
FROM runtime-base AS dc3-driver-dlt645
|
|
ENV SERVER_NAME=dc3-driver-dlt645
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/dlt645/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/dlt645/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-dlt645
|
|
RUN mkdir -p /dc3-driver/dc3-driver-dlt645/dc3/logs/driver/dlt645/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-dlt645/target/dc3-driver-dlt645.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-dlt645/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-dlt645/dc3/data/driver/dlt645
|
|
VOLUME /dc3-driver/dc3-driver-dlt645/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-dlt645.jar"]
|
|
|
|
# ---------- dc3-driver-dnp3 ----------
|
|
FROM runtime-base AS dc3-driver-dnp3
|
|
ENV SERVER_NAME=dc3-driver-dnp3
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/dnp3/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/dnp3/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-dnp3
|
|
RUN mkdir -p /dc3-driver/dc3-driver-dnp3/dc3/logs/driver/dnp3/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-dnp3/target/dc3-driver-dnp3.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-dnp3/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-dnp3/dc3/data/driver/dnp3
|
|
VOLUME /dc3-driver/dc3-driver-dnp3/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-dnp3.jar"]
|
|
|
|
# ---------- dc3-driver-iec61850 ----------
|
|
FROM runtime-base AS dc3-driver-iec61850
|
|
ENV SERVER_NAME=dc3-driver-iec61850
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/iec61850/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/iec61850/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-iec61850
|
|
RUN mkdir -p /dc3-driver/dc3-driver-iec61850/dc3/logs/driver/iec61850/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-iec61850/target/dc3-driver-iec61850.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-iec61850/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-iec61850/dc3/data/driver/iec61850
|
|
VOLUME /dc3-driver/dc3-driver-iec61850/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-iec61850.jar"]
|
|
|
|
# ---------- dc3-driver-kafka ----------
|
|
FROM runtime-base AS dc3-driver-kafka
|
|
ENV SERVER_NAME=dc3-driver-kafka
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/kafka/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/kafka/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-kafka
|
|
RUN mkdir -p /dc3-driver/dc3-driver-kafka/dc3/logs/driver/kafka/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-kafka/target/dc3-driver-kafka.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-kafka/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-kafka/dc3/data/driver/kafka
|
|
VOLUME /dc3-driver/dc3-driver-kafka/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-kafka.jar"]
|
|
|
|
# ---------- dc3-driver-knx ----------
|
|
FROM runtime-base AS dc3-driver-knx
|
|
ENV SERVER_NAME=dc3-driver-knx
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/knx/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/knx/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-knx
|
|
RUN mkdir -p /dc3-driver/dc3-driver-knx/dc3/logs/driver/knx/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-knx/target/dc3-driver-knx.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-knx/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-knx/dc3/data/driver/knx
|
|
VOLUME /dc3-driver/dc3-driver-knx/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-knx.jar"]
|
|
|
|
# ---------- dc3-driver-lorawan ----------
|
|
FROM runtime-base AS dc3-driver-lorawan
|
|
ENV SERVER_NAME=dc3-driver-lorawan
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/lorawan/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/lorawan/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-lorawan
|
|
RUN mkdir -p /dc3-driver/dc3-driver-lorawan/dc3/logs/driver/lorawan/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-lorawan/target/dc3-driver-lorawan.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-lorawan/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-lorawan/dc3/data/driver/lorawan
|
|
VOLUME /dc3-driver/dc3-driver-lorawan/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-lorawan.jar"]
|
|
|
|
# ---------- dc3-driver-mbus ----------
|
|
FROM runtime-base AS dc3-driver-mbus
|
|
ENV SERVER_NAME=dc3-driver-mbus
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/mbus/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/mbus/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-mbus
|
|
RUN mkdir -p /dc3-driver/dc3-driver-mbus/dc3/logs/driver/mbus/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-mbus/target/dc3-driver-mbus.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-mbus/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-mbus/dc3/data/driver/mbus
|
|
VOLUME /dc3-driver/dc3-driver-mbus/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-mbus.jar"]
|
|
|
|
# ---------- dc3-driver-redis ----------
|
|
FROM runtime-base AS dc3-driver-redis
|
|
ENV SERVER_NAME=dc3-driver-redis
|
|
ENV JAVA_HEAP_DUMP_PATH=dc3/logs/driver/redis/gc/dump.hprof
|
|
ENV JAVA_GC_LOG_PATH=dc3/logs/driver/redis/gc/gc-%t.log
|
|
WORKDIR /dc3-driver/dc3-driver-redis
|
|
RUN mkdir -p /dc3-driver/dc3-driver-redis/dc3/logs/driver/redis/gc
|
|
COPY --from=builder /build/dc3-driver/dc3-driver-redis/target/dc3-driver-redis.jar ./
|
|
RUN cp /usr/share/dc3/entrypoint.sh ./entrypoint.sh
|
|
VOLUME /dc3-driver/dc3-driver-redis/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-redis/dc3/data/driver/redis
|
|
VOLUME /dc3-driver/dc3-driver-redis/dc3/data
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
CMD ["dc3-driver-redis.jar"]
|
|
|
|
|
|
# =============================================================================
|
|
# Native service targets — GraalVM native executables. Centers and the
|
|
# gateway COPY from the native-builder stage (one cached RUN layer per
|
|
# service); driver targets COPY from driver-native-builder, which compiles
|
|
# exactly one driver per build via the NATIVE_SERVICE arg. Drivers join the
|
|
# native line in batches; dnp3 (Rust FFI), ble (TinyB/JNA) and opc-da
|
|
# (vendored DCOM) stay on the JVM — their native bindings cannot be carried
|
|
# into a native image.
|
|
# =============================================================================
|
|
|
|
|
|
# ---------- dc3-gateway-native ----------
|
|
FROM native-runtime-base AS dc3-gateway-native
|
|
ENV DC3_GATEWAY_PORT=8000
|
|
ENV SERVER_NAME=dc3-gateway
|
|
ENV APP_BIN=./dc3-gateway
|
|
WORKDIR /dc3-gateway
|
|
RUN mkdir -p /dc3-gateway/dc3/logs/gateway
|
|
COPY --from=native-builder /build/dc3-gateway/target/dc3-gateway ./
|
|
EXPOSE ${DC3_GATEWAY_PORT}
|
|
VOLUME /dc3-gateway/dc3/logs
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-center-auth-native ----------
|
|
FROM native-runtime-base AS dc3-center-auth-native
|
|
ENV DC3_AUTH_PORT=8300
|
|
ENV DC3_AUTH_GRPC_PORT=9300
|
|
ENV SERVER_NAME=dc3-center-auth
|
|
ENV APP_BIN=./dc3-center-auth
|
|
WORKDIR /dc3-center/dc3-center-auth
|
|
RUN mkdir -p /dc3-center/dc3-center-auth/dc3/logs/center/auth
|
|
COPY --from=native-builder /build/dc3-center/dc3-center-auth/target/dc3-center-auth ./
|
|
EXPOSE ${DC3_AUTH_PORT}
|
|
EXPOSE ${DC3_AUTH_GRPC_PORT}
|
|
VOLUME /dc3-center/dc3-center-auth/dc3/logs
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-center-manager-native ----------
|
|
FROM native-runtime-base AS dc3-center-manager-native
|
|
ENV DC3_MANAGER_PORT=8400
|
|
ENV DC3_MANAGER_GRPC_PORT=9400
|
|
ENV SERVER_NAME=dc3-center-manager
|
|
ENV APP_BIN=./dc3-center-manager
|
|
WORKDIR /dc3-center/dc3-center-manager
|
|
RUN mkdir -p /dc3-center/dc3-center-manager/dc3/logs/center/manager
|
|
COPY --from=native-builder /build/dc3-center/dc3-center-manager/target/dc3-center-manager ./
|
|
EXPOSE ${DC3_MANAGER_PORT}
|
|
EXPOSE ${DC3_MANAGER_GRPC_PORT}
|
|
VOLUME /dc3-center/dc3-center-manager/dc3/logs
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-center-data-native ----------
|
|
FROM native-runtime-base AS dc3-center-data-native
|
|
ENV DC3_DATA_PORT=8500
|
|
ENV DC3_DATA_GRPC_PORT=9500
|
|
ENV SERVER_NAME=dc3-center-data
|
|
ENV APP_BIN=./dc3-center-data
|
|
WORKDIR /dc3-center/dc3-center-data
|
|
RUN mkdir -p /dc3-center/dc3-center-data/dc3/logs/center/data
|
|
COPY --from=native-builder /build/dc3-center/dc3-center-data/target/dc3-center-data ./
|
|
EXPOSE ${DC3_DATA_PORT}
|
|
EXPOSE ${DC3_DATA_GRPC_PORT}
|
|
VOLUME /dc3-center/dc3-center-data/dc3/logs
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-center-agentic-native ----------
|
|
FROM native-runtime-base AS dc3-center-agentic-native
|
|
ENV DC3_AGENTIC_PORT=8600
|
|
ENV SERVER_NAME=dc3-center-agentic
|
|
ENV APP_BIN=./dc3-center-agentic
|
|
WORKDIR /dc3-center/dc3-center-agentic
|
|
RUN mkdir -p /dc3-center/dc3-center-agentic/dc3/logs/center/agentic
|
|
COPY --from=native-builder /build/dc3-center/dc3-center-agentic/target/dc3-center-agentic ./
|
|
EXPOSE ${DC3_AGENTIC_PORT}
|
|
VOLUME /dc3-center/dc3-center-agentic/dc3/logs
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-center-single-native ----------
|
|
FROM native-runtime-base AS dc3-center-single-native
|
|
ENV DC3_SINGLE_PORT=8100
|
|
ENV DC3_SINGLE_GRPC_PORT=9100
|
|
ENV SERVER_NAME=dc3-center-single
|
|
ENV APP_BIN=./dc3-center-single
|
|
WORKDIR /dc3-center/dc3-center-single
|
|
RUN mkdir -p /dc3-center/dc3-center-single/dc3/logs/center/single
|
|
COPY --from=native-builder /build/dc3-center/dc3-center-single/target/dc3-center-single ./
|
|
EXPOSE ${DC3_SINGLE_PORT}
|
|
EXPOSE ${DC3_SINGLE_GRPC_PORT}
|
|
VOLUME /dc3-center/dc3-center-single/dc3/logs
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
|
|
# ---------- dc3-driver-virtual-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-virtual: the target name and
|
|
# the build arg MUST stay in sync (CI enforces the pairing per matrix entry).
|
|
FROM native-runtime-base AS dc3-driver-virtual-native
|
|
ENV SERVER_NAME=dc3-driver-virtual
|
|
ENV APP_BIN=./dc3-driver-virtual
|
|
WORKDIR /dc3-driver/dc3-driver-virtual
|
|
RUN mkdir -p /dc3-driver/dc3-driver-virtual/dc3/logs/driver/virtual
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-virtual/target/dc3-driver-virtual ./
|
|
VOLUME /dc3-driver/dc3-driver-virtual/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-virtual/dc3/data/driver/virtual
|
|
VOLUME /dc3-driver/dc3-driver-virtual/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-mqtt-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-mqtt.
|
|
FROM native-runtime-base AS dc3-driver-mqtt-native
|
|
ENV SERVER_NAME=dc3-driver-mqtt
|
|
ENV APP_BIN=./dc3-driver-mqtt
|
|
WORKDIR /dc3-driver/dc3-driver-mqtt
|
|
RUN mkdir -p /dc3-driver/dc3-driver-mqtt/dc3/logs/driver/mqtt
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-mqtt/target/dc3-driver-mqtt ./
|
|
VOLUME /dc3-driver/dc3-driver-mqtt/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-mqtt/dc3/data/driver/mqtt
|
|
VOLUME /dc3-driver/dc3-driver-mqtt/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-modbus-tcp-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-modbus-tcp.
|
|
FROM native-runtime-base AS dc3-driver-modbus-tcp-native
|
|
ENV SERVER_NAME=dc3-driver-modbus-tcp
|
|
ENV APP_BIN=./dc3-driver-modbus-tcp
|
|
WORKDIR /dc3-driver/dc3-driver-modbus-tcp
|
|
RUN mkdir -p /dc3-driver/dc3-driver-modbus-tcp/dc3/logs/driver/modbus-tcp
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-modbus-tcp/target/dc3-driver-modbus-tcp ./
|
|
VOLUME /dc3-driver/dc3-driver-modbus-tcp/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-modbus-tcp/dc3/data/driver/modbus-tcp
|
|
VOLUME /dc3-driver/dc3-driver-modbus-tcp/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
|
|
# ---------- dc3-driver-tcp-udp-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-tcp-udp.
|
|
FROM native-runtime-base AS dc3-driver-tcp-udp-native
|
|
ENV SERVER_NAME=dc3-driver-tcp-udp
|
|
ENV APP_BIN=./dc3-driver-tcp-udp
|
|
WORKDIR /dc3-driver/dc3-driver-tcp-udp
|
|
RUN mkdir -p /dc3-driver/dc3-driver-tcp-udp/dc3/logs/driver/tcp-udp
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-tcp-udp/target/dc3-driver-tcp-udp ./
|
|
VOLUME /dc3-driver/dc3-driver-tcp-udp/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-tcp-udp/dc3/data/driver/tcp-udp
|
|
VOLUME /dc3-driver/dc3-driver-tcp-udp/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-listening-virtual-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-listening-virtual.
|
|
FROM native-runtime-base AS dc3-driver-listening-virtual-native
|
|
ENV SERVER_NAME=dc3-driver-listening-virtual
|
|
ENV APP_BIN=./dc3-driver-listening-virtual
|
|
WORKDIR /dc3-driver/dc3-driver-listening-virtual
|
|
RUN mkdir -p /dc3-driver/dc3-driver-listening-virtual/dc3/logs/driver/listening-virtual
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-listening-virtual/target/dc3-driver-listening-virtual ./
|
|
EXPOSE ${TCP_PORT}
|
|
EXPOSE ${UDP_PORT}
|
|
VOLUME /dc3-driver/dc3-driver-listening-virtual/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-listening-virtual/dc3/data/driver/listening-virtual
|
|
VOLUME /dc3-driver/dc3-driver-listening-virtual/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-can-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-can.
|
|
FROM native-runtime-base AS dc3-driver-can-native
|
|
ENV SERVER_NAME=dc3-driver-can
|
|
ENV APP_BIN=./dc3-driver-can
|
|
WORKDIR /dc3-driver/dc3-driver-can
|
|
RUN mkdir -p /dc3-driver/dc3-driver-can/dc3/logs/driver/can
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-can/target/dc3-driver-can ./
|
|
VOLUME /dc3-driver/dc3-driver-can/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-can/dc3/data/driver/can
|
|
VOLUME /dc3-driver/dc3-driver-can/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-ethernet-ip-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-ethernet-ip.
|
|
FROM native-runtime-base AS dc3-driver-ethernet-ip-native
|
|
ENV SERVER_NAME=dc3-driver-ethernet-ip
|
|
ENV APP_BIN=./dc3-driver-ethernet-ip
|
|
WORKDIR /dc3-driver/dc3-driver-ethernet-ip
|
|
RUN mkdir -p /dc3-driver/dc3-driver-ethernet-ip/dc3/logs/driver/ethernet-ip
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-ethernet-ip/target/dc3-driver-ethernet-ip ./
|
|
VOLUME /dc3-driver/dc3-driver-ethernet-ip/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-ethernet-ip/dc3/data/driver/ethernet-ip
|
|
VOLUME /dc3-driver/dc3-driver-ethernet-ip/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-fins-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-fins.
|
|
FROM native-runtime-base AS dc3-driver-fins-native
|
|
ENV SERVER_NAME=dc3-driver-fins
|
|
ENV APP_BIN=./dc3-driver-fins
|
|
WORKDIR /dc3-driver/dc3-driver-fins
|
|
RUN mkdir -p /dc3-driver/dc3-driver-fins/dc3/logs/driver/fins
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-fins/target/dc3-driver-fins ./
|
|
VOLUME /dc3-driver/dc3-driver-fins/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-fins/dc3/data/driver/fins
|
|
VOLUME /dc3-driver/dc3-driver-fins/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-http-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-http.
|
|
FROM native-runtime-base AS dc3-driver-http-native
|
|
ENV SERVER_NAME=dc3-driver-http
|
|
ENV APP_BIN=./dc3-driver-http
|
|
WORKDIR /dc3-driver/dc3-driver-http
|
|
RUN mkdir -p /dc3-driver/dc3-driver-http/dc3/logs/driver/http
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-http/target/dc3-driver-http ./
|
|
VOLUME /dc3-driver/dc3-driver-http/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-http/dc3/data/driver/http
|
|
VOLUME /dc3-driver/dc3-driver-http/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-snmp-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-snmp.
|
|
FROM native-runtime-base AS dc3-driver-snmp-native
|
|
ENV SERVER_NAME=dc3-driver-snmp
|
|
ENV APP_BIN=./dc3-driver-snmp
|
|
WORKDIR /dc3-driver/dc3-driver-snmp
|
|
RUN mkdir -p /dc3-driver/dc3-driver-snmp/dc3/logs/driver/snmp
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-snmp/target/dc3-driver-snmp ./
|
|
VOLUME /dc3-driver/dc3-driver-snmp/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-snmp/dc3/data/driver/snmp
|
|
VOLUME /dc3-driver/dc3-driver-snmp/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-iec104-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-iec104.
|
|
FROM native-runtime-base AS dc3-driver-iec104-native
|
|
ENV SERVER_NAME=dc3-driver-iec104
|
|
ENV APP_BIN=./dc3-driver-iec104
|
|
WORKDIR /dc3-driver/dc3-driver-iec104
|
|
RUN mkdir -p /dc3-driver/dc3-driver-iec104/dc3/logs/driver/iec104
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-iec104/target/dc3-driver-iec104 ./
|
|
VOLUME /dc3-driver/dc3-driver-iec104/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-iec104/dc3/data/driver/iec104
|
|
VOLUME /dc3-driver/dc3-driver-iec104/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-coap-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-coap.
|
|
FROM native-runtime-base AS dc3-driver-coap-native
|
|
ENV SERVER_NAME=dc3-driver-coap
|
|
ENV APP_BIN=./dc3-driver-coap
|
|
WORKDIR /dc3-driver/dc3-driver-coap
|
|
RUN mkdir -p /dc3-driver/dc3-driver-coap/dc3/logs/driver/coap
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-coap/target/dc3-driver-coap ./
|
|
VOLUME /dc3-driver/dc3-driver-coap/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-coap/dc3/data/driver/coap
|
|
VOLUME /dc3-driver/dc3-driver-coap/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-knx-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-knx.
|
|
FROM native-runtime-base AS dc3-driver-knx-native
|
|
ENV SERVER_NAME=dc3-driver-knx
|
|
ENV APP_BIN=./dc3-driver-knx
|
|
WORKDIR /dc3-driver/dc3-driver-knx
|
|
RUN mkdir -p /dc3-driver/dc3-driver-knx/dc3/logs/driver/knx
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-knx/target/dc3-driver-knx ./
|
|
VOLUME /dc3-driver/dc3-driver-knx/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-knx/dc3/data/driver/knx
|
|
VOLUME /dc3-driver/dc3-driver-knx/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-bacnet-ip-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-bacnet-ip.
|
|
FROM native-runtime-base AS dc3-driver-bacnet-ip-native
|
|
ENV SERVER_NAME=dc3-driver-bacnet-ip
|
|
ENV APP_BIN=./dc3-driver-bacnet-ip
|
|
WORKDIR /dc3-driver/dc3-driver-bacnet-ip
|
|
RUN mkdir -p /dc3-driver/dc3-driver-bacnet-ip/dc3/logs/driver/bacnet-ip
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-bacnet-ip/target/dc3-driver-bacnet-ip ./
|
|
VOLUME /dc3-driver/dc3-driver-bacnet-ip/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-bacnet-ip/dc3/data/driver/bacnet-ip
|
|
VOLUME /dc3-driver/dc3-driver-bacnet-ip/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-melsec-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-melsec.
|
|
FROM native-runtime-base AS dc3-driver-melsec-native
|
|
ENV SERVER_NAME=dc3-driver-melsec
|
|
ENV APP_BIN=./dc3-driver-melsec
|
|
WORKDIR /dc3-driver/dc3-driver-melsec
|
|
RUN mkdir -p /dc3-driver/dc3-driver-melsec/dc3/logs/driver/melsec
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-melsec/target/dc3-driver-melsec ./
|
|
VOLUME /dc3-driver/dc3-driver-melsec/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-melsec/dc3/data/driver/melsec
|
|
VOLUME /dc3-driver/dc3-driver-melsec/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-plcs7-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-plcs7.
|
|
FROM native-runtime-base AS dc3-driver-plcs7-native
|
|
ENV SERVER_NAME=dc3-driver-plcs7
|
|
ENV APP_BIN=./dc3-driver-plcs7
|
|
WORKDIR /dc3-driver/dc3-driver-plcs7
|
|
RUN mkdir -p /dc3-driver/dc3-driver-plcs7/dc3/logs/driver/plcs7
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-plcs7/target/dc3-driver-plcs7 ./
|
|
VOLUME /dc3-driver/dc3-driver-plcs7/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-plcs7/dc3/data/driver/plcs7
|
|
VOLUME /dc3-driver/dc3-driver-plcs7/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-lorawan-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-lorawan.
|
|
FROM native-runtime-base AS dc3-driver-lorawan-native
|
|
ENV SERVER_NAME=dc3-driver-lorawan
|
|
ENV APP_BIN=./dc3-driver-lorawan
|
|
WORKDIR /dc3-driver/dc3-driver-lorawan
|
|
RUN mkdir -p /dc3-driver/dc3-driver-lorawan/dc3/logs/driver/lorawan
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-lorawan/target/dc3-driver-lorawan ./
|
|
VOLUME /dc3-driver/dc3-driver-lorawan/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-lorawan/dc3/data/driver/lorawan
|
|
VOLUME /dc3-driver/dc3-driver-lorawan/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-opc-ua-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-opc-ua.
|
|
FROM native-runtime-base AS dc3-driver-opc-ua-native
|
|
ENV SERVER_NAME=dc3-driver-opc-ua
|
|
ENV APP_BIN=./dc3-driver-opc-ua
|
|
WORKDIR /dc3-driver/dc3-driver-opc-ua
|
|
RUN mkdir -p /dc3-driver/dc3-driver-opc-ua/dc3/logs/driver/opc-ua
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-opc-ua/target/dc3-driver-opc-ua ./
|
|
VOLUME /dc3-driver/dc3-driver-opc-ua/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-opc-ua/dc3/data/driver/opc-ua
|
|
VOLUME /dc3-driver/dc3-driver-opc-ua/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-lwm2m-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-lwm2m.
|
|
FROM native-runtime-base AS dc3-driver-lwm2m-native
|
|
ENV SERVER_NAME=dc3-driver-lwm2m
|
|
ENV APP_BIN=./dc3-driver-lwm2m
|
|
WORKDIR /dc3-driver/dc3-driver-lwm2m
|
|
RUN mkdir -p /dc3-driver/dc3-driver-lwm2m/dc3/logs/driver/lwm2m
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-lwm2m/target/dc3-driver-lwm2m ./
|
|
VOLUME /dc3-driver/dc3-driver-lwm2m/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-lwm2m/dc3/data/driver/lwm2m
|
|
VOLUME /dc3-driver/dc3-driver-lwm2m/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-iec61850-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-iec61850.
|
|
FROM native-runtime-base AS dc3-driver-iec61850-native
|
|
ENV SERVER_NAME=dc3-driver-iec61850
|
|
ENV APP_BIN=./dc3-driver-iec61850
|
|
WORKDIR /dc3-driver/dc3-driver-iec61850
|
|
RUN mkdir -p /dc3-driver/dc3-driver-iec61850/dc3/logs/driver/iec61850
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-iec61850/target/dc3-driver-iec61850 ./
|
|
VOLUME /dc3-driver/dc3-driver-iec61850/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-iec61850/dc3/data/driver/iec61850
|
|
VOLUME /dc3-driver/dc3-driver-iec61850/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-mysql-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-mysql.
|
|
FROM native-runtime-base AS dc3-driver-mysql-native
|
|
ENV SERVER_NAME=dc3-driver-mysql
|
|
ENV APP_BIN=./dc3-driver-mysql
|
|
WORKDIR /dc3-driver/dc3-driver-mysql
|
|
RUN mkdir -p /dc3-driver/dc3-driver-mysql/dc3/logs/driver/mysql
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-mysql/target/dc3-driver-mysql ./
|
|
VOLUME /dc3-driver/dc3-driver-mysql/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-mysql/dc3/data/driver/mysql
|
|
VOLUME /dc3-driver/dc3-driver-mysql/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-postgresql-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-postgresql.
|
|
FROM native-runtime-base AS dc3-driver-postgresql-native
|
|
ENV SERVER_NAME=dc3-driver-postgresql
|
|
ENV APP_BIN=./dc3-driver-postgresql
|
|
WORKDIR /dc3-driver/dc3-driver-postgresql
|
|
RUN mkdir -p /dc3-driver/dc3-driver-postgresql/dc3/logs/driver/postgresql
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-postgresql/target/dc3-driver-postgresql ./
|
|
VOLUME /dc3-driver/dc3-driver-postgresql/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-postgresql/dc3/data/driver/postgresql
|
|
VOLUME /dc3-driver/dc3-driver-postgresql/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-sqlserver-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-sqlserver.
|
|
FROM native-runtime-base AS dc3-driver-sqlserver-native
|
|
ENV SERVER_NAME=dc3-driver-sqlserver
|
|
ENV APP_BIN=./dc3-driver-sqlserver
|
|
WORKDIR /dc3-driver/dc3-driver-sqlserver
|
|
RUN mkdir -p /dc3-driver/dc3-driver-sqlserver/dc3/logs/driver/sqlserver
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-sqlserver/target/dc3-driver-sqlserver ./
|
|
VOLUME /dc3-driver/dc3-driver-sqlserver/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-sqlserver/dc3/data/driver/sqlserver
|
|
VOLUME /dc3-driver/dc3-driver-sqlserver/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-oracle-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-oracle.
|
|
FROM native-runtime-base AS dc3-driver-oracle-native
|
|
ENV SERVER_NAME=dc3-driver-oracle
|
|
ENV APP_BIN=./dc3-driver-oracle
|
|
WORKDIR /dc3-driver/dc3-driver-oracle
|
|
RUN mkdir -p /dc3-driver/dc3-driver-oracle/dc3/logs/driver/oracle
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-oracle/target/dc3-driver-oracle ./
|
|
VOLUME /dc3-driver/dc3-driver-oracle/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-oracle/dc3/data/driver/oracle
|
|
VOLUME /dc3-driver/dc3-driver-oracle/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-redis-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-redis.
|
|
FROM native-runtime-base AS dc3-driver-redis-native
|
|
ENV SERVER_NAME=dc3-driver-redis
|
|
ENV APP_BIN=./dc3-driver-redis
|
|
WORKDIR /dc3-driver/dc3-driver-redis
|
|
RUN mkdir -p /dc3-driver/dc3-driver-redis/dc3/logs/driver/redis
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-redis/target/dc3-driver-redis ./
|
|
VOLUME /dc3-driver/dc3-driver-redis/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-redis/dc3/data/driver/redis
|
|
VOLUME /dc3-driver/dc3-driver-redis/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-kafka-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-kafka.
|
|
FROM native-runtime-base AS dc3-driver-kafka-native
|
|
ENV SERVER_NAME=dc3-driver-kafka
|
|
ENV APP_BIN=./dc3-driver-kafka
|
|
WORKDIR /dc3-driver/dc3-driver-kafka
|
|
RUN mkdir -p /dc3-driver/dc3-driver-kafka/dc3/logs/driver/kafka
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-kafka/target/dc3-driver-kafka ./
|
|
VOLUME /dc3-driver/dc3-driver-kafka/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-kafka/dc3/data/driver/kafka
|
|
VOLUME /dc3-driver/dc3-driver-kafka/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-modbus-rtu-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-modbus-rtu.
|
|
FROM native-runtime-base AS dc3-driver-modbus-rtu-native
|
|
ENV SERVER_NAME=dc3-driver-modbus-rtu
|
|
ENV APP_BIN=./dc3-driver-modbus-rtu
|
|
WORKDIR /dc3-driver/dc3-driver-modbus-rtu
|
|
RUN mkdir -p /dc3-driver/dc3-driver-modbus-rtu/dc3/logs/driver/modbus-rtu
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-modbus-rtu/target/dc3-driver-modbus-rtu ./
|
|
VOLUME /dc3-driver/dc3-driver-modbus-rtu/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-modbus-rtu/dc3/data/driver/modbus-rtu
|
|
VOLUME /dc3-driver/dc3-driver-modbus-rtu/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-serial-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-serial.
|
|
FROM native-runtime-base AS dc3-driver-serial-native
|
|
ENV SERVER_NAME=dc3-driver-serial
|
|
ENV APP_BIN=./dc3-driver-serial
|
|
WORKDIR /dc3-driver/dc3-driver-serial
|
|
RUN mkdir -p /dc3-driver/dc3-driver-serial/dc3/logs/driver/serial
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-serial/target/dc3-driver-serial ./
|
|
VOLUME /dc3-driver/dc3-driver-serial/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-serial/dc3/data/driver/serial
|
|
VOLUME /dc3-driver/dc3-driver-serial/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-mbus-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-mbus.
|
|
FROM native-runtime-base AS dc3-driver-mbus-native
|
|
ENV SERVER_NAME=dc3-driver-mbus
|
|
ENV APP_BIN=./dc3-driver-mbus
|
|
WORKDIR /dc3-driver/dc3-driver-mbus
|
|
RUN mkdir -p /dc3-driver/dc3-driver-mbus/dc3/logs/driver/mbus
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-mbus/target/dc3-driver-mbus ./
|
|
VOLUME /dc3-driver/dc3-driver-mbus/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-mbus/dc3/data/driver/mbus
|
|
VOLUME /dc3-driver/dc3-driver-mbus/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-dlt645-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-dlt645.
|
|
FROM native-runtime-base AS dc3-driver-dlt645-native
|
|
ENV SERVER_NAME=dc3-driver-dlt645
|
|
ENV APP_BIN=./dc3-driver-dlt645
|
|
WORKDIR /dc3-driver/dc3-driver-dlt645
|
|
RUN mkdir -p /dc3-driver/dc3-driver-dlt645/dc3/logs/driver/dlt645
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-dlt645/target/dc3-driver-dlt645 ./
|
|
VOLUME /dc3-driver/dc3-driver-dlt645/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-dlt645/dc3/data/driver/dlt645
|
|
VOLUME /dc3-driver/dc3-driver-dlt645/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-dlms-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-dlms.
|
|
FROM native-runtime-base AS dc3-driver-dlms-native
|
|
ENV SERVER_NAME=dc3-driver-dlms
|
|
ENV APP_BIN=./dc3-driver-dlms
|
|
WORKDIR /dc3-driver/dc3-driver-dlms
|
|
RUN mkdir -p /dc3-driver/dc3-driver-dlms/dc3/logs/driver/dlms
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-dlms/target/dc3-driver-dlms ./
|
|
VOLUME /dc3-driver/dc3-driver-dlms/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-dlms/dc3/data/driver/dlms
|
|
VOLUME /dc3-driver/dc3-driver-dlms/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-zigbee-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-zigbee.
|
|
FROM native-runtime-base AS dc3-driver-zigbee-native
|
|
ENV SERVER_NAME=dc3-driver-zigbee
|
|
ENV APP_BIN=./dc3-driver-zigbee
|
|
WORKDIR /dc3-driver/dc3-driver-zigbee
|
|
RUN mkdir -p /dc3-driver/dc3-driver-zigbee/dc3/logs/driver/zigbee
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-zigbee/target/dc3-driver-zigbee ./
|
|
VOLUME /dc3-driver/dc3-driver-zigbee/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-zigbee/dc3/data/driver/zigbee
|
|
VOLUME /dc3-driver/dc3-driver-zigbee/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|
|
|
|
# ---------- dc3-driver-sl651-native ----------
|
|
# Requires --build-arg NATIVE_SERVICE=dc3-driver-sl651. The SL651 optional
|
|
# dependency bridge is registered in this module's Sl651NativeRuntimeHints.
|
|
FROM native-runtime-base AS dc3-driver-sl651-native
|
|
ENV SERVER_NAME=dc3-driver-sl651
|
|
ENV APP_BIN=./dc3-driver-sl651
|
|
WORKDIR /dc3-driver/dc3-driver-sl651
|
|
RUN mkdir -p /dc3-driver/dc3-driver-sl651/dc3/logs/driver/sl651
|
|
COPY --from=driver-native-builder /build/dc3-driver/dc3-driver-sl651/target/dc3-driver-sl651 ./
|
|
VOLUME /dc3-driver/dc3-driver-sl651/dc3/logs
|
|
RUN mkdir -p /dc3-driver/dc3-driver-sl651/dc3/data/driver/sl651
|
|
VOLUME /dc3-driver/dc3-driver-sl651/dc3/data
|
|
ENTRYPOINT ["/usr/share/dc3/entrypoint-native.sh"]
|