2017-10-03 18:43:14 +00:00
|
|
|
|
# StackEdit
|
2017-07-23 18:42:08 +00:00
|
|
|
|
|
2022-05-23 03:29:54 +00:00
|
|
|
|
从 [StackEdit 官方](https://github.com/benweet/stackedit) fork出来,然后加上了 **Gitee** 的支持,并且已经重新打了镜像,以下官方的部署方式,除了Docker镜像地址不同,其他均一致。
|
|
|
|
|
|
|
|
|
|
Fork出来修改的原因:Stackedit的作者可能因为什么原因,已经很久不维护了,Github授权登录很早之前就登录不了了,并且还没发支持国内常用的Gitee,比较蛋疼,所以想到Fork出来改,大概花了周末一整天终于改好了。
|
|
|
|
|
|
|
|
|
|
新的Docker镜像在中央仓库为:mafgwo/stackedit,当前最新版本为:5.15.1(延续原有版本号)
|
|
|
|
|
|
|
|
|
|
并增加了以下三个环境变量:
|
|
|
|
|
- `GITEE_CLIENT_ID` Gitee 的 Client ID
|
|
|
|
|
- `GITEE_CLIENT_SECRET` Gitee 的 Client Secret
|
|
|
|
|
- `GITEE_CALLBACK` Gitee的回调地址,Gitee授权获取token时还需要传入回调地址,格式是 http[s]://[hostname]:[port]/oauth2/callback
|
|
|
|
|
|
|
|
|
|
|
2018-02-11 12:32:16 +00:00
|
|
|
|
[![Build Status](https://img.shields.io/travis/benweet/stackedit.svg?style=flat)](https://travis-ci.org/benweet/stackedit) [![NPM version](https://img.shields.io/npm/v/stackedit.svg?style=flat)](https://www.npmjs.org/package/stackedit)
|
|
|
|
|
|
2018-02-13 23:04:54 +00:00
|
|
|
|
> Full-featured, open-source Markdown editor based on PageDown, the Markdown library used by Stack Overflow and the other Stack Exchange sites.
|
2017-07-23 18:42:08 +00:00
|
|
|
|
|
2022-05-23 03:29:54 +00:00
|
|
|
|
https://edit.qicoder.com/
|
2018-03-15 14:50:46 +00:00
|
|
|
|
|
2018-04-27 14:37:05 +00:00
|
|
|
|
### Ecosystem
|
2018-03-15 14:50:46 +00:00
|
|
|
|
|
2018-04-27 14:37:05 +00:00
|
|
|
|
- [Chrome app](https://chrome.google.com/webstore/detail/iiooodelglhkcpgbajoejffhijaclcdg)
|
|
|
|
|
- NEW! Embed StackEdit in any website with [stackedit.js](https://github.com/benweet/stackedit.js)
|
|
|
|
|
- NEW! [Chrome extension](https://chrome.google.com/webstore/detail/ajehldoplanpchfokmeempkekhnhmoha) that uses stackedit.js
|
|
|
|
|
- [Community](https://community.stackedit.io/)
|
2018-04-16 00:22:29 +00:00
|
|
|
|
|
2019-07-02 20:22:14 +00:00
|
|
|
|
### Build
|
2018-04-16 00:22:29 +00:00
|
|
|
|
|
2021-03-29 12:28:44 +00:00
|
|
|
|
```bash
|
2018-04-16 00:22:29 +00:00
|
|
|
|
# install dependencies
|
|
|
|
|
npm install
|
|
|
|
|
|
|
|
|
|
# serve with hot reload at localhost:8080
|
|
|
|
|
npm start
|
|
|
|
|
|
|
|
|
|
# build for production with minification
|
|
|
|
|
npm run build
|
|
|
|
|
|
|
|
|
|
# build for production and view the bundle analyzer report
|
|
|
|
|
npm run build --report
|
|
|
|
|
```
|
2017-10-03 18:43:14 +00:00
|
|
|
|
|
2019-07-02 20:22:14 +00:00
|
|
|
|
### Deploy with Helm
|
|
|
|
|
|
|
|
|
|
StackEdit Helm chart allows easy StackEdit deployment to any Kubernetes cluster.
|
|
|
|
|
You can use it to configure deployment with your existing ingress controller and cert-manager.
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
# Add the StackEdit Helm repository
|
|
|
|
|
helm repo add stackedit https://benweet.github.io/stackedit-charts/
|
|
|
|
|
|
|
|
|
|
# Update your local Helm chart repository cache
|
|
|
|
|
helm repo update
|
|
|
|
|
|
|
|
|
|
# Deploy StackEdit chart to your cluster
|
|
|
|
|
helm install --name stackedit stackedit/stackedit \
|
|
|
|
|
--set dropboxAppKey=$DROPBOX_API_KEY \
|
|
|
|
|
--set dropboxAppKeyFull=$DROPBOX_FULL_ACCESS_API_KEY \
|
|
|
|
|
--set googleClientId=$GOOGLE_CLIENT_ID \
|
|
|
|
|
--set googleApiKey=$GOOGLE_API_KEY \
|
|
|
|
|
--set githubClientId=$GITHUB_CLIENT_ID \
|
|
|
|
|
--set githubClientSecret=$GITHUB_CLIENT_SECRET \
|
|
|
|
|
--set wordpressClientId=\"$WORDPRESS_CLIENT_ID\" \
|
|
|
|
|
--set wordpressSecret=$WORDPRESS_CLIENT_SECRET
|
2021-03-29 12:28:44 +00:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Later, to upgrade StackEdit to the latest version:
|
|
|
|
|
|
|
|
|
|
```bash
|
2019-07-02 20:22:14 +00:00
|
|
|
|
helm repo update
|
|
|
|
|
helm upgrade stackedit stackedit/stackedit
|
2021-03-29 12:28:44 +00:00
|
|
|
|
```
|
2019-07-02 20:22:14 +00:00
|
|
|
|
|
2021-03-29 12:28:44 +00:00
|
|
|
|
If you want to uninstall StackEdit:
|
|
|
|
|
|
|
|
|
|
```bash
|
2019-07-02 20:22:14 +00:00
|
|
|
|
helm delete --purge stackedit
|
2021-03-29 12:28:44 +00:00
|
|
|
|
```
|
2019-07-02 20:22:14 +00:00
|
|
|
|
|
2021-03-29 12:28:44 +00:00
|
|
|
|
If you want to use your existing ingress controller and cert-manager issuer:
|
|
|
|
|
|
|
|
|
|
```bash
|
2019-07-02 20:22:14 +00:00
|
|
|
|
# See https://docs.cert-manager.io/en/latest/tutorials/acme/quick-start/index.html
|
|
|
|
|
helm install --name stackedit stackedit/stackedit \
|
|
|
|
|
--set dropboxAppKey=$DROPBOX_API_KEY \
|
|
|
|
|
--set dropboxAppKeyFull=$DROPBOX_FULL_ACCESS_API_KEY \
|
|
|
|
|
--set googleClientId=$GOOGLE_CLIENT_ID \
|
|
|
|
|
--set googleApiKey=$GOOGLE_API_KEY \
|
|
|
|
|
--set githubClientId=$GITHUB_CLIENT_ID \
|
|
|
|
|
--set githubClientSecret=$GITHUB_CLIENT_SECRET \
|
|
|
|
|
--set wordpressClientId=\"$WORDPRESS_CLIENT_ID\" \
|
|
|
|
|
--set wordpressSecret=$WORDPRESS_CLIENT_SECRET \
|
|
|
|
|
--set ingress.enabled=true \
|
|
|
|
|
--set ingress.annotations."kubernetes\.io/ingress\.class"=nginx \
|
2021-03-29 12:28:44 +00:00
|
|
|
|
--set ingress.annotations."cert-manager\.io/cluster-issuer"=letsencrypt-prod \
|
2019-07-02 22:52:58 +00:00
|
|
|
|
--set ingress.hosts[0].host=stackedit.example.com \
|
2019-07-02 20:22:14 +00:00
|
|
|
|
--set ingress.hosts[0].paths[0]=/ \
|
|
|
|
|
--set ingress.tls[0].secretName=stackedit-tls \
|
2019-07-02 22:52:58 +00:00
|
|
|
|
--set ingress.tls[0].hosts[0]=stackedit.example.com
|
2019-07-02 20:22:14 +00:00
|
|
|
|
```
|