lcs-cloud-storage v0.0.5
lcs-cloud-storage server
Visit Documentation website ↗
Table of contents
About
LCS - is a local cloud storage server. The Local Cloud Storage Server project aims to develop a robust and secure local cloud storage solution. This system will provide users with the ability to store, retrieve, and manage their data locally while enjoying the benefits of cloud storage such as scalability, accessibility, and reliability.
The server will expose a RESTful API that allows users to interact with the storage. This API will support operations such as uploading files, downloading and all default filesystem operations.
In addition to the API, the system will provide a Command Line Interface (CLI). This will enable users to use server feature or to configure it.
Getting started
Prerequisites
- yarn
npm i -g yarn
orcorepack enable
!IMPORTANT Node.js 18.x+ version must be installed in your OS.
Installation
- Clone the repository
$ git clone https://github.com/stbestichhh/lcs-cloud-storage-server.git
- Install dependencies
$ yarn install
Or install as NPM package
$ npm i -g lcs-cloud-storage
Deployment
Start the server to production
From cli
See usage instructions to find out how to use cli
$ lcs [options] server|run [options]
From source code
$ yarn build $ yarn start:prod
Without installing
Run default configuration
$ docker build -t lcs-cloud-storage:0.0.5 . $ docker run -p <port>:9110 lcs-cloud-storage:0.0.5
Override configuration
$ docker build -t lcs-cloud-storage:0.0.5 . $ docker run -e PORT=<port> -e HOST=<host> -e SECRET_KEY=<jwtkey> -e DB_NAME=<dbname> -p <port>:<port> lcs-cloud-storage:0.0.5 node dist/index.js [options] [command]
Overriding every enviroment variable is not necessary. Options and command see in usage section.
Start server locally
$ yarn start:dev
Usage
See the usage instruction in the lcs-cloud-storage Wiki's
Running tests
Unit tests
$ yarn test
watch mode
$ yarn test:watch
End to end tests
This e2e tests are testing server api
$ yarn test:e2e
watch mode
$ yarn test:e2e:watch
Contributing
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
Changelog
Project changes are writen in changelog, see the CHANGELOG.md.
We use SemVer for versioning. For the versions available, see the tags on this repository.
Authors
License
This project is licensed under the MIT License - see the LICENSE.md
7 days ago
12 days ago
13 days ago
11 days ago
16 days ago
16 days ago
18 days ago
21 days ago