mirror of
https://github.com/apache/zeppelin
synced 2026-05-24 09:38:26 +00:00
### What is this PR for? This PR is for making docker images for zeppelin releases. It contains a script for building image for each release. Another script is used for publishing images to zeppelin Dockerhub account. This repo, https://github.com/mfelgamal/zeppelin-dockers, is a demonstration of this PR. It contains zeppelin-base image and an image for each zeppelin release. ### What type of PR is it? [Feature] ### Todos - Review Comments - Documentation ### What is the Jira issue? https://issues.apache.org/jira/browse/ZEPPELIN-1386 ### How should this be tested? - run create_release script or publish_release script. ### Screenshots (if appropriate) ### Questions: - Does the licenses files need update? no - Is there breaking changes for older versions? no - Does this needs documentation? yes Author: mahmoudelgamal <mahmoudf.elgamal@gmail.com> Author: mfelgamal <mahmoudf.elgamal@gmail.com> Author: Mahmoud Elgamal <mahmoudf.elgamal@gmail.com> Author: 1ambda <1amb4a@gmail.com> Closes #1538 from mfelgamal/zeppelin-dockers and squashes the following commits:cc8493f[Mahmoud Elgamal] Merge pull request #3 from 1ambda/fix/remove-startzeppelinshd48ecef[1ambda] fix: Remove start-zeppelin.shb64c680[mahmoudelgamal] Remove gcc and g++ for decreasing the size1f093d4[mahmoudelgamal] Add script start-zeppelin to zeppelin-based2c744e[mahmoudelgamal] add scala to zeppelin-basefd23970[mahmoudelgamal] remove bash erorr message.e1d4b77[mahmoudelgamal] add R and python to zeppelin-basee731cb4[mahmoudelgamal] Add java-cacerts to zeppelin-basee642309[mahmoudelgamal] Add documentation and some modifications231a414[mahmoudelgamal] Add zeppelin-base imageac06f3a[mahmoudelgamal] Make docker image for zeppelin release48d0a01[mfelgamal] Merge pull request #1 from apache/master
70 lines
2.5 KiB
Markdown
70 lines
2.5 KiB
Markdown
---
|
|
layout: page
|
|
title: "Apache Zeppelin Releases Docker Images"
|
|
description: "This document contains instructions about making docker containers for Zeppelin. It mainly provides guidance into how to create, publish and run docker images for zeppelin releases."
|
|
group: install
|
|
---
|
|
<!--
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
{% include JB/setup %}
|
|
|
|
# Apache Zeppelin Releases Docker Images
|
|
|
|
<div id="toc"></div>
|
|
|
|
## Overview
|
|
This document contains instructions about making docker containers for Zeppelin. It mainly provides guidance into how to create, publish and run docker images for zeppelin releases.
|
|
|
|
## Quick Start
|
|
### Installing Docker
|
|
You need to [install docker](https://docs.docker.com/engine/installation/) on your machine.
|
|
|
|
### Creating and Publishing Zeppelin docker image
|
|
* In order to be able to create and/or publish an image, you need to set the **DockerHub** credentials `DOCKER_USERNAME, DOCKER_PASSWORD, DOCKER_EMAIL` variables as environment variables.
|
|
|
|
* To create an image for some release use :
|
|
`create_release.sh <release-version> <git-tag>`.
|
|
* To publish the created image use :
|
|
`publish_release.sh <release-version> <git-tag>`
|
|
|
|
### Running a Zeppelin docker image
|
|
|
|
* To start Zeppelin, you need to pull the zeppelin release image:
|
|
```
|
|
docker pull ${DOCKER_USERNAME}/zeppelin-release:<release-version>
|
|
|
|
docker run --rm -it -p 7077:7077 -p 8080:8080 ${DOCKER_USERNAME}/zeppelin-release:<release-version> -c bash
|
|
```
|
|
* Then a docker container will start with a Zeppelin release on path :
|
|
`/usr/local/zeppelin/`
|
|
|
|
* Run zeppelin inside docker:
|
|
```
|
|
/usr/local/zeppelin/bin/zeppelin.sh
|
|
```
|
|
|
|
* To Run Zeppelin in daemon mode
|
|
Mounting logs and notebooks zeppelin to folders on your host machine
|
|
|
|
```
|
|
docker run -p 7077:7077 -p 8080:8080 --privileged=true -v $PWD/logs:/logs -v $PWD/notebook:/notebook \
|
|
-e ZEPPELIN_NOTEBOOK_DIR='/notebook' \
|
|
-e ZEPPELIN_LOG_DIR='/logs' \
|
|
-d ${DOCKER_USERNAME}/zeppelin-release:<release-version> \
|
|
/usr/local/zeppelin/bin/zeppelin.sh
|
|
```
|
|
|
|
|
|
* Zeppelin will run at `http://localhost:8080`.
|
|
|