blob: 98c89bc3adc79f6a457f871fb157c426e1832a34 [file] [log] [blame]
<!doctype html>
<html lang="en" dir="ltr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="generator" content="Docusaurus v2.0.0-beta.1">
<link rel="alternate" type="application/rss+xml" href="/blog/rss.xml" title="Apache Pinot™ Blog RSS Feed">
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml" title="Apache Pinot™ Blog Atom Feed">
<link rel="preconnect" href="https://www.google-analytics.com">
<script>window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new Date,ga("create","UA-157446650-1","auto"),ga("send","pageview")</script>
<script async src="https://www.google-analytics.com/analytics.js"></script>
<link rel="search" type="application/opensearchdescription+xml" title="Apache Pinot™" href="/opensearch.xml">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Ubuntu|Roboto|Source+Code+Pro">
<link rel="stylesheet" href="https://at-ui.github.io/feather-font/css/iconfont.css"><title data-react-helmet="true">Build Docker Images | Apache Pinot™</title><meta data-react-helmet="true" property="og:url" content="https://pinot.apache.org/docs/misc/build-docker"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-react-helmet="true" property="og:title" content="Build Docker Images | Apache Pinot™"><meta data-react-helmet="true" name="description" content="Build Docker Images"><meta data-react-helmet="true" property="og:description" content="Build Docker Images"><link data-react-helmet="true" rel="shortcut icon" href="/img/favicon.ico"><link data-react-helmet="true" rel="canonical" href="https://pinot.apache.org/docs/misc/build-docker"><link data-react-helmet="true" rel="alternate" href="https://pinot.apache.org/docs/misc/build-docker" hreflang="en"><link data-react-helmet="true" rel="alternate" href="https://pinot.apache.org/docs/misc/build-docker" hreflang="x-default"><link data-react-helmet="true" rel="preconnect" href="https://BH4D9OD16A-dsn.algolia.net" crossorigin="anonymous"><link rel="stylesheet" href="/assets/css/styles.f0793de6.css">
<link rel="preload" href="/assets/js/runtime~main.dfc58ce0.js" as="script">
<link rel="preload" href="/assets/js/main.16915bd7.js" as="script">
</head>
<body>
<script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):window.matchMedia("(prefers-color-scheme: light)").matches?e("light"):e("dark")}()</script><div id="__docusaurus">
<div><a href="#main" class="skipToContent_OuoZ shadow--md">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_RReh"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle clean-btn" type="button" tabindex="0"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/"><img src="/img/pinot-navbar-logo-722f37.svg" alt="Pinot" class="themedImage_TMUO themedImage--light_4Vu1 navbar__logo"><img src="/img/pinot-navbar-logo-722f37.svg" alt="Pinot" class="themedImage_TMUO themedImage--dark_uzRr navbar__logo"></a></div><div class="navbar__items navbar__items--right"><a href="https://docs.pinot.apache.org/" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">Docs</a><a class="navbar__item navbar__link" href="/download">Download</a><a class="navbar__item navbar__link" href="/blog">Blog</a><a href="https://github.com/apache/pinot" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link"><span>GitHub<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_wgqa"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></span></a><div class="react-toggle displayOnlyInLargeViewport_cxYs react-toggle--checked react-toggle--disabled"><div class="react-toggle-track" role="button" tabindex="-1"><div class="react-toggle-track-check"><span class="toggle_iYfV" style="margin-left:2px">🌙</span></div><div class="react-toggle-track-x"><span class="toggle_iYfV" style="margin-left:2px">☀️</span></div><div class="react-toggle-thumb"></div></div><input type="checkbox" checked="" class="react-toggle-screenreader-only" aria-label="Switch between dark and light mode"></div><div class="searchBox_NKBi"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><svg width="20" height="20" class="DocSearch-Search-Icon" viewBox="0 0 20 20"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"></span></button></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div><div class="navbar-sidebar"><div class="navbar-sidebar__brand"><a class="navbar__brand" href="/"><img src="/img/pinot-navbar-logo-722f37.svg" alt="Pinot" class="themedImage_TMUO themedImage--light_4Vu1 navbar__logo"><img src="/img/pinot-navbar-logo-722f37.svg" alt="Pinot" class="themedImage_TMUO themedImage--dark_uzRr navbar__logo"></a></div><div class="navbar-sidebar__items"><div class="menu"><ul class="menu__list"><li class="menu__list-item"><a href="https://docs.pinot.apache.org/" target="_blank" rel="noopener noreferrer" class="menu__link">Docs</a></li><li class="menu__list-item"><a class="menu__link" href="/download">Download</a></li><li class="menu__list-item"><a class="menu__link" href="/blog">Blog</a></li><li class="menu__list-item"><a href="https://github.com/apache/pinot" target="_blank" rel="noopener noreferrer" class="menu__link"><span>GitHub<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_wgqa"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></span></a></li></ul></div></div></div></nav><div class="main-wrapper docs-wrapper doc-page"><div class="docPage_lDyR"><main class="docMainContainer_r8cw docMainContainerEnhanced_SOUu"><div class="container padding-top--md padding-bottom--lg docItemWrapper_NJLN"><div class="row"><div class="col docItemCol_zHA2"><div class="docItemContainer_oiyr"><article><div class="markdown"><header><h1 class="h1Heading_dC7a">Build Docker Images</h1></header><p>The scripts to build Pinot related docker images is located at <a href="https://github.com/apache/pinot/tree/master/docker/images" target="_blank" rel="noopener noreferrer">here</a></p><p>You can access those scripts by running below command to checkout Pinot repo:</p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI bash"><pre tabindex="0" class="prism-code language-bash codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">git</span><span class="token plain"> clone git@github.com:apache/pinot.git pinot</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token builtin class-name" style="color:rgb(189, 147, 249)">cd</span><span class="token plain"> pinot/docker/images</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p>You can find current supported 3 images in this directory:</p><ul><li>Pinot: Pinot all-in-one distribution image</li><li>Pinot-Presto: Presto image with Presto-Pinot Connector built-in.</li><li>Pinot-Superset: Superset image with Pinot connector built-in.</li></ul><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="pinot"></a>Pinot<a class="hash-link" href="#pinot" title="Direct link to heading">#</a></h2><p>This is a docker image of <a href="https://github.com/apache/pinot" target="_blank" rel="noopener noreferrer">Apache Pinot</a></p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="how-to-build-a-docker-image"></a>How to build a docker image<a class="hash-link" href="#how-to-build-a-docker-image" title="Direct link to heading">#</a></h3><p>There is a docker build script which will build a given Git repo/branch and tag the image.</p><p>Usage:</p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI bash"><pre tabindex="0" class="prism-code language-bash codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">./docker-build.sh </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain">Docker Tag</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain">Git Branch</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain">Pinot Git URL</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p>This script will check out Pinot Repo <code>[Pinot Git URL]</code> on branch <code>[Git Branch]</code> and build the docker image for that. <br>
The docker image is tagged as <code>[Docker Tag]</code>. <br>
Docker Tag: Name and tag your docker image. Default is <code>pinot:latest</code>. <br>
Git Branch: The Pinot branch to build. Default is master. <br>
Pinot Git URL: The Pinot Git Repo to build, users can set it to their own fork. <br>
Please note that, the URL is <code>https://</code> based, not <code>git://</code>. <br>
Default is the <a href="https://github.com/apache/pinot.git" target="_blank" rel="noopener noreferrer">Apache Repo: https://github.com/apache/pinot.git</a>. <br></p><ul><li>Example of building and tagging a snapshot on your own fork:</li></ul><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI bash"><pre tabindex="0" class="prism-code language-bash codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">./docker-build.sh pinot_fork:snapshot-5.2 snapshot-5.2 https://github.com/your_own_fork/pinot.git</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><ul><li>Example of building a release version:</li></ul><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI bash"><pre tabindex="0" class="prism-code language-bash codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">./docker-build.sh pinot:release-0.1.0 release-0.1.0 https://github.com/apache/pinot.git</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><ul><li>Example of building current master branch as a snapshot:</li></ul><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI bash"><pre tabindex="0" class="prism-code language-bash codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">./docker-build.sh apachepinot/pinot:0.3.0-SNAPSHOT master</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="how-to-publish-a-docker-image"></a>How to publish a docker image<a class="hash-link" href="#how-to-publish-a-docker-image" title="Direct link to heading">#</a></h2><p>Script <code>docker-push.sh</code> publishes a given docker image to your docker registry.
In order to push to your own repo, the image needs to be explicitly tagged with the repo name.</p><ul><li>Example of publishing an image to <code>[apachepinot/pinot](https://hub.docker.com/u/apachepinot/repository/docker/apachepinot/pinot)</code> dockerHub repo.</li></ul><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI bash"><pre tabindex="0" class="prism-code language-bash codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">./docker-push.sh apachepinot/pinot:latest</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><ul><li>You can also tag a built image, then push it.</li></ul><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI bash"><pre tabindex="0" class="prism-code language-bash codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">docker</span><span class="token plain"> tag pinot:release-0.1.0 apachepinot/pinot:release-0.1.0</span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token function" style="color:rgb(80, 250, 123)">docker</span><span class="token plain"> push apachepinot/pinot:release-0.1.0</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><ul><li><p>Script docker-build-and-push.sh builds and publishes this docker image to your docker registry after build.</p></li><li><p>Example of building and publishing an image to <code>[apachepinot/pinot](https://hub.docker.com/u/apachepinot/repository/docker/apachepinot/pinot)</code> dockerHub repo.</p></li></ul><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI bash"><pre tabindex="0" class="prism-code language-bash codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">./docker-build-and-push.sh apachepinot/pinot:latest master https://github.com/apache/pinot.git</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="kubernetes-examples"></a>Kubernetes Examples<a class="hash-link" href="#kubernetes-examples" title="Direct link to heading">#</a></h2><p>Please refer to <a href="/docs/administration/installation/cloud/on-premise">Kubernetes Quickstart</a> for deployment examples.</p><p><a href="/docs/administration/installation/cloud/on-premise">Kubernetes Quickstart</a></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="pinot-presto"></a>Pinot Presto<a class="hash-link" href="#pinot-presto" title="Direct link to heading">#</a></h2><p>Docker image for Presto with Pinot integration.
This docker build project is specialized for Pinot.</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="how-to-build"></a>How to build<a class="hash-link" href="#how-to-build" title="Direct link to heading">#</a></h3><p>Usage:</p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI bash"><pre tabindex="0" class="prism-code language-bash codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token plain">./docker-build.sh </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain">Docker Tag</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain">Git Branch</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain">Presto Git URL</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p>This script will check out Pinot Repo <code>[Pinot Git URL]</code> on branch <code>[Git Branch]</code> and build the docker image for that. <br>
The docker image is tagged as <code>[Docker Tag]</code>. <br>
Docker Tag: Name and tag your docker image. Default is <code>pinot:latest</code>. <br>
Git Branch: The Pinot branch to build. Default is master. <br>
Pinot Git URL: The Pinot Git Repo to build, users can set it to their own fork. <br>
Please note that, the URL is <code>https://</code> based, not <code>git://</code>. <br>
Default is the <a href="https://github.com/apache/pinot.git" target="_blank" rel="noopener noreferrer">Apache Repo: https://github.com/apache/pinot.git</a>. <br></p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="how-to-push"></a>How to push<a class="hash-link" href="#how-to-push" title="Direct link to heading">#</a></h3><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI bash"><pre tabindex="0" class="prism-code language-bash codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">docker</span><span class="token plain"> push apachepinot/pinot-presto:latest</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="configuration"></a>Configuration<a class="hash-link" href="#configuration" title="Direct link to heading">#</a></h3><p>Follow the instructions provided by Presto for writing your own configuration files under etc directory.</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="volumes"></a>Volumes<a class="hash-link" href="#volumes" title="Direct link to heading">#</a></h3><p>The image defines two data volumes: one for mounting configuration into the container, and one for data.
The configuration volume is located alternatively at <code>/home/presto/etc</code>, which contains all the configuration and plugins.
The data volume is located at <code>/home/presto/data</code>.</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="kubernetes-examples-1"></a>Kubernetes Examples<a class="hash-link" href="#kubernetes-examples-1" title="Direct link to heading">#</a></h3><p>Please refer to presto-coordinator.yaml as k8s deployment example.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="pinot-superset"></a>Pinot Superset<a class="hash-link" href="#pinot-superset" title="Direct link to heading">#</a></h2><p>Docker image for Superset with Pinot integration.
This docker build project is based on Project docker-superset and specialized for Pinot.</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="how-to-build-1"></a>How to build<a class="hash-link" href="#how-to-build-1" title="Direct link to heading">#</a></h3><p>Please modify file <code>Makefile</code> to change image and <code>superset_version</code> accordingly.
Below command will build docker image and tag it as <code>superset_version</code> and <code>latest</code>.</p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI bash"><pre tabindex="0" class="prism-code language-bash codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">make</span><span class="token plain"> latest</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p>You can also build directly with <code>docker build</code> command by setting arguments:</p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI bash"><pre tabindex="0" class="prism-code language-bash codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">docker</span><span class="token plain"> build </span><span class="token punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token plain"></span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> --build-arg </span><span class="token assign-left variable" style="color:rgb(189, 147, 249);font-style:italic">NODE_VERSION</span><span class="token operator">=</span><span class="token plain">latest </span><span class="token punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token plain"></span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> --build-arg </span><span class="token assign-left variable" style="color:rgb(189, 147, 249);font-style:italic">PYTHON_VERSION</span><span class="token operator">=</span><span class="token number">3.6</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token plain"></span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> --build-arg </span><span class="token assign-left variable" style="color:rgb(189, 147, 249);font-style:italic">SUPERSET_VERSION</span><span class="token operator">=</span><span class="token number">0.34</span><span class="token plain">.1 </span><span class="token punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token plain"></span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> --tag apachepinot/pinot-superset:0.34.1 </span><span class="token punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token plain"></span></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> --target build </span><span class="token builtin class-name" style="color:rgb(189, 147, 249)">.</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><p>How to push</p><div class="codeBlockContainer_J+bg"><div class="codeBlockContent_csEI bash"><pre tabindex="0" class="prism-code language-bash codeBlock_rtdJ thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_1zSZ"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">make</span><span class="token plain"> push</span></span></code></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_M3SB clean-btn">Copy</button></div></div><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="configuration-1"></a>Configuration<a class="hash-link" href="#configuration-1" title="Direct link to heading">#</a></h3><p>Follow the <a href="https://superset.apache.org/installation.html#configuration" target="_blank" rel="noopener noreferrer">instructions</a> provided by Apache Superset for writing your own superset_config.py.</p><p>Place this file in a local directory and mount this directory to /etc/superset inside the container. This location
is included in the image&#x27;s <code>PYTHONPATH</code>. Mounting this file to a different location is possible, but it will need to be in the PYTHONPATH.</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="volumes-1"></a>Volumes<a class="hash-link" href="#volumes-1" title="Direct link to heading">#</a></h3><p>The image defines two data volumes: one for mounting configuration into the container, and one for data (logs, SQLite DBs, &amp;c).</p><p>The configuration volume is located alternatively at <code>/etc/superset</code> or <code>/home/superset</code>; either is acceptable. Both of these directories are included in the PYTHONPATH of the image. Mount any configuration (specifically the superset_config.py file) here to have it read by the app on startup.</p><p>The data volume is located at <code>/var/lib/superset</code> and it is where you would mount your SQLite file (if you are using that as your backend), or a volume to collect any logs that are routed there. This location is used as the value of the <code>SUPERSET_HOME</code> environmental variable.</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="kubernetes-examples-2"></a>Kubernetes Examples<a class="hash-link" href="#kubernetes-examples-2" title="Direct link to heading">#</a></h3><p>Please refer to superset.yaml as k8s deployment example.</p></div><footer class="row docusaurus-mt-lg"><div class="col"><a href="https://github.com/apache/pinot/edit/master/website/docs/misc/build-docker.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="20" width="20" viewBox="0 0 40 40" class="iconEdit_mS5F" aria-hidden="true"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>Edit this page</a></div><div class="col lastUpdated_wj+Z"></div></footer></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Docs pages navigation"><div class="pagination-nav__item"></div><div class="pagination-nav__item pagination-nav__item--next"></div></nav></div></div><div class="col col--3"><div class="tableOfContents_vrFS thin-scrollbar"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#pinot" class="table-of-contents__link">Pinot</a><ul><li><a href="#how-to-build-a-docker-image" class="table-of-contents__link">How to build a docker image</a></li></ul></li><li><a href="#how-to-publish-a-docker-image" class="table-of-contents__link">How to publish a docker image</a></li><li><a href="#kubernetes-examples" class="table-of-contents__link">Kubernetes Examples</a></li><li><a href="#pinot-presto" class="table-of-contents__link">Pinot Presto</a><ul><li><a href="#how-to-build" class="table-of-contents__link">How to build</a></li><li><a href="#how-to-push" class="table-of-contents__link">How to push</a></li><li><a href="#configuration" class="table-of-contents__link">Configuration</a></li><li><a href="#volumes" class="table-of-contents__link">Volumes</a></li><li><a href="#kubernetes-examples-1" class="table-of-contents__link">Kubernetes Examples</a></li></ul></li><li><a href="#pinot-superset" class="table-of-contents__link">Pinot Superset</a><ul><li><a href="#how-to-build-1" class="table-of-contents__link">How to build</a></li><li><a href="#configuration-1" class="table-of-contents__link">Configuration</a></li><li><a href="#volumes-1" class="table-of-contents__link">Volumes</a></li><li><a href="#kubernetes-examples-2" class="table-of-contents__link">Kubernetes Examples</a></li></ul></li></ul></div></div></div></div></main></div></div><footer class="footer"><div class="container"><div class="row footer__links"><div class="col footer__col"><h4 class="footer__title">About</h4><ul class="footer__items"><li class="footer__item"><a href="https://docs.pinot.apache.org/" target="_blank" rel="noopener noreferrer" class="footer__link-item">What is Apache Pinot?</a></li><li class="footer__item"><a class="footer__link-item" href="/who_uses">Who uses Apache Pinot?</a></li><li class="footer__item"><a href="https://docs.pinot.apache.org/pinot-components" target="_blank" rel="noopener noreferrer" class="footer__link-item">Components</a></li><li class="footer__item"><a href="https://docs.pinot.apache.org/basics/architecture" target="_blank" rel="noopener noreferrer" class="footer__link-item">Architecture</a></li><li class="footer__item"><a href="https://docs.pinot.apache.org/plugins/plugin-architecture" target="_blank" rel="noopener noreferrer" class="footer__link-item">Plugins Architecture</a></li></ul></div><div class="col footer__col"><h4 class="footer__title">Integrations</h4><ul class="footer__items"><li class="footer__item"><a href="https://docs.pinot.apache.org/integrations/trino" target="_blank" rel="noopener noreferrer" class="footer__link-item">Trino</a></li><li class="footer__item"><a href="https://docs.pinot.apache.org/integrations/presto" target="_blank" rel="noopener noreferrer" class="footer__link-item">Presto</a></li><li class="footer__item"><a href="https://docs.pinot.apache.org/integrations/superset" target="_blank" rel="noopener noreferrer" class="footer__link-item">Superset</a></li><li class="footer__item"><a href="https://docs.pinot.apache.org/integrations/thirdeye" target="_blank" rel="noopener noreferrer" class="footer__link-item">ThirdEye</a></li></ul></div><div class="col footer__col"><h4 class="footer__title">Docs</h4><ul class="footer__items"><li class="footer__item"><a href="https://docs.pinot.apache.org/getting-started" target="_blank" rel="noopener noreferrer" class="footer__link-item">Getting Started</a></li><li class="footer__item"><a href="https://docs.pinot.apache.org/pinot-components" target="_blank" rel="noopener noreferrer" class="footer__link-item">Pinot Components</a></li><li class="footer__item"><a href="https://docs.pinot.apache.org/users" target="_blank" rel="noopener noreferrer" class="footer__link-item">User Guide</a></li><li class="footer__item"><a href="https://docs.pinot.apache.org/operating-pinot" target="_blank" rel="noopener noreferrer" class="footer__link-item">Administration</a></li></ul></div><div class="col footer__col"><h4 class="footer__title">Community</h4><ul class="footer__items"><li class="footer__item"><a href="https://join.slack.com/t/apache-pinot/shared_invite/zt-5z7pav2f-yYtjZdVA~EDmrGkho87Vzw" target="_blank" rel="noopener noreferrer" class="footer__link-item">Slack</a></li><li class="footer__item"><a href="https://github.com/apache/pinot" target="_blank" rel="noopener noreferrer" class="footer__link-item">Github</a></li><li class="footer__item"><a href="https://twitter.com/ApachePinot" target="_blank" rel="noopener noreferrer" class="footer__link-item">Twitter</a></li><li class="footer__item"><a href="mailto:dev-subscribe@pinot.apache.org?Subject=SubscribeToPinot" target="_blank" rel="noopener noreferrer" class="footer__link-item">Mailing List</a></li></ul></div><div class="col footer__col"><h4 class="footer__title">Apache</h4><ul class="footer__items"><li class="footer__item"><a href="https://www.apache.org/events/current-event" target="_blank" rel="noopener noreferrer" class="footer__link-item">Events</a></li><li class="footer__item"><a href="https://www.apache.org/foundation/thanks.html" target="_blank" rel="noopener noreferrer" class="footer__link-item">Thanks</a></li><li class="footer__item"><a href="https://www.apache.org/licenses" target="_blank" rel="noopener noreferrer" class="footer__link-item">License</a></li><li class="footer__item"><a href="https://www.apache.org/security" target="_blank" rel="noopener noreferrer" class="footer__link-item">Security</a></li><li class="footer__item"><a href="https://www.apache.org/foundation/sponsorship.html" target="_blank" rel="noopener noreferrer" class="footer__link-item">Sponsorship</a></li><li class="footer__item"><a href="https://www.apache.org" target="_blank" rel="noopener noreferrer" class="footer__link-item">Foundation</a></li></ul></div></div><div class="footer__bottom text--center"><div class="margin-bottom--sm"><a href="https://pinot.apache.org/" target="_blank" rel="noopener noreferrer" class="footerLogoLink_94kH"><img src="/img/logo.svg" alt="Apache Pinot™" class="themedImage_TMUO themedImage--light_4Vu1 footer__logo"><img src="/img/logo.svg" alt="Apache Pinot™" class="themedImage_TMUO themedImage--dark_uzRr footer__logo"></a></div><div class="footerCopyright_-piB">Copyright © 2022 The Apache Software Foundation.<br>Apache Pinot, Pinot, Apache, the Apache feather logo, and the Apache Pinot project logo are registered trademarks of The Apache Software Foundation.<br><br>This page has references to third party software - Presto, PrestoDB, ThirdEye, Trino, TrinoDB, that are not part of the Apache Software Foundation and are not covered under the Apache License.</div></div></div></footer></div>
<script src="/assets/js/runtime~main.dfc58ce0.js"></script>
<script src="/assets/js/main.16915bd7.js"></script>
</body>
</html>