開源後端和 API 堆疊使開發團隊能夠比以往更快地建置、運行和擴展持久的平台和市場。
Stelace.com |文檔 |部落格 |嘰嘰喳喳
包括:
要獲得全端體驗,您可以在此處開始使用開源 Vue.js 前端模板。
部署和利用 Stelace 最簡單的方法是使用我們的官方託管基礎架構。透過高可用性部署、自動擴展、內建測試和即時環境以及管理儀表板,您可以在幾分鐘內建立並運行新的平台後端。 SLA、專用基礎架構和進階支援也可供企業客戶使用。
和:
文件和 API 參考中列出的所有 API 。
管理儀表板 UI 與我們的軟體即服務產品相關聯,並且不是開源的。除非社區和工作人員合作實現這一目標,否則它肯定永遠不會實現。
就是這樣!
這意味著,如果您不需要 Stelac 支援或 SLA 並且準備好建立自己的管理 UI,或者您不需要,您可以隨時在我們的任何 SaaS 計劃和自託管之間自由切換。
注意:對於您的應用程式 UI,我們也製作了開源前端模板。
請造訪 Docker 網站安裝 Docker CE/EE。為您的系統選擇正確的安裝指南。
請參考官方說明。
git clone https://github.com/stelace/stelace.git && cd stelace && git checkout origin/master
我們建議對資料庫使用預先配置的 Docker 映像以簡化開發。
這就是 Stelace 團隊開發和測試 API 伺服器的方式。
請注意,您應該在生產中使用正確的資料庫。
讓我們從您自己的.env
檔案開始,以便根據需要進行自訂:
cp .env.example .env
建置 Docker 映像:
docker-compose build
並啟動資料庫:
yarn docker:db
簡寫: docker-compose up -d elasticsearch postgresql redis
運行yarn
來安裝依賴項。
運行yarn prepare
安裝husky hooks
運行資料庫遷移以自動建立或更新表:
yarn knex migrate:latest # or `npm run knex migrate:latest`
yarn plugins
yarn seed
提示:使用我們的Stelace Instant開源範本之一進行超快速的全端開發。
yarn start # or `npm start`
Stelace 伺服器是在 Linux 機器(Ubuntu)上建置並部署的,並且您在使用其他作業系統運行伺服器時可能會遇到一些問題。
Docker 可以輕鬆解決這個問題。
使用容器化 API和資料庫時,您只需在.env
檔案中將主機從127.0.0.1
變更為elasticsearch
、 postgresql
和redis
。
以下是安裝相依性和初始化資料庫的方法:
# ephemeral container with --rm option
docker-compose run --rm api yarn
docker-compose run --rm api yarn seed
註:專案根目錄在開發時作為Docker卷,包括共享的node_modules
。在普通伺服器和伺服器容器設定之間切換時,您需要重新安裝依賴項。
跑步:
docker-compose up -d
從專案根目錄運行的有用命令:
docker-compose logs -f api
docker-compose down
docker volume prune
提示:在開發過程中使用yarn docker:db:reset
重置容器和磁碟區。如果您遇到損壞的資料庫或 Redis 儲存資料的任何問題,或者您想要升級資料庫(警告:容器資料和磁碟區將會遺失),這可能會很有用。
測試主要是資料庫啟動並執行的整合測試,以涵蓋完整的 API 功能。
在執行 ElasticSearch、PostgreSQL 和 Redis 以及適當的環境變數(主機、連接埠、憑證)的情況下執行npm run test
或yarn test
。
您可以將資料庫 Docker 容器(請參閱使用 API 伺服器容器)與適當的主機 (127.0.0.1) 和連接埠(例如 PostgreSQL:6543)結合使用。
測試檔案與 AVA 並行運行,使用 PostgreSQL 資料庫中的多個模式。
測試非常消耗 CPU 資源,您可能需要 4 個 CPU 核心才能在良好的條件下運行它們。
請在伺服器文件(測試)中找到更多詳細資訊。
在開發或測試期間即時取得伺服器日誌非常有用。
你只需要設定一個環境變數:
ROARR_LOG=true yarn test
若要在 AVA 測試期間查看console.log
呼叫的輸出,請新增--verbose
標誌:
yarn test --verbose
Stelace 團隊在生產中使用 API 伺服器 Docker 映像,CI 測試也是如此。
您也可以使用 API 伺服器容器在本機上執行測試。
啟動資料庫容器後,確保 ElasticSearch、PostgreSQL 和 Redis 正在運行:
# Install dependencies used by API server container if not done yet
docker-compose run --rm api yarn
# Checking that databases are up and running
docker-compose run --rm api /bin/sh -c
' until nc -z -v -w30 elasticsearch 9200 && nc -z -v -w30 postgresql 5432 && nc -z -v -w30 redis 6379
do
echo "Waiting for PostgreSQL, ElasticSearch and Redis…"
sleep 2
done ' ;
使用容器化 API 運行測試:
docker-compose run --rm api yarn test
# instead of standard local server with `yarn test`
如上所述,我們建議使用適當的資料庫進行生產。您可以自行託管資料庫或使用資料庫提供者將它們外部化。
請尋找為資料庫配置 SSL 的詳細流程。
請尋找有關不同類型 API 金鑰的說明。
Stelace API 公共版本引入了重大更改,公開日期為2019-05-20
,但儲存庫本身遵循 semver 規則。過時的版本相當於major
更新,如 semver major.minor.patch
中所示。
感謝 Transformer 的支持,受優秀範例的啟發,舊版本得到了支持。
當引入重大變更時(根據 semver 在此儲存庫中表示為新的主要版本):
src/versions/index.js
description
欄位記錄更改Stelac 是開源的,非常歡迎社群(包括您自己)的貢獻!
在為 Stelac 做出貢獻之前:
用於 Web 平台的 Stelace API 伺服器根據 GNU 通用公共授權版本 3 的條款獲得許可。
請聯絡我們討論其他授權選項或查看我們的託管後端和高級支援的 SaaS 計劃。
Stelace 版權所有 © 2018 年至今 Sharinplace SAS。
該程式是自由軟體:您可以根據自由軟體基金會發布的 GNU 通用公共授權(授權的第 3 版)或(由您選擇)任何更高版本的條款重新散佈和/或修改它。
分發此程序的目的是希望它有用,但不提供任何保證;甚至沒有適銷性或特定用途適用性的默示保證。有關更多詳細信息,請參閱 GNU 通用公共許可證。
該程式中包含 GNU 通用公共授權的副本,也可從 https://www.gnu.org/licenses/gpl-3.0.txt 取得。
由 ❤️ 在法國巴黎製造。