https://github.com/lileio/cloud_storage_service
gRPC service for storing objects in the cloud. (Google Storage, AWS S3 etc)
https://github.com/lileio/cloud_storage_service
cloud-service docker go grpc lile service
Last synced: 5 months ago
JSON representation
gRPC service for storing objects in the cloud. (Google Storage, AWS S3 etc)
- Host: GitHub
- URL: https://github.com/lileio/cloud_storage_service
- Owner: lileio
- License: mit
- Created: 2017-02-13T18:01:53.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-04-20T18:35:29.000Z (over 8 years ago)
- Last Synced: 2025-05-10T23:01:45.806Z (5 months ago)
- Topics: cloud-service, docker, go, grpc, lile, service
- Language: Go
- Homepage:
- Size: 16.6 KB
- Stars: 16
- Watchers: 1
- Forks: 5
- Open Issues: 4
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# Cloud Storage Service
[](https://travis-ci.org/lileio/cloud_storage_service)A gRPC service made with the [Lile generator](https://github.com/lileio/lile) for storing object, files etc in cloud storage like Google Cloud Storage, AWS S3 or similar (PR's welcome!)
``` protobuf
service CloudStorageService {
rpc Store(StoreRequest) returns (StorageObject) {}
rpc Delete(DeleteRequest) returns (DeleteResponse) {}
}
```## Details
The cloud storage service is for storing objects that other services may require or be used later by clients. An example would be uploading a photo along with a user account. In this scenario you would use the `Store` method to store the object in cloud storage, which will return you a filename and url. You can then store this for later use by a browser or similar.
Be aware that for this url to work the bucket in question must be public.
Specific object ACL's and URL generation are coming soon.
## Docker
Builds (based on Alpine) of master (after test runs) are available at
```
docker pull lileio/cloud_storage_service
```## Setup
### Google Cloud Storage
The service will create the cloud storage bucket on first run if it doesn't exist
```
GOOGLE_STORAGE_BUCKET=some-bucket
GOOGLE_STORAGE_PROJECT_ID=googleprojectid-20142
GOOGLE_STORAGE_LOCATION=eu
GOOGLE_APPLICATION_CREDENTIALS=/creds/google.json
```## Development
PR's are welcome. Testing currently is done end to end with communication with the services in question.