Quickstart

We aim to make it as simple as possible for users to try out Syndesis. If you want to try out locally on your laptop, follow the Using Minishift instructions.


Using Minishift

Minishift is a tool that helps you run OpenShift locally by running a single-node OpenShift cluster inside a VM locally. With Minishift you can easily try out Syndesis without requiring a “real” cluster or servers, a laptop will suffice.

Prerequisites

Minishift itself

You’re going to need a working Minishift installation, which is really easy. If you haven’t got Minishift already installed, please follow the Minishift installation documentation.

Fire up Minishift if it’s not already running. You need to add some memory, 4192 or more is recommended, and allocate a couple of CPUs:

$ minishift start --memory 4192 --cpus 2

Tip: If you want to switch the OpenShift config permanently use:

$ minishift config set memory 8384
$ minishift config set cpus 2

Template selection

Deploying Syndesis is made easy thanks to OpenShift templates. The template to use in the installation instructions depend on your use case:

  • Developer : Use the template syndesis-dev-restricted which directly references Docker images without image streams. Then when before building you images e.g. with mvn fabric8:build set your DOCKER_HOST envvar to use the Minishift Docker daemon via eval $(minishift docker-env). After you have created a new image you simply only need to kill the appropriate pod so that the new pod spinning up will use the freshly created image.

  • Tester / User : In case you only want to have the latest version of Syndesis on your local Minishift installation, use the template syndesis-restricted which uses image stream referring to the published Docker Hub images. Minishift will update its images and trigger a redeployment when the images at Docker Hub changes. Therefore it checks every 15 minutes for a changed image. You do not have to do anything to get your application updated, except for waiting on Minishift to pick up new images.

Depending on your role please use the appropriate template in the instructions below.

Deployment instructions

Install the OpenShift template (syndesis-dev-restricted.yml or syndesis-restricted.yml as discussed above):

$ oc create -f https://raw.githubusercontent.com/syndesisio/syndesis-openshift-templates/master/syndesis-dev-restricted.yml

In order to make it easy to run Syndesis on a cluster without requiring admin rights, Syndesis takes advantage of OpenShift’s ability to use a Service Account as an OAuth client. Before we create the app, we’ll need to create this Service Account:

$ oc create -f https://raw.githubusercontent.com/syndesisio/syndesis-openshift-templates/master/support/serviceaccount-as-oauthclient-restricted.yml

Deploy syndesis using the following command, replacing “syndesis-dev-restricted” with “syndesis-restricted” depending on the template you have just installed:

$ oc new-app syndesis-dev-restricted \
    -p ROUTE_HOSTNAME=syndesis.$(minishift ip).nip.io \
    -p OPENSHIFT_MASTER=$(oc whoami --show-server) \
    -p OPENSHIFT_PROJECT=$(oc project -q) \
    -p OPENSHIFT_OAUTH_CLIENT_SECRET=$(oc sa get-token syndesis-oauth-client) \
    -p DEMO_DATA_ENABLED=true

Wait until all pods are running. You can either use OpenShift’s intrinsic watch feature for a line-by-line update

$ oc get pods -w

or use watch for a more curses like full screen user interface:

$ watch oc get pods

You should now be able to open https://syndesis.$(minishift ip).nip.io in your browser.