Update README.md

This commit is contained in:
JT Olio 2018-10-29 19:50:38 -06:00
parent 01a98a58b1
commit 08ec36dae7

View File

@ -6,12 +6,11 @@
<img src="https://github.com/storj/storj/raw/master/resources/logo.png" width="100"> <img src="https://github.com/storj/storj/raw/master/resources/logo.png" width="100">
Storj is building a decentralized cloud storage network and is launching in Storj is building a decentralized cloud storage network.
early 2019.
---- ----
Storj is an S3 compatible platform and suite of decentralized applications that Storj is an S3-compatible platform and suite of decentralized applications that
allows you to store data in a secure and decentralized manner. Your files are allows you to store data in a secure and decentralized manner. Your files are
encrypted, broken into little pieces and stored in a global decentralized encrypted, broken into little pieces and stored in a global decentralized
network of computers. Luckily, we also support allowing you (and only you) to network of computers. Luckily, we also support allowing you (and only you) to
@ -20,19 +19,15 @@ retrieve those files!
## Table of Contents ## Table of Contents
- [Contributing](#contributing-to-storj) - [Contributing](#contributing-to-storj)
- [Installation](#installation) - [Start using Storj](#start-using-storj)
- [Using via Storj CLI](#start-using-storj-via-the-uplink-cli)
- [Using via AWS S3 CLI](#start-using-storj-via-the-aws-s3-cli)
- [License](#license) - [License](#license)
- [Support](#support) - [Support](#support)
# Contributing to Storj # Contributing to Storj
All of our code for Storj v3 is open source. Have a code change you think would make Storj better? Please send a pull request along! All of our code for Storj v3 is open source. Have a code change you think would make Storj better? Please send a pull request along! Make sure to sign our [Contributor License Agreement (CLA)](https://docs.google.com/forms/d/e/1FAIpQLSdVzD5W8rx-J_jLaPuG31nbOzS8yhNIIu4yHvzonji6NeZ4ig/viewform) first. See our [license section](#license) for more details.
Have comments, bug reports, or suggestions? Want to propose a PR before hand-crafting it? Jump on to [our Rocketchat](https://community.storj.io) and join the #dev channel to join the developer community and to talk to the Storj core team. Have comments, bug reports, or suggestions? Want to propose a PR before hand-crafting it? Jump on to our [Rocketchat](https://community.storj.io) and join the [#dev channel](https://community.storj.io/channel/dev) to say hi to the developer community and to talk to the Storj core team.
# Installation
### Install required packages ### Install required packages
@ -45,7 +40,8 @@ We support Linux, Mac, and Windows operating systems. Other operating systems su
### Download and compile Storj ### Download and compile Storj
> **Aside about GOPATH**: If you don't have a GOPATH set, you can ignore this > aside. Go 1.11 supports a new feature called Go modules, > **Aside about GOPATH**: If you don't have a GOPATH set, you can ignore this
> aside. Go 1.11 supports a new feature called Go modules,
> and Storj has adopted Go module support. If you've used previous Go versions, > and Storj has adopted Go module support. If you've used previous Go versions,
> Go modules no longer require a GOPATH environment variable. Go by default > Go modules no longer require a GOPATH environment variable. Go by default
> falls back to the old behavior if you check out code inside of the directory > falls back to the old behavior if you check out code inside of the directory
@ -53,10 +49,10 @@ We support Linux, Mac, and Windows operating systems. Other operating systems su
> `unset GOPATH` entirely, or set `GO111MODULE=on` before continuing with these > `unset GOPATH` entirely, or set `GO111MODULE=on` before continuing with these
> instructions. > instructions.
First, clone this repository. First, fork our repo and clone your copy of our repository.
```bash ```bash
git clone git@github.com:storj/storj storj git clone git@github.com:<your-username>/storj storj
cd storj cd storj
``` ```
@ -66,18 +62,9 @@ Then, let's install Storj.
go install -v ./cmd/... go install -v ./cmd/...
``` ```
Done! ### Make changes and test
### Working with the test network Make the changes you want to see! Once you're done, you can run all of the unit tests:
Our test network daemon is called CaptPlanet. First, configure and run it:
```bash
~/go/bin/captplanet setup
~/go/bin/captplanet run
```
Then, you can run all of the unit tests:
```bash ```bash
go test -v ./... go test -v ./...
@ -87,50 +74,25 @@ You can also execute only a single test package if you like. For example:
`go test ./pkg/kademlia`. Add `-v` for more informations about the executed unit `go test ./pkg/kademlia`. Add `-v` for more informations about the executed unit
tests. tests.
More options can be shown by running `~/go/bin/captplanet --help`. ### Push up a pull request
# Start Using Storj via the Uplink CLI Use Git to push your changes to your fork:
### Configure the Uplink CLI
1) In a new terminal window, setup the uplink CLI: ```$ uplink setup```. Keep `captplanet` running, as it ensures you have a test network to bounce data off of.
2) Edit the API Key, overlay address, and pointer db address fields in the Storj
CLI config file located at ```~/.uplink/cli/config.yaml``` with values from the
`captplanet` config file located at ```~/.uplink/capt/config.yaml```
### Test out some Uplink CLI commands!
1) Create a bucket: ```$ uplink mb s3://bucket-name```
2) Upload an object: ```$ uplink cp ~/Desktop/your-large-file.mp4 s3://bucket-name```
3) List objects in a bucket: ```$ uplink ls s3://bucket-name/ ```
4) Download an object: ```$ uplink cp s3://bucket-name/your-large-file.mp4 ~/Desktop/your-large-file.mp4```
6) Delete an object: ```$ uplink rm s3://bucket-name/your-large-file.mp4```
# Start Using Storj via the AWS S3 CLI
### Configure AWS CLI
Download and install the AWS S3 CLI: https://docs.aws.amazon.com/cli/latest/userguide/installing.html
In a new terminal session configure the AWS S3 CLI:
```bash ```bash
$ aws configure git commit -a -m 'my changes!'
AWS Access Key ID [None]: insecure-dev-access-key git push origin master
AWS Secret Access Key [None]: insecure-dev-secret-key
Default region name [None]: us-east-1
Default output format [None]:
``` ```
### Test out some AWS S3 CLI commands! Use Github to open a pull request!
1) Create a bucket: ```$ aws s3 --endpoint=http://localhost:7777/ mb s3://bucket-name``` # Start using Storj
2) Upload an object: ```$ aws s3 --endpoint=http://localhost:7777/ cp ~/Desktop/your-large-file.mp4 s3://bucket-name```
3) List objects in a bucket: ```$ aws s3 --endpoint=http://localhost:7777/ ls s3://bucket-name/ ```
4) Download an object: ```$ aws s3 --endpoint=http://localhost:7777/ cp s3://bucket-name/your-large-file.mp4 ~/Desktop/your-large-file.mp4```
5) Generate a URL for an object: ``` $ aws s3 --endpoint=http://localhost:7777/ presign s3://bucket-name/your-large-file.mp4```
6) Delete an object: ```$ aws s3 --endpoint=http://localhost:7777/ rm s3://bucket-name/your-large-file.mp4```
For more information about the AWS s3 CLI visit: https://docs.aws.amazon.com/cli/latest/reference/s3/index.html We have another repository dedicated to [documentation and tutorials](https://github.com/storj/docs).
Check out these three tutorials:
* [Using the Storj Test Network](https://github.com/storj/docs/blob/master/test-network.md)
* [Using the Uplink CLI](https://github.com/storj/docs/blob/master/uplink-cli.md)
* [Using the S3 Gateway](https://github.com/storj/docs/blob/master/s3-gateway.md)
# License # License
@ -139,8 +101,8 @@ The network under construction (this repo) is currently licensed with the
reaches beta phase, we will be licensing all client-side code via the reaches beta phase, we will be licensing all client-side code via the
[Apache v2](https://www.apache.org/licenses/LICENSE-2.0) license. [Apache v2](https://www.apache.org/licenses/LICENSE-2.0) license.
For code released under the AGPLv3, we request that contributors sign For code released under the AGPLv3, we request that contributors sign our
[our Contributor License Agreement (CLA)](https://docs.google.com/forms/d/e/1FAIpQLSdVzD5W8rx-J_jLaPuG31nbOzS8yhNIIu4yHvzonji6NeZ4ig/viewform) so that we can relicense the [Contributor License Agreement (CLA)](https://docs.google.com/forms/d/e/1FAIpQLSdVzD5W8rx-J_jLaPuG31nbOzS8yhNIIu4yHvzonji6NeZ4ig/viewform) so that we can relicense the
code under Apache v2, or other licenses in the future. code under Apache v2, or other licenses in the future.
# Support # Support