Руководства / Создано командой разработчиков Shardeum / 20.10.23
Что такое Spheron?
Spheron - это революционное решение для создания инфраструктуры децентрализованных приложений (dApp). Благодаря обширному набору инструментов и услуг, основанных на Web3 Infra, Spheron позволяет разработчикам соответствовать стремительно развивающимся требованиям цифровой среды. Выходя за рамки традиционных инфраструктур Web2, Spheron предлагает широкий спектр услуг, включая веб-хостинг, хранение данных и вычислительные возможности, и служит жизненно важным компонентом экосистемы Web3. Исключительная производительность Spheron не только конкурирует с аналогами Web2, но и демонстрирует потенциал технологии Web3 для следующего поколения приложений.
Узнайте больше о Spheron из их документации.
Как развернуть статические приложения на Spheron?
Развертывание статических приложений на Spheron - довольно простой и понятный процесс. Достаточно следовать следующим рекомендациям:
- Подключите Git-провайдера: Подключение Git-провайдера позволяет Spheron синхронизировать ваши репозитории и запускать развертывание при каждом новом обновлении. Spheron поддерживает следующие Git-провайдеры: Github, Gitlab и Bitbucket.
- Настройте проект: Создайте новый проект на Spheron и выберите нужный репозиторий приложений для развертывания.
- Выберите протокол развертывания: Выберите желаемый протокол для размещения статического приложения. Spheron поддерживает такие протоколы, как: Arweave, Filecoin и IPFS.
- Настройте параметры развертывания: Spheron автоматически определит и настроит большинство этих параметров за вас. Вам необходимо лишь добавить переменные среды в специальном разделе. При необходимости измените остальные параметры в соответствии с вашими требованиями. К ним относятся выбор фреймворка, ветки, корневого каталога, параметров сборки и вывода, а также движка ноды.
- Запустите развертывание: После настройки всех необходимых параметров запустите процесс развертывания. Spheron получит ваш код, соберет статические файлы и развернет их по указанному вами протоколу.
- Получите доступ к своему приложению: После завершения развертывания вы сможете получить доступ к своему приложению через домен, созданный Spheron. У вас также есть возможность настроить собственный домен для своего приложения.
Ознакомьтесь с нашим руководством по фреймворкам, чтобы получить дополнительную информацию.
Как развернуть динамические приложения/сервера на Spheron?
Развертывание вычислительных экземпляров на Spheron не требует особых усилий, независимо от того, используете ли вы образ Docker из Docker Hub или развертываете приложение в маркетплейсе. Для того чтобы развернуть свой вычислительный экземпляр на Spheron, выполните следующие действия:
- Настройте кластер: Создайте новый кластер на Spheron, выбрав опцию Import from Docker Hub или Start from Marketplace App.
- Для Docker Hub:
- Введите имя кластера и докер-образ.
- Затем добавьте тег и нажмите кнопку Next.
- Выберите подходящий план экземпляра, который соответствует вашим потребностям, и нажмите Select Plan.
- Создайте новый Port Mapping. Добавьте порт контейнера и выберите открытый порт, к которому вы хотите его привязать.
- Добавьте переменные окружения, если они есть. Используйте параметр Secret Key, если значение представляет собой секретный ключ. Если вы включите параметр "Secret Key", он не будет сохранен в базе данных.
- Выберите желаемый регион, если таковой имеется. Если вы не добавите регион, контейнер будет развернут в любом из регионов.
- При необходимости можно задать дополнительные настройки.
- Нажмите кнопку Deploy, чтобы начать развертывание.
3. Для Marketplace App:
- Выберите нужный шаблон из маркетплейса.
- Spheron автоматически выберет рекомендуемый тарифный план для конкретного шаблона.
- Если вы хотите изменить план, нажмите Change Plan.
- Выберите план экземпляра, который подходит для ваших целей, и нажмите Select Plan.
- Выберите желаемый регион, если таковой имеется. Если вы не добавите регион, контейнер будет развернут в любом из регионов.
- При необходимости можно задать дополнительную настройки.
- Нажмите кнопку Deploy, чтобы начать развертывание.
Ознакомьтесь с нашей документацией по вычислениям для получения дополнительной информации.
Как загрузить данные в IPFS с помощью Spheron SDK?
1. Spheron Storage SDK (для сред Nodejs)
Установка:
npm i @spheron/storage
Использование:
import { SpheronClient, ProtocolEnum } from "@spheron/storage";
const client = new SpheronClient({ token });
let currentlyUploaded = 0;
const { uploadId, bucketId, protocolLink, dynamicLinks } = await
client.upload(
filePath,
{
protocol: ProtocolEnum.IPFS,
name,
onUploadInitiated: (uploadId) => {
console.log(`Upload with id ${uploadId} started...`);
},
onChunkUploaded: (uploadedSize, totalSize) => {
currentlyUploaded += uploadedSize;
console.log(`Uploaded ${currentlyUploaded} of ${totalSize} Bytes.`);
},
}
);
Ознакомьтесь с нашей документацией Storage SDK для получения дополнительной информации.
2. Spheron Browser Upload SDK (для браузеров)
Установка:
npm i @spheron/browser-upload
Использование:
Сервер
Вам нужно настроить веб-сервер с конечной точкой (endpoint), которая будет использоваться фронтендом для получения токена для загрузки.
import { SpheronClient, ProtocolEnum } from "@spheron/storage";
...
app.get("/initiate-upload", async (req, res, next) => {
try {
const bucketName = "example-browser-upload"; // use your
//preferred name
const protocol = ProtocolEnum.IPFS; // use your preferred
//protocol
const token = process.env.SPHERON_TOKEN; // add your access token
//in .env or paste it here
const client = new SpheronClient({ token });
const { uploadToken } = await client.createSingleUploadToken({
name: bucketName,
protocol,
});
res.status(200).json({
uploadToken,
});
} catch (error) {
console.error(error);
next(error);
}
});
Клиент
Вы должны отправить запрос на ваш сервер для создания uploadToken, который будет использоваться для загрузки файлов из браузера.
import { upload } from "@spheron/browser-upload";
...
const response = await fetch(`<BACKEND_URL>/initiate-upload`); // get
//the temporary access token from server
const resJson = await response.json();
const token = resJson.uploadToken;
let currentlyUploaded = 0;
const { uploadId, bucketId, protocolLink, dynamicLinks } = await
upload(files, {
token,
onChunkUploaded: (uploadedSize, totalSize) => {
currentlyUploaded += uploadedSize;
console.log(`Uploaded ${currentlyUploaded} of ${totalSize} Bytes.`);
},
});
...
Ознакомьтесь с нашим Browser Upload SDK для получения дополнительной информации.
Как создавать и развертывать приложения с помощью Spheron CLI?
Установка:
Для Mac и Linux:
Чтобы установить Spheron CLI, выполните следующую команду в терминале:
sudo npm install -g @sharon
Для Windows:
Чтобы установить Spheron CLI, откройте терминал в режиме администратора и выполните следующую команду:
npm install -g @spheron/cli
Использование:
Spheron init
Команда spheron init позволяет инициализировать новый проект Spheron. В текущем пути создается файл spheron.json, описывающий ваш проект. Он будет использоваться командой spheron publish.
Использование
spheron init
После выполнения этой команды появится окно, в котором вы сможете выбрать протокол, добавить имя проекта, добавить путь и выбрать фреймворк. Вот как это будет выглядеть:
? Project name: (Code)
? Upload protocol: (Use arrow keys)
❯ Arweave
Filecoin
IPFS
Spheron publish
Команда spheron publish позволяет загрузить проект, используя конфигурацию, описанную в файле spheron.json вашего проекта.
Использование
spheron publish
Перед выполнением команды `spheron publish` убедитесь, что вы создали production build.
Вот пример того, как будет выглядеть результат:
Spheron CLI 1.0.7
Publishing your dapp to IPFS 🚀
Uploading directory build
Upload started, ID of deployment: 643fce207c3c7a0012df33a7
⠙ Uploading to IPFS
✓ Success! Upload finished !
Here are upload details:
Upload ID: 643fce207c3c7a0012df33a7
Bucket ID: 643fce207c3c7a0012df33a5
Protocol Link: https://bafybeicrjwhn6nifl7tcuhkcitquvpumj426qa7r7ppcya5skmqly5n2la.ipfs.sphn.link
Dynamic Links: https://testapp-edab50.spheron.app
Ознакомьтесь с нашей документацией по CLI для получения дополнительной информации.
Как просматривать и извлекать содержимое IPFS с помощью Spheron?
Выделенные шлюзы
Выделенные шлюзы (Dedicated Gateways) - это шлюзы IPFS, специально разработанные для улучшения доступа к размещенному содержимому по всей сети за счет более высокой скорости и увеличенного лимита по скорости.
Использование выделенных шлюзов дает несколько преимуществ:
- Повышенная скорость
- Увеличенный лимит по скорости
- Whitelabeling шлюз
- Передача содержимого с любого узла IPFS
Создание выделенного шлюза
Чтобы создать выделенный шлюз, выполните следующие действия:
- Войдите в систему Spheron и перейдите в раздел Gateways на панели навигации.
- Нажмите кнопку Generater, чтобы создать новый шлюз.
- Введите имя шлюза и нажмите кнопку Create.
Как использовать ваш шлюз?
Чтобы получить доступ к контенту через выделенный шлюз, просто выполните следующие действия:
- Получите CID (идентификатор содержимого) файла, который вы хотите просмотреть.
- Добавьте CID к URL-адресу вашего шлюза в следующем формате:
https://{gateway-name}.spheron.link/ipfs/{cid}
Ознакомьтесь с нашей документацией по шлюзам для получения дополнительной информации.
Дополнительные ресурсы
Чтобы узнать больше об этой теме, посетите страницу Spheron для получения подробной информации. https://docs.shardeum.org/storage/spheron
Последнее обновление 6 февраля 2024 года
translated by wh1tearm0r & nolackin
Присоединяйтесь к нам:
Website | Telegram | TelegramRu | Twitter | Reddit | Subreddit | Discord | LinkedIn | MediumRu
#shardeum #криптовалюта #блокчеин #технологии #dApp #крипта