CloudBoost — это полноценная облачная платформа для вашего приложения. Думайте о CloudBoost как о Parse + Firebase + Algolia + Iron.io, объединенных в одно :
CloudBoost также имеет управляемый сервис, поэтому вам не нужно ничего устанавливать или настраивать. Вы можете подписаться на управляемую услугу здесь.
Вы можете установить CloudBoost где угодно. У нас есть файл Docker Compose, который поможет вам начать работу с CloudBoost за несколько минут и с помощью всего лишь одной команды. Вы можете использовать этот файл компоновки для установки службы локально на локальном компьютере разработчика или установить службу в Azure, AWS, DigitalOcean, Softlayer, Packet и т. д.
Посмотрите наш файл Docker Compose здесь.
Важно: прежде чем начать, вам необходимо установить MongoDB 3.4 и Redis 3.0 на свой компьютер, чтобы запустить этот проект.
git clone https://github.com/CloudBoost/cloudboost.git
cd cloudboost
npm install
Примечание. NPM требует, чтобы на вашем компьютере был установлен NodeJS. Если у вас нет NodeJS, вам необходимо установить его отсюда: https://nodejs.org/en/download/
Создайте папку config
в корне проекта, если она не существует. Вам необходимо создать новый файл cloudboost.json
в папке config
и сохранить этот файл с конфигурацией MongoDB и Redis. Вот пример файла:
{
"mongo" : [{
"host" : "localhost",
"port" : "27017"
}],
"redis" : [{
"host" : "127.0.0.1",
"port" : 6379
}]
}
В папке config
. Создайте новый файл с именем smtp.json
. Вам необходимо создать учетную запись в MailGun (https://www.mailgun.com/) и получить ключ API. Это поможет CloudBoost отправлять электронные письма от вашего имени. Вот краткий пример:
{
"provider" : "mailgun",
"apiKey" : "XXXXXXXXXXXXXXXXXXXXXXX",
"domain" : "cloudboost.io",
"fromEmail" : "[email protected]",
"fromName" : "CloudBoost.io"
}
Если вы хотите включить HTTPS, поместите файл сертификата cert.crt
и ключ key.key
в папку конфигурации.
Убедитесь, что Redis и MongoDB работают, а затем запустите сервер CloudBoost.
node server.js
Как только сервер заработает. Вы увидите ClusterKey и SecureKey на консоли, что означает, что вы успешно запустили CloudBoost. Если вы не видите ни одного из этих ключей, поднимите проблему на GitHub и сообщите нам об этом.
После запуска вы увидите ключ безопасности CloudBoost на консоли. Это важно. Пожалуйста, сохраните его для дальнейшего использования. Secure Key помогает создавать/удалять приложения.
Чтобы создать приложение, Вам необходимо:
REQUEST TYPE : POST
URL : <YOUR_SERVER_URL>/app/<APP ID>
REQUEST BODY :
{
secureKey : YOUR_SECURE_KEY
}
Например (в локоне):
curl -H "Content-Type: application/json" -X POST -d '{"secureKey":"xxxxxx-yyyy-xxxx-yyyyy-xxx"}' http://localhost:4730/app/app1
Таблица позволяет хранить любые структурированные данные в вашем приложении. Чтобы создать его, ознакомьтесь с этой документацией.
Чтобы удалить приложение, Вам необходимо:
REQUEST TYPE : DELETE
URL : <YOUR_SERVER_URL>/app/<APP ID>
REQUEST BODY :
{
secureKey : YOUR_SECURE_KEY
}
Например (в локоне):
curl -H "Content-Type: application/json" -X DELETE -d '{"secureKey":"xxxxxx-yyyy-xxxx-yyyyy-xxx"}' http://localhost:4730/app/app1
Как только ваше приложение будет готово, вы сможете получить последнюю версию SDK по адресу https://tutorials.cloudboost.io. Не забудьте сохранить SDK в своем проекте. и затем вы можете запустить свое приложение:
CB.CloudApp.init('Your Server URL', 'Your App ID', 'Your App Key');
Затем вы можете ознакомиться с остальной документацией на https://tutorials.cloudboost.io. Вы также можете ознакомиться со справкой по API на https://docs.cloudboost.io.
JavaScript SDK можно найти в папке sdk
этого репозитория.
npm install cloudboost
var CB = require ( 'cloudboost' ) ;
bower install cloudboost
< script src = "bower_components/cloudboost/dist/cloudboost.js" > < / script >
// For ES6/ES7 , TypeScript(typings included)
import * as CB from 'cloudboost' ;
//For ES5 (requireJs)
var CB = require ( 'cloudboost' ) ;
// AppID and AppKey are your App ID and key of the application created in CloudBoost Dashboard.
//Init your Application
CB . CloudApp . init ( 'YourAppId' , 'YourAppKey' ) ;
//Data Storage : Create a CloudObject of type 'Custom' (Note: You need to create a table 'Custom' on CloudBoost Dashboard)
var obj = new CB . CloudObject ( 'Custom' ) ;
//Set the property 'name' (Note: Create a column 'name' of type text on CloudBoost Dashboard)
obj . set ( 'name' , 'CloudBoost' ) ;
//Save the object
obj . save ( {
success : function ( res ) {
console . log ( "object saved successfully" ) ;
} ,
error : function ( err ) {
console . log ( "error while saving object" ) ;
}
} ) ;
CloudBoost работает на MongoDB и Redis. Вы несете ответственность за управление временем безотказной работы, репликацией, сегментированием и резервным копированием ваших данных в каждой из этих баз данных.
Вам также необходимо обновлять CloudBoost с каждой новой версией и настроить сервер для его автоматического масштабирования. Если вы используете Docker, образ выпускается с latest
тегом, и вам необходимо проверять наличие новых выпусков как минимум раз в месяц.
Использование нашего размещенного и управляемого сервиса поможет вам сэкономить время, затраты на разработку и исключить управление собственным кластером серверов, что в долгосрочной перспективе обходится дешевле. Мы рекомендуем использовать размещенную службу, если вы используете рабочие приложения.
Чтобы узнать больше о настройках приложения, установите флажок Нажмите здесь.
cloudboost
, чтобы мы были уведомлены.Запросы на вытягивание приветствуются!
Мы будем рады услышать ваши отзывы и предложения в системе отслеживания проблем.
Copyright 2020 HackerBay, Inc.
Лицензируется по лицензии Apache версии 2.0 («Лицензия»); вы не можете использовать этот файл, кроме как в соответствии с Лицензией. Вы можете получить копию Лицензии по адресу
http://www.apache.org/licenses/LICENSE-2.0
Если это не требуется действующим законодательством или не согласовано в письменной форме, программное обеспечение, распространяемое по Лицензии, распространяется на условиях «КАК ЕСТЬ», БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ ИЛИ УСЛОВИЙ, явных или подразумеваемых. См. Лицензию для определения конкретного языка, регулирующего разрешения и ограничения в рамках Лицензии.