From 4c186c690a74ac8f26b322feeb6d3c55eb31cc4f Mon Sep 17 00:00:00 2001 From: Yihong Wang Date: Tue, 14 Nov 2023 11:44:25 -0800 Subject: [PATCH] Add simple settings to prestodb/presto image Update the Dockerfile to add `config.properties` and `jvm.config`. Then users can bring up a Presto server without extra configurations. This change makes the image can be used out of the box. Signed-off-by: Yihong Wang --- docker/Dockerfile | 6 +++++- docker/build.sh | 16 ++++++++++++++++ docker/etc/catalog/jmx.properties | 1 + docker/etc/catalog/memory.properties | 1 + docker/etc/catalog/tpcds.properties | 1 + docker/etc/catalog/tpch.properties | 1 + 6 files changed, 25 insertions(+), 1 deletion(-) create mode 100755 docker/build.sh create mode 100644 docker/etc/catalog/jmx.properties create mode 100644 docker/etc/catalog/memory.properties create mode 100644 docker/etc/catalog/tpcds.properties create mode 100644 docker/etc/catalog/tpch.properties diff --git a/docker/Dockerfile b/docker/Dockerfile index d698fe56ca0f0..6740190e10964 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -29,7 +29,11 @@ RUN dnf install -y java-11-openjdk less procps python3 \ # Download jmx prometheus exporter \ && curl -o /usr/lib/presto/utils/jmx_prometheus_javaagent-0.20.0.jar https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.20.0/jmx_prometheus_javaagent-0.20.0.jar -COPY etc $PRESTO_HOME/etc +COPY etc/config.properties.example $PRESTO_HOME/etc/config.properties +COPY etc/jvm.config.example $PRESTO_HOME/etc/jvm.config +COPY etc/node.properties $PRESTO_HOME/etc/node.properties COPY entrypoint.sh /opt +EXPOSE 8080 + ENTRYPOINT ["/opt/entrypoint.sh"] diff --git a/docker/build.sh b/docker/build.sh new file mode 100755 index 0000000000000..157e337d024ca --- /dev/null +++ b/docker/build.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +if [ "$#" != "1" ]; then + echo "usage: build.sh " + exit 1 +fi + +VERSION=$1 +TAG="${TAG:-latest}" + +wget https://repo1.maven.org/maven2/com/facebook/presto/presto-server/${VERSION}/presto-server-${VERSION}.tar.gz +wget https://repo1.maven.org/maven2/com/facebook/presto/presto-cli/${VERSION}/presto-cli-${VERSION}-executable.jar + +docker build -t prestodb/presto:${TAG} --build-arg="PRESTO_VERSION=${VERSION}" -f Dockerfile . + +# docker push? diff --git a/docker/etc/catalog/jmx.properties b/docker/etc/catalog/jmx.properties new file mode 100644 index 0000000000000..93b161f50e30f --- /dev/null +++ b/docker/etc/catalog/jmx.properties @@ -0,0 +1 @@ +connector.name=jmx \ No newline at end of file diff --git a/docker/etc/catalog/memory.properties b/docker/etc/catalog/memory.properties new file mode 100644 index 0000000000000..9e1e933b784c2 --- /dev/null +++ b/docker/etc/catalog/memory.properties @@ -0,0 +1 @@ +connector.name=memory \ No newline at end of file diff --git a/docker/etc/catalog/tpcds.properties b/docker/etc/catalog/tpcds.properties new file mode 100644 index 0000000000000..a3d6379beb229 --- /dev/null +++ b/docker/etc/catalog/tpcds.properties @@ -0,0 +1 @@ +connector.name=tpcds \ No newline at end of file diff --git a/docker/etc/catalog/tpch.properties b/docker/etc/catalog/tpch.properties new file mode 100644 index 0000000000000..16e833ca8f436 --- /dev/null +++ b/docker/etc/catalog/tpch.properties @@ -0,0 +1 @@ +connector.name=tpch \ No newline at end of file