mirror of
https://github.com/datahub-project/datahub.git
synced 2025-10-29 17:59:24 +00:00
Dockerize updates (#7387)
This commit is contained in:
parent
2764c44977
commit
571970cf62
@ -1,28 +1,30 @@
|
||||
# Defining environment
|
||||
ARG APP_ENV=prod
|
||||
|
||||
FROM alpine:3 AS base
|
||||
FROM golang:1-alpine3.17 AS binary
|
||||
|
||||
ENV DOCKERIZE_VERSION v0.6.1
|
||||
WORKDIR /go/src/github.com/jwilder
|
||||
|
||||
RUN apk --no-cache --update add openssl git tar curl
|
||||
|
||||
WORKDIR /go/src/github.com/jwilder/dockerize
|
||||
|
||||
RUN go install github.com/jwilder/dockerize@$DOCKERIZE_VERSION
|
||||
|
||||
FROM alpine:3 AS base
|
||||
|
||||
# Upgrade Alpine and base packages
|
||||
RUN apk --no-cache --update-cache --available upgrade \
|
||||
&& if [ $(arch) = "aarch64" ]; then \
|
||||
DOCKERIZE_ARCH='aarch64';\
|
||||
elif [ $(arch) = "x86_64" ]; then \
|
||||
DOCKERIZE_ARCH='amd64'; \
|
||||
else \
|
||||
echo >&2 "Unsupported architecture $(arch)" ; exit 1; \
|
||||
fi \
|
||||
&& apk --no-cache add tar curl bash coreutils gcompat \
|
||||
&& apk --no-cache add curl bash coreutils gcompat \
|
||||
&& apk --no-cache add openjdk11-jre --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
||||
&& curl -sS https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-runner/9.4.46.v20220331/jetty-runner-9.4.46.v20220331.jar --output jetty-runner.jar \
|
||||
&& curl -sS https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-jmx/9.4.46.v20220331/jetty-jmx-9.4.46.v20220331.jar --output jetty-jmx.jar \
|
||||
&& curl -sS https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-util/9.4.46.v20220331/jetty-util-9.4.46.v20220331.jar --output jetty-util.jar \
|
||||
&& wget --no-verbose https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/download/v1.18.0/opentelemetry-javaagent.jar \
|
||||
&& wget --no-verbose https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.17.2/jmx_prometheus_javaagent-0.17.2.jar -O jmx_prometheus_javaagent.jar \
|
||||
&& cp /usr/lib/jvm/java-11-openjdk/jre/lib/security/cacerts /tmp/kafka.client.truststore.jks \
|
||||
&& curl -sS -L https://github.com/treff7es/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-${DOCKERIZE_ARCH}-$DOCKERIZE_VERSION.tar.gz | tar -C /usr/local/bin -xzv
|
||||
&& cp /usr/lib/jvm/java-11-openjdk/jre/lib/security/cacerts /tmp/kafka.client.truststore.jks
|
||||
COPY --from=binary /go/bin/dockerize /usr/local/bin
|
||||
|
||||
FROM base as prod-install
|
||||
COPY war.war /datahub/datahub-gms/bin/war.war
|
||||
|
||||
@ -1,25 +1,27 @@
|
||||
# Defining environment
|
||||
ARG APP_ENV=prod
|
||||
|
||||
FROM alpine:3 AS base
|
||||
FROM golang:1-alpine3.17 AS binary
|
||||
|
||||
ENV DOCKERIZE_VERSION v0.6.1
|
||||
WORKDIR /go/src/github.com/jwilder
|
||||
|
||||
RUN apk --no-cache --update add openssl git tar curl
|
||||
|
||||
WORKDIR /go/src/github.com/jwilder/dockerize
|
||||
|
||||
RUN go install github.com/jwilder/dockerize@$DOCKERIZE_VERSION
|
||||
|
||||
FROM alpine:3 AS base
|
||||
|
||||
# Upgrade Alpine and base packages
|
||||
RUN apk --no-cache --update-cache --available upgrade \
|
||||
&& if [ $(arch) = "aarch64" ]; then \
|
||||
DOCKERIZE_ARCH='aarch64';\
|
||||
elif [ $(arch) = "x86_64" ]; then \
|
||||
DOCKERIZE_ARCH='amd64'; \
|
||||
else \
|
||||
echo >&2 "Unsupported architecture $(arch)" ; exit 1; \
|
||||
fi \
|
||||
&& apk --no-cache add tar curl bash coreutils \
|
||||
&& apk --no-cache add curl bash coreutils \
|
||||
&& apk --no-cache add openjdk11-jre --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
||||
&& wget --no-verbose https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/download/v1.18.0/opentelemetry-javaagent.jar \
|
||||
&& wget --no-verbose https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.17.2/jmx_prometheus_javaagent-0.17.2.jar -O jmx_prometheus_javaagent.jar \
|
||||
&& cp /usr/lib/jvm/java-11-openjdk/jre/lib/security/cacerts /tmp/kafka.client.truststore.jks \
|
||||
&& curl -sSL https://github.com/treff7es/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-${DOCKERIZE_ARCH}-$DOCKERIZE_VERSION.tar.gz | tar -C /usr/local/bin -xzv
|
||||
&& cp /usr/lib/jvm/java-11-openjdk/jre/lib/security/cacerts /tmp/kafka.client.truststore.jks
|
||||
COPY --from=binary /go/bin/dockerize /usr/local/bin
|
||||
|
||||
FROM base as prod-install
|
||||
COPY mae-consumer-job.jar /datahub/datahub-mae-consumer/bin/
|
||||
|
||||
@ -1,25 +1,27 @@
|
||||
# Defining environment
|
||||
ARG APP_ENV=prod
|
||||
|
||||
FROM alpine:3 AS base
|
||||
FROM golang:1-alpine3.17 AS binary
|
||||
|
||||
ENV DOCKERIZE_VERSION v0.6.1
|
||||
WORKDIR /go/src/github.com/jwilder
|
||||
|
||||
RUN apk --no-cache --update add openssl git tar curl
|
||||
|
||||
WORKDIR /go/src/github.com/jwilder/dockerize
|
||||
|
||||
RUN go install github.com/jwilder/dockerize@$DOCKERIZE_VERSION
|
||||
|
||||
FROM alpine:3 AS base
|
||||
|
||||
# Upgrade Alpine and base packages
|
||||
RUN apk --no-cache --update-cache --available upgrade \
|
||||
&& if [ $(arch) = "aarch64" ]; then \
|
||||
DOCKERIZE_ARCH='aarch64';\
|
||||
elif [ $(arch) = "x86_64" ]; then \
|
||||
DOCKERIZE_ARCH='amd64'; \
|
||||
else \
|
||||
echo >&2 "Unsupported architecture $(arch)" ; exit 1; \
|
||||
fi \
|
||||
&& apk --no-cache add tar curl bash \
|
||||
&& apk --no-cache add curl bash \
|
||||
&& apk --no-cache add openjdk11-jre --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
||||
&& wget --no-verbose https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/download/v1.18.0/opentelemetry-javaagent.jar \
|
||||
&& wget --no-verbose https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.17.2/jmx_prometheus_javaagent-0.17.2.jar -O jmx_prometheus_javaagent.jar \
|
||||
&& cp /usr/lib/jvm/java-11-openjdk/jre/lib/security/cacerts /tmp/kafka.client.truststore.jks \
|
||||
&& curl -sSL https://github.com/treff7es/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-${DOCKERIZE_ARCH}-$DOCKERIZE_VERSION.tar.gz | tar -C /usr/local/bin -xzv
|
||||
&& cp /usr/lib/jvm/java-11-openjdk/jre/lib/security/cacerts /tmp/kafka.client.truststore.jks
|
||||
COPY --from=binary /go/bin/dockerize /usr/local/bin
|
||||
|
||||
FROM base as prod-install
|
||||
COPY mce-consumer-job.jar /datahub/datahub-mce-consumer/bin/
|
||||
|
||||
@ -1,26 +1,30 @@
|
||||
# Defining environment
|
||||
ARG APP_ENV=prod
|
||||
|
||||
FROM alpine:3 AS base
|
||||
FROM golang:1-alpine3.17 AS binary
|
||||
|
||||
ENV DOCKERIZE_VERSION v0.6.1
|
||||
WORKDIR /go/src/github.com/jwilder
|
||||
|
||||
RUN apk --no-cache --update add openssl git tar curl
|
||||
|
||||
WORKDIR /go/src/github.com/jwilder/dockerize
|
||||
|
||||
RUN go install github.com/jwilder/dockerize@$DOCKERIZE_VERSION
|
||||
|
||||
FROM alpine:3 AS base
|
||||
|
||||
# Upgrade Alpine and base packages
|
||||
RUN apk --no-cache --update-cache --available upgrade \
|
||||
&& if [ $(arch) = "aarch64" ]; then \
|
||||
DOCKERIZE_ARCH='aarch64';\
|
||||
elif [ $(arch) = "x86_64" ]; then \
|
||||
DOCKERIZE_ARCH='amd64'; \
|
||||
else \
|
||||
echo >&2 "Unsupported architecture $(arch)" ; exit 1; \
|
||||
fi \
|
||||
&& apk --no-cache add tar curl bash coreutils gcompat \
|
||||
&& apk --no-cache add curl bash coreutils gcompat \
|
||||
&& apk --no-cache add openjdk11-jre --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
||||
&& curl -sS https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-runner/9.4.46.v20220331/jetty-runner-9.4.46.v20220331.jar --output jetty-runner.jar \
|
||||
&& curl -sS https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-jmx/9.4.46.v20220331/jetty-jmx-9.4.46.v20220331.jar --output jetty-jmx.jar \
|
||||
&& curl -sS https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-util/9.4.46.v20220331/jetty-util-9.4.46.v20220331.jar --output jetty-util.jar \
|
||||
&& wget --no-verbose https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/download/v1.18.0/opentelemetry-javaagent.jar \
|
||||
&& wget --no-verbose https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.17.2/jmx_prometheus_javaagent-0.17.2.jar -O jmx_prometheus_javaagent.jar \
|
||||
&& cp /usr/lib/jvm/java-11-openjdk/jre/lib/security/cacerts /tmp/kafka.client.truststore.jks \
|
||||
&& curl -sSL https://github.com/treff7es/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-${DOCKERIZE_ARCH}-$DOCKERIZE_VERSION.tar.gz | tar -C /usr/local/bin -xzv
|
||||
&& cp /usr/lib/jvm/java-11-openjdk/jre/lib/security/cacerts /tmp/kafka.client.truststore.jks
|
||||
COPY --from=binary /go/bin/dockerize /usr/local/bin
|
||||
|
||||
FROM base as prod-install
|
||||
COPY datahub-upgrade.jar /datahub/datahub-upgrade/bin/
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# Defining environment
|
||||
ARG APP_ENV=prod
|
||||
|
||||
FROM golang:1.17-alpine3.15 AS binary
|
||||
FROM golang:1-alpine3.17 AS binary
|
||||
|
||||
ENV DOCKERIZE_VERSION v0.6.1
|
||||
WORKDIR /go/src/github.com/jwilder
|
||||
@ -15,7 +15,7 @@ WORKDIR /go/src/github.com/jwilder/dockerize
|
||||
RUN go install github.com/jwilder/dockerize@$DOCKERIZE_VERSION
|
||||
|
||||
FROM alpine:3 AS base
|
||||
RUN apk add --no-cache curl jq tar bash coreutils
|
||||
RUN apk add --no-cache curl jq bash coreutils
|
||||
COPY --from=binary /go/bin/dockerize /usr/local/bin
|
||||
|
||||
FROM base AS prod-install
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
FROM golang:1.17-alpine3.15 AS binary
|
||||
FROM golang:1-alpine3.17 AS binary
|
||||
|
||||
ENV DOCKERIZE_VERSION v0.6.1
|
||||
WORKDIR /go/src/github.com/jwilder
|
||||
@ -12,7 +12,7 @@ RUN go install github.com/jwilder/dockerize@$DOCKERIZE_VERSION
|
||||
FROM alpine:3
|
||||
COPY --from=binary /go/bin/dockerize /usr/local/bin
|
||||
|
||||
RUN apk add --no-cache mysql-client curl tar bash
|
||||
RUN apk add --no-cache mysql-client bash
|
||||
|
||||
COPY docker/mysql-setup/init.sql /init.sql
|
||||
COPY docker/mysql-setup/init.sh /init.sh
|
||||
|
||||
@ -1,8 +1,18 @@
|
||||
FROM alpine:3
|
||||
FROM golang:1-alpine3.17 AS binary
|
||||
|
||||
ENV DOCKERIZE_VERSION v0.6.1
|
||||
RUN apk add --no-cache postgresql-client curl tar \
|
||||
&& curl -sSL https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz | tar -C /usr/local/bin -xzv
|
||||
WORKDIR /go/src/github.com/jwilder
|
||||
|
||||
RUN apk --no-cache --update add openssl git tar curl
|
||||
|
||||
WORKDIR /go/src/github.com/jwilder/dockerize
|
||||
|
||||
RUN go install github.com/jwilder/dockerize@$DOCKERIZE_VERSION
|
||||
|
||||
FROM alpine:3
|
||||
|
||||
RUN apk add --no-cache postgresql-client
|
||||
COPY --from=binary /go/bin/dockerize /usr/local/bin
|
||||
|
||||
COPY docker/postgres-setup/init.sql /init.sql
|
||||
COPY docker/postgres-setup/init.sh /init.sh
|
||||
|
||||
42
docker/postgres-setup/build.gradle
Normal file
42
docker/postgres-setup/build.gradle
Normal file
@ -0,0 +1,42 @@
|
||||
plugins {
|
||||
id 'com.palantir.docker'
|
||||
id 'java' // required for versioning
|
||||
}
|
||||
|
||||
apply from: "../../gradle/versioning/versioning.gradle"
|
||||
|
||||
ext {
|
||||
docker_registry = rootProject.ext.docker_registry == 'linkedin' ? 'acryldata' : docker_registry
|
||||
docker_repo = 'datahub-postgres-setup'
|
||||
docker_dir = 'postgres-setup'
|
||||
}
|
||||
|
||||
docker {
|
||||
name "${docker_registry}/${docker_repo}:v${version}"
|
||||
version "v${version}"
|
||||
dockerfile file("${rootProject.projectDir}/docker/${docker_dir}/Dockerfile")
|
||||
files fileTree(rootProject.projectDir) {
|
||||
include "docker/${docker_dir}/*"
|
||||
}
|
||||
tag("Debug", "${docker_registry}/${docker_repo}:debug")
|
||||
|
||||
// platform('linux/arm64', 'linux/amd64')
|
||||
buildx(true)
|
||||
load(true)
|
||||
push(false)
|
||||
}
|
||||
tasks.getByPath('docker').dependsOn('build')
|
||||
|
||||
task mkdirBuildDocker {
|
||||
doFirst {
|
||||
mkdir "${project.buildDir}/docker"
|
||||
}
|
||||
}
|
||||
dockerClean.finalizedBy(mkdirBuildDocker)
|
||||
|
||||
task cleanLocalDockerImages {
|
||||
doLast {
|
||||
rootProject.ext.cleanLocalDockerImages(docker_registry, docker_repo, "v${version}")
|
||||
}
|
||||
}
|
||||
dockerClean.finalizedBy(cleanLocalDockerImages)
|
||||
@ -29,6 +29,7 @@ include 'metadata-jobs:mce-consumer-job'
|
||||
include ':docker'
|
||||
include ':docker:elasticsearch-setup'
|
||||
include ':docker:mysql-setup'
|
||||
include ':docker:postgres-setup'
|
||||
include ':docker:kafka-setup'
|
||||
include 'metadata-models'
|
||||
include 'metadata-models-validator'
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user