predictionio-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject [predictionio] branch livedoc updated: [PIO-187] Livedoc with Docker Installation Update (#486)
Date Sat, 03 Nov 2018 20:45:17 GMT
This is an automated email from the ASF dual-hosted git repository.

donald pushed a commit to branch livedoc
in repository

The following commit(s) were added to refs/heads/livedoc by this push:
     new a956efc  [PIO-187] Livedoc with Docker Installation Update (#486)
a956efc is described below

commit a956efc2a652ad0842cb14a14f9d76b164bd0dd6
Author: Wei Chen <>
AuthorDate: Sat Nov 3 15:45:12 2018 -0500

    [PIO-187] Livedoc with Docker Installation Update (#486)
    * docker-livedoc
    * Move Build Image and State ASF Release Policy
    also fix some typo here and there
---                                          |   3 +-
 .../{install => archived}/   |   0
 docs/manual/source/install/       |   6 +-
 .../source/install/      | 127 +++++++++++++++++++++
 4 files changed, 130 insertions(+), 6 deletions(-)

diff --git a/ b/
index 0b457d3..b8604ca 100644
--- a/
+++ b/
@@ -45,8 +45,7 @@ A few installation options available.
 *   [Installing Apache PredictionIO from
 *   [Installing Apache PredictionIO with
-    Docker](
-    (community contributed)
+    Docker](
 ## Quick Start
diff --git a/docs/manual/source/install/ b/docs/manual/source/archived/
similarity index 100%
rename from docs/manual/source/install/
rename to docs/manual/source/archived/
diff --git a/docs/manual/source/install/ b/docs/manual/source/install/
index 98f5a08..1f8da3b 100644
--- a/docs/manual/source/install/
+++ b/docs/manual/source/install/
@@ -55,11 +55,9 @@ mode](
 * [Installing Apache PredictionIO](install-sourcecode.html)
-You may also use one of the community-contributed packages to install
-Apache PredictionIO®:
+You may also use Docker to install Apache PredictionIO®
-* [Installing Apache PredictionIO with
-  Docker](/community/projects.html#docker-images)
+* [Installing Apache PredictionIO with Docker](install-docker.html)
 [//]: # (* *(coming soon)* Installing Apache PredictionIO with Homebrew)
diff --git a/docs/manual/source/install/ b/docs/manual/source/install/
new file mode 100644
index 0000000..44435af
--- /dev/null
+++ b/docs/manual/source/install/
@@ -0,0 +1,127 @@
+title: Installing Apache PredictionIO® with Docker
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+See the License for the specific language governing permissions and
+limitations under the License.
+## Download and Start Docker
+Docker is a widely used container solution. Please download and start Docker by following
their [guide](
+## Get PredictionIO and Dependencies Configuration
+Starting from v0.13.0, Apache PredictionIO® starts to provide docker support for the production
environment. `Dockerfile` and dependencies configuration can be found in the `docker` folder
in the [git repository](
+git clone
+cd predictionio/docker
+INFO: In this installation, we only need the `docker` sub-directory in the repository. One
can use other tools to get the folder without cloning the whole project.
+## Build Docker Image
+To build PredictionIO docker image, `Dockerfile` is provided in sub-directory `pio`.
+docker build -t predictionio/pio pio
+One will be able to build an image with tag `prediction/pio:latest` using the above command.
+WARNING: People can get PredictionIO image from Dockerhub through `docker pull predictionio/pio`.
However, since the image cannot run without a properly configured storage, please follow the
following steps to complete the installation.
+WARNING: Image `prediction/pio` hosted on Dockerhub is **NOT** regarded as an official ASF
release and might provide a different PredictionIO version from your desired PredictionIO
version. It is recommended to build the image locally other than pulling directly from Dockerhub.
+## Pull Images and Start
+In this repository, PostgreSQL, MySQL, ElasticSearch, and local file system are supported
with their corresponding configuration.
+### Supported storages are as below:
+Event Storage
+ - PostgreSQL, MySQL, Elasticsearch
+Metadata Storage
+ - PostgreSQL, MySQL, Elasticsearch
+Model Storage
+ - PostgreSQL, MySQL, LocalFS
+One can use `docker-compose -f` to pull and start the corresponding services. More details
are provided in [this document](
+### Service Starting Sample
+docker-compose -f docker-compose.yml \
+    -f pgsql/docker-compose.base.yml \
+    -f pgsql/docker-compose.meta.yml \
+    -f pgsql/docker-compose.event.yml \
+    -f pgsql/docker-compose.model.yml \
+    up
+In this examples, we pull and start `predictionio/pio` image with `docker-compose.yml`.
+And pull `postgres:9` image with `pgsql/docker-compose.base.yml`.
+And config PostgreSQL to store our metadata, event, and model with `pgsql/docker-compose.meta.yml`,
`pgsql/docker-compose.event.yml`, and `pgsql/docker-compose.model.yml`.
+After pulling the images, the script will start PostgreSQL, Apache PredictionIO, and Apache
Spark. The event server should be ready at port `7070`, and one should see these logs in the
command line interface.
+pio_1       | [INFO] [Management$] Your system is all ready to go.
+pio_1       | [INFO] [Management$] Creating Event Server at
+pio_1       | [INFO] [HttpListener] Bound to /
+pio_1       | [INFO] [EventServerActor] Bound received. EventServer is ready.
+## Verifying Service
+A command tool `pio-docker` is provided to invoke `pio` command in the PredictionIO container.
Set `pio-docker` to default execution path and use `status` to check the current PredictionIO
service with the following script.
+$ export PATH=`pwd`/bin:$PATH
+$ pio-docker status
+One should be able to see the corresponding log in the following structure, and your system
is ready to go!
+[INFO] [Management$] Inspecting PredictionIO...
+[INFO] [Management$] PredictionIO 0.13.0 is installed at /usr/share/predictionio
+[INFO] [Management$] Inspecting Apache Spark...
+[INFO] [Management$] Apache Spark is installed at /usr/share/spark-2.2.2-bin-hadoop2.7
+[INFO] [Management$] Apache Spark 2.2.2 detected (meets minimum requirement of 1.3.0)
+[INFO] [Management$] Inspecting storage backend connections...
+[INFO] [Storage$] Verifying Meta Data Backend (Source: PGSQL)...
+[INFO] [Storage$] Verifying Model Data Backend (Source: PGSQL)...
+[INFO] [Storage$] Verifying Event Data Backend (Source: PGSQL)...
+[INFO] [Storage$] Test writing to Event Store (App Id 0)...
+[INFO] [Management$] Your system is all ready to go.
+INFO: After the service is up, one can continue by changing `pio` to `pio-docker` for further
deployment. More details are provided in [this document](
+## Community Docker Support
+[More PredictionIO Docker packages supported by our great community](/community/projects.html#docker-images).

View raw message