16080: Writeup of CONTRIBUTING.md
[arvados.git] / README.md
index b4a9c258097a079193b293260c2885cca417f1c1..d95d7dab3995df82cb7340afdd96c4b1803ad180 100644 (file)
--- a/README.md
+++ b/README.md
-# Arvados-in-a-box
+[comment]: # (Copyright © The Arvados Authors. All rights reserved.)
+[comment]: # ()
+[comment]: # (SPDX-License-Identifier: CC-BY-SA-3.0)
 
-Self-contained development, demonstration and testing environment for Arvados.
+[![Join the chat at https://gitter.im/arvados/community](https://badges.gitter.im/arvados/community.svg)](https://gitter.im/arvados/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) | [Installing Arvados](https://doc.arvados.org/install/index.html) | [Installing Client SDKs](https://doc.arvados.org/sdk/index.html) | [Report a bug](https://dev.arvados.org/projects/arvados/issues/new) | [Development and Contributing](CONTRIBUTING.md)
+
+[Arvados](https://arvados.org) is a free software distributed computing platform
+for bioinformatics, data science, and high throughput analysis of massive data
+sets.  Arvados supports a variety of cloud, cluster and HPC environments.
+
+Arvados consists of:
+
+* *Keep*: a petabyte-scale content-addressed distributed storage system for managing and
+  storing collections of files, accessible via a variety of methods including
+  Arvados APIs, WebDAV, and FUSE file system mount.
+
+* *Crunch*: a Docker-based cloud and HPC workflow engine designed providing
+  strong versioning, reproducibilty, and provenance of large-scale computations.
+
+* Related services and components including a web workbench for managing files
+  and compute jobs, REST APIs, SDKs, and other tools.
 
 ## Quick start
 
-$ bin/arvbox reboot localdemo
-
-## Usage
-
-Arvados-in-a-box
-
-arvbox (build|start|run|open|shell|ip|stop|reboot|reset|destroy|log|svrestart)
-
-build <config>      build arvbox Docker image
-start|run <config>  start arvbox container
-open       open arvbox workbench in a web browser
-shell      enter arvbox shell
-ip         print arvbox ip address
-stop       stop arvbox container
-restart <config>  stop, then run again
-reboot  <config>  stop, build arvbox Docker image, run
-reset      delete arvbox arvados data (be careful!)
-destroy    delete all arvbox code and data (be careful!)
-log       <service> tail log of specified service
-svrestart <service> restart specified service inside arvbox
-clone <from> <to>   clone an arvbox
-
-
-## Configs
-
-### dev
-Development configuration.  Boots a complete Arvados environment inside the
-container.  The "arvados", "arvado-dev" and "sso-devise-omniauth-provider" code
-directories along data directories "postgres", "var", "passenger" and "gems"
-are bind mounted from the host file system for easy access and persistence
-across container rebuilds.  Services are bound to the Docker container's
-network IP address and can only be accessed on the local host.
-
-### localdemo
-Demo configuration.  Boots a complete Arvados environment inside the container.
-Unlike the development configuration, code directories are included in the demo
-image, and data directories are stored in a separate data volume container.
-Services are bound to the Docker container's network IP address and can only be
-accessed on the local host.
-
-### test
-Run the test suite.
-
-### publicdev
-Publicly accessible development configuration.  Similar to 'dev' except that
-service ports are published to the host's IP address and can accessed by anyone
-who can connect to the host system.  WARNING! The public arvbox configuration
-is NOT SECURE and must not be placed on a public IP address or used for
-production work.
-
-### publicdemo
-Publicly accessible development configuration.  Similar to 'localdemo' except
-that service ports are published to the host's IP address and can accessed by
-anyone who can connect to the host system.  WARNING! The public arvbox configuration
-is NOT SECURE and must not be placed on a public IP address or used for
-production work.
-
-## Environment variables
-
-### ARVBOX_DOCKER
-The location of Dockerfile.base and associated files used by "arvbox build".
-default: result of $(readlink -f $(dirname $0)/../lib/arvbox/docker)
-
-### ARVBOX_CONTAINER
-The name of the Docker container to manipulate.
-default: arvbox
-
-### ARVBOX_BASE
-The base directory to store persistent data for arvbox containers.
-default: $HOME/.arvbox
-
-### ARVBOX_DATA
-The base directory to store persistent data for the current container.
-default: $ARVBOX_BASE/$ARVBOX_CONTAINER
-
-### ARVADOS_ROOT
-The root directory of the Arvados source tree
-default: $ARVBOX_DATA/arvados
-
-### ARVADOS_DEV_ROOT
-The root directory of the Arvados-dev source tree
-default: $ARVBOX_DATA/arvados-dev
-
-### SSO_ROOT
-The root directory of the SSO source tree
-default: $ARVBOX_DATA/sso-devise-omniauth-provider
-
-### ARVBOX_PUBLISH_IP
-The IP address on which to publish services when running in public
-configuration.  Overrides default detection of the host's IP address.
-
-## Notes
-
-Services are designed to install and auto-configure on start or restart.  For
-example, the service script for keepstore always compiles keepstore from source
-and registers the daemon with the API server.
-
-Services are run with process supervision, so a service which exits will be
-restarted.  Dependencies between services are handled by repeatedly trying and
-failing the service script until dependencies are fulfilled (by other service
-scripts) enabling the service script to complete.
+To try out Arvados on your local workstation, you can use Arvbox, which
+provides Arvados components pre-installed in a Docker container (requires
+Docker 1.9+).  After cloning the Arvados git repository:
+
+```
+$ cd arvados/tools/arvbox/bin
+$ ./arvbox start localdemo
+```
+
+In this mode you will only be able to connect to Arvbox from the same host.  To
+configure Arvbox to be accessible over a network and for other options see
+http://doc.arvados.org/install/arvbox.html for details.
+
+## Documentation
+
+Complete documentation, including the [User Guide](https://doc.arvados.org/user/index.html), [Installation documentation](https://doc.arvados.org/install/index.html) and
+[API documentation](https://doc.arvados.org/api/index.html) is available at http://doc.arvados.org/
+
+If you wish to build the Arvados documentation from a local git clone, see
+doc/README.textile for instructions.
+
+## Community
+
+[![Join the chat at https://gitter.im/arvados/community](https://badges.gitter.im/arvados/community.svg)](https://gitter.im/arvados/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
+
+The [Arvados community channel](https://gitter.im/arvados/community)
+channel at [gitter.im](https://gitter.im) is available for live
+discussion and support.
+
+The [Arvados developement channel](https://gitter.im/arvados/development)
+channel at [gitter.im](https://gitter.im) is used to coordinate development.
+
+The [Arvados user mailing list](http://lists.arvados.org/mailman/listinfo/arvados)
+is used to announce new versions and other news.
+
+## Reporting bugs
+
+[Report a bug](https://dev.arvados.org/projects/arvados/issues/new) on the [dev.arvados.org Redmine site](https://dev.arvados.org).
+
+## Development and Contributing
+
+See [CONTRIBUTING.md](CONTRIBUTING.md) for information about Arvados development and how to contribute to the Arvados project.
+
+## Licensing
+
+Arvados is Free Software.  See COPYING for information about Arvados Free
+Software licenses.