deis-controller

module
v0.0.0-...-ec624ca Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 23, 2015 License: Apache-2.0

README

Deis Workflow v2

Build Status Go Report Card

Deis (pronounced DAY-iss) is an open source PaaS that makes it easy to deploy and manage applications on your own servers. Deis builds on Kubernetes to provide a lightweight, Heroku-inspired workflow.

Work in Progress

Deis Graphic

Deis Workflow v2 is changing quickly. Your feedback and participation are more than welcome, but be aware that this project is considered a work in progress.

Hacking Workflow

First, install deis/etcd as described in its documentation. Ensure that the deis-etcd-service is running and healthy by accessing its port 4001 and seeing that the environment variable DEIS_ETCD_1_SERVICE_HOST is set.

One way to test this by running commands from another pod in the same namespace:

$ kubectl exec alpine -- env | grep DEIS_ETCD_1_SERVICE | sort
DEIS_ETCD_1_SERVICE_HOST=10.247.187.217
DEIS_ETCD_1_SERVICE_PORT=2380
DEIS_ETCD_1_SERVICE_PORT_CLIENT=4100
DEIS_ETCD_1_SERVICE_PORT_PEER=2380
$ kubectl exec alpine -- curl -sS 10.247.187.217:4100/version
{"etcdserver":"2.2.1","etcdcluster":"2.2.0"}

Next build the deis/workflow image and push it to a Docker registry. The $DEV_REGISTRY environment variable must point to a registry accessible to your Kubernetes cluster. You may need to configure the Docker engines on your Kubernetes nodes to allow --insecure-registry 192.168.0.0/16 (or the appropriate address range).

$ make docker-build docker-push

Finally create a PostgreSQL database and the Deis workflow service:

$ make kube-create-all
kubectl create -f manifests/deis-database-rc.yml
replicationcontrollers/deis-database
kubectl create -f manifests/deis-database-service.yml
services/deis-database
kubectl create -f manifests/deis-workflow-rc.yml.tmp
replicationcontrollers/deis-workflow
kubectl create -f manifests/deis-workflow-service.yml
services/deis-workflow
$ kubectl get pod
NAME                        READY     STATUS    RESTARTS   AGE
deis-database-34ch4         1/1       Running   0          12m
deis-etcd-1-140w7           1/1       Running   2          1h
deis-etcd-1-3jib8           1/1       Running   2          1h
deis-etcd-1-qf9ab           1/1       Running   2          1h
deis-etcd-discovery-dp2kp   1/1       Running   0          1h
deis-workflow-e8qks         1/1       Running   0          12m
$ kubectl logs deis-workflow-e8qks
+ export ETCD_PORT=4100
+ ETCD_PORT=4100
+ export ETCD_HOST=10.247.187.217
+ ETCD_HOST=10.247.187.217
...

License

Copyright 2013, 2014, 2015 Engine Yard, Inc.

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL