You are viewing a plain text version of this content. The canonical link for it is here.
Posted to gitbox@hive.apache.org by "deniskuzZ (via GitHub)" <gi...@apache.org> on 2023/04/04 15:59:01 UTC

[GitHub] [hive] deniskuzZ commented on a diff in pull request #3448: HIVE-26400: Provide docker images for Hive

deniskuzZ commented on code in PR #3448:
URL: https://github.com/apache/hive/pull/3448#discussion_r1157465223


##########
packaging/src/docker/README.md:
##########
@@ -0,0 +1,131 @@
+### Introduction
+
+---
+Run Apache Hive inside docker container in pseudo-distributed mode, provide the following
+- Quick-start/Debugging/Prepare a test env for Hive
+
+
+### Quickstart
+
+---
+#### Build image
+Apache Hive relies on Hadoop, Tez and some others to facilitate reading, writing, and managing large datasets. 
+The `build.sh` provides ways to build the image against specified version of the dependent, as well as build from source.
+
+##### Build from source
+```shell
+mvn clean package -pl packaging -DskipTests -Pdocker
+```
+##### Build with specified version
+There are some arguments to specify the component version:
+```shell
+-hadoop <hadoop version>
+-tez <tez version>
+-hive <hive version> 
+```
+If the version is not provided, it will read the version from current `pom.xml`:
+`project.version`, `hadoop.version` and `tez.version` for Hive, Hadoop and Tez respectively. 
+
+For example, the following command uses Hive 3.1.3, Hadoop `hadoop.version` and Tez `tez.version` to build the image,
+```shell
+./build.sh -hive 3.1.3
+```
+If the command does not specify the Hive version, it will use the local `apache-hive-${project.version}-bin.tar.gz`(will trigger a build if it doesn't exist),
+together with Hadoop 3.1.0 and Tez 0.10.1 to build the image,
+```shell
+./build.sh -hadoop 3.1.0 -tez 0.10.1
+```
+After building successfully,  we can get a Docker image named `apache/hive` by default, the image is tagged by the provided Hive version.
+
+#### Run services
+
+Before going further, we should define the environment variable `HIVE_VERSION` first.
+For example, if `-hive 3.1.3` is specified to build the image,
+```shell
+export HIVE_VERSION=3.1.3
+```
+or assuming that you're relying on current `project.version` from pom.xml,
+```shell
+export HIVE_VERSION=$(mvn -f pom.xml -q help:evaluate -Dexpression=project.version -DforceStdout)
+```
+- Metastore
+
+For a quick start, launch the Metastore with Derby,
+  ```shell
+  docker run -d -p 9083:9083 --env SERVICE_NAME=metastore --name metastore-standalone apache/hive:${HIVE_VERSION}
+  ```
+  Everything would be lost when the service is down. In order to save the Hive table's schema and data, start the container with an external Postgres and Volume to keep them,
+
+  ```shell
+  docker run -d -p 9083:9083 --env SERVICE_NAME=metastore \
+       --env DB_DRIVER=postgres \

Review Comment:
   where is the driver coming from?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: gitbox-unsubscribe@hive.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: gitbox-unsubscribe@hive.apache.org
For additional commands, e-mail: gitbox-help@hive.apache.org