github.com/keithballdotnet/deis@v1.0.1-0.20141111034523-a4511c46a6ce/client/README.rst (about)

     1  Deis Client
     2  ===========
     3  The Deis client is a Python CLI that issues API calls to a private
     4  Deis controller, providing a Heroku-inspired PaaS workflow.
     5  
     6  .. image:: https://badge.fury.io/py/deis.png
     7      :target: http://badge.fury.io/py/deis
     8  
     9  .. image:: https://pypip.in/d/deis/badge.png
    10      :target: https://pypi.python.org/pypi/deis/
    11      :alt: Downloads
    12  
    13  .. image:: https://pypip.in/license/deis/badge.png
    14      :target: https://pypi.python.org/pypi/deis/
    15      :alt: License
    16  
    17  What is Deis?
    18  -------------
    19  
    20  Deis is an open source PaaS that makes it easy to deploy and scale containers
    21  to host applications, databases, middleware and other services. Deis leverages
    22  Docker, CoreOS and Heroku Buildpacks to provide a private PaaS that is
    23  lightweight and flexible.
    24  
    25  Deis comes with out-of-the-box support for Ruby, Python, Node.js, Java,
    26  Clojure, Scala, Play, PHP, Perl, Dart and Go. However, Deis can deploy
    27  anything using Docker images or Heroku Buildpacks. Deis is designed to work
    28  with any cloud provider. Currently Amazon EC2, Rackspace, DigitalOcean, and
    29  Google Compute Engine are supported.
    30  
    31  
    32  Why Deis?
    33  =========
    34  
    35  Deploy anything
    36  ---------------
    37  
    38  Deploy a wide range of languages and frameworks with a simple git push
    39  using Heroku Buildpacks or Dockerfiles.
    40  
    41  
    42  Control everything
    43  ------------------
    44  
    45  Choose your hosting provider configuration. Define a cluster to meet your own
    46  needs. Retain full root access to every node. Manage your platform with a
    47  private Deis controller.
    48  
    49  
    50  Scale effortlessly
    51  ------------------
    52  
    53  Add nodes automatically and scale containers with a single command. Smart
    54  scheduling, container balancing and proxy reconfiguration are completely
    55  automated.
    56  
    57  
    58  100% Open Source
    59  ----------------
    60  
    61  Free, transparent and easily customized. Join the open-source PaaS
    62  and DevOps community by using Deis and complimentary projects like
    63  Docker, CoreOS and Heroku Buildpacks.
    64  
    65  
    66  Get Started
    67  ===========
    68  
    69  1. `Install the Client`_:
    70  
    71  Your Deis client should match your server's version. For development, an
    72  easy way to ensure this is to run `client/deis.py` in the code repository
    73  you used to provision the server. You can make a symlink or shell alias for
    74  `deis` to that file:
    75  
    76  .. code-block:: console
    77  
    78      $ pip install docopt==0.6.2 python-dateutil==2.2 requests==2.4.3 termcolor==1.1.0
    79      $ sudo ln -fs $(pwd)/client/deis.py /usr/local/bin/deis
    80      $ deis
    81      Usage: deis <command> [<args>...]
    82  
    83  If you don't have Python_, install the latest `deis` binary executable for
    84  Linux or Mac OS X with this command:
    85  
    86  .. code-block:: console
    87  
    88      $ curl -sSL http://deis.io/deis-cli/install.sh | sh
    89  
    90  The installer puts `deis` in your current directory, but you should move it
    91  somewhere in your $PATH.
    92  
    93  
    94  2. `Register a User`_:
    95  
    96  .. code-block:: console
    97  
    98      $ deis register http://deis.local.deisapp.com
    99      $ deis keys:add
   100  
   101  
   102  3. `Deploy an Application`_:
   103  
   104  .. code-block:: console
   105  
   106      $ deis create
   107      Creating application... done, created peachy-waxworks
   108      Git remote deis added
   109      $ git push deis master
   110             Java app detected
   111      -----> Installing OpenJDK 1.6... done
   112      ...
   113      -----> Compiled slug size: 63.5 MB
   114             Launching... done, v2
   115  
   116      -----> peachy-waxworks deployed to Deis
   117             http://peachy-waxworks.example.com ...
   118  
   119      $ curl -s http://peachy-waxworks.example.com
   120      Powered by Deis!
   121  
   122  
   123  4. `Manage an Application`_:
   124  
   125  .. code-block:: console
   126  
   127      $ deis config:set DATABASE_URL=postgres://user:pass@example.com:5432/db
   128      $ deis scale web=8
   129      $ deis run ls -l  # the view from inside a container
   130      total 28
   131      -rw-r--r-- 1 root root  553 Dec  2 23:59 LICENSE
   132      -rw-r--r-- 1 root root   60 Dec  2 23:59 Procfile
   133      -rw-r--r-- 1 root root   33 Dec  2 23:59 README.md
   134      -rw-r--r-- 1 root root 1622 Dec  2 23:59 pom.xml
   135      drwxr-xr-x 3 root root 4096 Dec  2 23:59 src
   136      -rw-r--r-- 1 root root   25 Dec  2 23:59 system.properties
   137      drwxr-xr-x 6 root root 4096 Dec  3 00:00 target
   138  
   139  
   140  To learn more, use ``deis help`` or browse `the documentation`_.
   141  
   142  .. _`Install the Client`: http://docs.deis.io/en/latest/using_deis/install-client/
   143  .. _`Python`: http://www.python.org/
   144  .. _`Register a User`: http://docs.deis.io/en/latest/using_deis/register-user/
   145  .. _`Deploy an Application`: http://docs.deis.io/en/latest/using_deis/deploy-application/
   146  .. _`Manage an Application`: http://docs.deis.io/en/latest/using_deis/manage-application/
   147  .. _`the documentation`: http://docs.deis.io/
   148  
   149  
   150  License
   151  -------
   152  
   153  Copyright 2013, OpDemand LLC
   154  
   155  Licensed under the Apache License, Version 2.0 (the "License"); you may not
   156  use this file except in compliance with the License. You may obtain a copy of
   157  the License at `<http://www.apache.org/licenses/LICENSE-2.0>`__.
   158  
   159  Unless required by applicable law or agreed to in writing, software
   160  distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
   161  WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
   162  License for the specific language governing permissions and limitations under
   163  the License.