Persist interpreter changes with docker

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Persist interpreter changes with docker

Soeren Krings

I am using Apache Zeppelin with docker and I asked myself: What is the best practice to persist interpreter configuration changes? I run the docker container using the following command to persist /logs and /notebooks:

docker run -p 8080:8080 --rm -v $PWD/logs:/logs -v $PWD/notebook:/notebook -e ZEPPELIN_LOG_DIR='/logs' -e ZEPPELIN_NOTEBOOK_DIR='/notebook' --name zeppelin apache/zeppelin:0.7.3

I need to set some custom settings for the jdbc interpreter, these are persisted in /zeppelin/conf/interpreter.json. If I stop the docker container and run it again the jdbc interpreter configuration changes are lost. How can I persist these changes as well? Should I mount the /conf folder to the host system? Or should I reuse the container? Docker run creates a new container named zeppelin, and if you skip option --rm the container will not be deleted on exit. Afterwards, I am able to start and stop the container using docker start/stop zeppelin.