Trino engine with Hive Metastore and Minio filesystem. This configuration is not for Trino deployments in production.
- Clone repo
- Install docker/podman + docker-compose
- Run
docker-compose up - Done! Checkout the service endpoints:
Trino: http://localhost:8080/ui/
Minio: http://localhost:9001/ (username: minio, password: minio123)
On MacOS the podman project does not expose the podman.socket which is similar to docker.socket, by default. So to get docker-compose working one needs to expose the socket.
To get the socket running run the following commands. First we need to find the port it is exposed on in the VM.
podman system connection lsThen we need to take that port and create a forward ssh connection to that.
ssh -fnNT -L/tmp/podman.sock:/run/user/501/podman/podman.sock -i ~/.ssh/podman-machine-default ssh://core@localhost:<port to socket> -o StreamLocalBindUnlink=yes
export DOCKER_HOST='unix:///tmp/podman.sock'Second, we expose the DOCKER_HOST env variable that is used by docker-compose.
Be aware that if the connection is disconnected one needs to delete/overwrite the /tmp/podman.socket to run the forward command.
Use docker exec to run commands inside the container
docker exec -it trino trino --user adminYou could also connect to trino-server from host machine via trino-cli
trino-cli --server localhost:8080 --user adminFor getting full rights you need to set role admin in hive
SET ROLE admin IN hive;