Linux本地搭建StackEdit Markdown编辑器结合内网穿透实现远程访问

news2024/11/24 18:44:27

文章目录

    • 1. docker部署Stackedit
    • 2. 本地访问
    • 3. Linux 安装cpolar
    • 4. 配置Stackedit公网访问地址
    • 5. 公网远程访问Stackedit
    • 6. 固定Stackedit公网地址

StackEdit是一个受欢迎的Markdown编辑器,在GitHub上拥有20.7k Star!,它支持将Markdown笔记保存到多个仓库,包括Gitee、GitHub和Gitea。此在线笔记工具还提供了一些便捷功能,如拖拽或粘贴上传图片、文件搜索功能,以及可切换为炫酷的暗黑主题,这些功能特别适合那些喜欢使用Markdown来记录笔记的用户。同时,StackEdit 是开源的,个人可以本地部署自己的Markdown编辑器,并且通过浏览器即可快速访问.当然,本地访问局限性太大,结合cpolar 内网穿透工具,即可实现远程,随时随地,任意浏览器访问我们部署在本地的Markdown编辑器,提高生产效率!!

下面介绍如何在Linux 以 docker-compose方式快速部署运行 StackEdit,并结合cpolar 内网穿透实现远程访问,由于是docker 部署运行,设备需要提前安装docker 和docker compose!

1. docker部署Stackedit

在Linux 任意目录下,创建一个docker-compose.yml 文件,按 i 编辑

vim docker-compose.yml

然后复制下面内容到文件中,复制完成保存,下面ports挂载端口可以自行修改,如不会修改,可以默认8080端口,本例默认!

services:
  stackedit:
    image: mafgwo/stackedit:5.15.20-8
    container_name: stackedit
    environment:
      - LISTENING_PORT=8080
      - ROOT_URL=/
      - USER_BUCKET_NAME=root
    ports:
      - 8080:8080/tcp
    network_mode: bridge
    restart: always 

保存文件后,执行下面命令一键启动

docker-compose up -d

执行后,等待安装完成,完成后输入docker ps 即可看到运行的Stackedit

image-20230925145100176

2. 本地访问

上面以docker方式成功部署和启动运行了属于个人的Markdown编辑器,现在打开浏览器,局域网访问容器挂载的8080端口,然后点击界面顶部开始写作,即可看到我们的Markdown编辑器界面,下面我们安装cpolar 内网穿透工具,实现远程访问

image-20230925150315436

3. Linux 安装cpolar

上面我们成功安装了Stackedit,并局域网访问ok,下面我们在Linux安装cpolar内网穿透工具,通过cpolar 转发本地端口映射的http公网地址,我们可以很容易实现远程访问,而无需自己注册域名购买云服务器.下面是安装cpolar步骤

cpolar官网地址: https://www.cpolar.com

  • 使用一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 向系统添加服务
sudo systemctl enable cpolar
  • 启动cpolar服务
sudo systemctl start cpolar

cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可

image-20230831171159175

4. 配置Stackedit公网访问地址

点击左侧仪表盘的隧道管理——创建隧道,创建一个Stackedit的cpolar 公网地址隧道!

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:8080 (docker 挂载的端口)
  • 域名类型:免费选择随机域名
  • 地区:选择China vip

点击创建

image-20230925152323220

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https

image-20230925152428046

5. 公网远程访问Stackedit

使用上面的https公网地址在任意设备的浏览器访问,即可成功看到我们Stackedit界面,这样一个公网地址且可以远程访问就创建好了.

image-20230925152527966

6. 固定Stackedit公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称

image-20230925152655519

保留成功后复制保留成功的二级子域名的名称

image-20230925152723068

返回登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

image-20230925152751096

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名

点击更新(注意,点击一次更新即可,不需要重复提交)

image-20230925152848058

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名

image-20230925152943669

最后,我们使用固定的公网地址访问Stackedit markdown 编辑器,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了.

image-20230925153044642

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1319932.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CentOS7安装Docker及添加阿里云镜像加速详细教程

Docker官方安装教程网站:Install Docker Engine on CentOS | Docker Docs 具体流程如下: 1.确定你是CentOS7及以上版本 cat /etc/redhat-release 2.yum安装gcc相关 yum -y install gcc yum -y install gcc-c 3.安装需要的软件包 3.1安装docker引擎…

Python:发送qq邮箱只需几行代码轻松搞定

一、前言 在日常业务中,经常会遇到需要程序发邮件提醒自己的情况。例如数据异常、工作任务进度完成情况、今日天气、今日股票行情等各种场景。如果引入发送邮箱以推进预期进度的功能,那将大大优化我们的日常。我也是近期在写国债逆回购的监控脚本时想起…

chatchat知识库对话接口修改成sse流式输出方案

在chatchat结合chatGLM搭建的私有化知识库中,使用原生的webUI画面是可以流式输出的,而直接调用api接口,不管stream为true还是false,都是阻塞式输出的,也就是一口气返回给接口。 我们的解决方案是修改StreamingRespons…

32位MCU极致性价比高速风筒方案特点--【其利天下技术】

近年来,伴随着人们消费升级及现代工业技术水平的提升,电吹风市场已经步入了绿色节能、高效多功能化的发展阶段。人们对电吹风的需求和要求都在不断增加。然而,传统电吹风采用交流电机,使用寿命有限,维护不方便&#xf…

C++1114新标准——Lambdas,decltype

系列文章目录 C11&14新标准——Variadic templates(数量不定的模板参数) C11&14新标准——Uniform Initialization(统一初始化)、Initializer_list(初始化列表)、explicit C11&14新标准—— d…

【Python数据分析系列】一文搞懂二维数组中的排列组合(案例源码)

一、问题场景 在工作中,我们经常会碰到这样的问题场景,有一个4行5列的二维数组(4个波段,5个采样点),一行(一个一维数组)代表一个波段,我想知道数组中任意两个波段的差&am…

ESP32 连接阿里云 MQTT 报错MQTT Connect err:2

解决方法 跳转到 这个头文件<PubSubClient.h>里 MQTT_MAX_PACKET_SIZE 把这个的大小从原来的256 改为1024 MQTT_KEEPALIVE 把这个大小从原来的15 改为65 修改后再次连接即可成功 如下图&#xff1a;

下一代实时数据库:Apache Doris 【六】数据划分

3.4 数据划分 3.4.1 列定义3.4.2 分区与分桶3.4.3 PROPERTIES3.4.4 ENGINE3.4.5 其他后记 3.4 数据划分 以 3.3.2 的建表示例来理解。 3.4.1 列定义 以 AGGREGATE KEY 数据模型为例进行说明。更多数据模型参阅 Doris 数据模型。 列的基本类型&#xff0c; 可以通过在 mysql-cli…

【vSphere | VM】虚拟机自定义规范Ⅳ —— 使用虚拟机自定义规范创建 Linux 和 Windows VM

目录 5. 使用虚拟机自定义规范创建VM5.1 Linux 虚拟机示例Rocky Linux 9.2&#xff08;1&#xff09;克隆虚拟机&#xff08;2&#xff09;模板部署虚拟机 5.2 Windows 虚拟机示例Windows 10&#xff08;1&#xff09;克隆虚拟机&#xff08;2&#xff09;模板部署 Windows 10 …

Unity Meta Quest 一体机开发(十一):【手势追踪】远距离抓取

文章目录 &#x1f4d5;教程说明&#x1f4d5;玩家配置 DistanceHandGrabInteractor&#x1f4d5;物体配置 DistanceHandGrabInteractable&#x1f4d5;调整物体飞向手部的速度&#x1f4d5;调整探测物体的范围⭐HandFrustumNarraw⭐HandFrustumWide⭐HeadFrustum 此教程相关的…

高德地图画线,适用于在地图上画出各种道路

addPolyline() {let AMap this.AMaplet polyline new AMap.Polyline({// map: this.map,// polyline 路径path: [new AMap.LngLat("119.368904", "30.913423"),new AMap.LngLat("119.382122", "30.901176"),],strokeColor: #F3D930,…

MapReduce基础编程

文章目录 第1关&#xff1a;合并去重第2关&#xff1a;整合排序第3关&#xff1a;信息挖掘 第1关&#xff1a;合并去重 编程要求 对于两个输入文件&#xff0c;即文件A和文件B&#xff0c;请编写MapReduce程序&#xff0c;对两个文件进行合并&#xff0c;并剔除其中重复的内容…

Ngnix之反向代理、负载均衡、动静分离

目录 1. Ngnix 1.1 Linux系统Ngnix下载安装 1.2 反向代理 正向代理&#xff08;Forward Proxy&#xff09;&#xff1a; 反向代理&#xff08;Reverse Proxy&#xff09;&#xff1a; 1.3 负载均衡 1.4 动静分离 1. Ngnix Nginx是一个高性能的开源Web服务器&#xff0…

无惧数据泄露风险:迅软科技与电子科技公司共同谱写的安全合奏

当今&#xff0c;电子信息产品已广泛渗透到我们生活的各个领域&#xff0c;涵盖通信、医疗、计算机及其周边视听产品、玩具、军工等多个领域。电子信息科技行业作为典型的知识技术密集型行业&#xff0c;具备科技含量高、专利众多、知识产权丰富、核心数据密级高等特点。随着行…

猫头虎博主揭秘:令人叹为观止的编程语言与代码技巧 ‍

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…

GEE:根据像素数量删除非常分散且面积较小的对象(斑块/超像素)

作者:CSDN @ _养乐多_ 本文将介绍在Google Earth Engine (GEE)平台上,斑块(对象/超像素)的像素数量计算方法,并根据斑块的像素数量删除某一类土地利用数据中面积低于指定阈值的斑块(对象/超像素)的代码。 结果如下图所示,简言之,就是将下图中面积小的对象删除,只…

MybatisPlus【进阶】--悲观锁,乐观锁,生成后台数据:javafaker

什么是悲观锁 悲观锁&#xff1a;十分悲观&#xff0c;认为总是出现问题&#xff0c;无论干什么都会上锁&#xff0c;再去操作 悲观锁是基于一种悲观的态度类来防止一切数据冲突&#xff0c;它是以一种预防的姿态在修改数据之前把数据锁住&#xff0c;然后再对数据进行读写&…

山西电力市场日前价格预测【2023-12-19】

日前价格预测 预测说明&#xff1a; 如上图所示&#xff0c;预测明日&#xff08;2023-12-19&#xff09;山西电力市场全天平均日前电价为562.84元/MWh。其中&#xff0c;最高日前电价为1168.60元/MWh&#xff0c;预计出现在18:00。最低日前电价为361.89元/MWh&#xff0c;预计…

分享!!!(一)小编总结的base64、blob、图片文件二进制相互转换的方式以及源码

目录 第一章 了解 1.1 大概结构 1.2 准备阶段 1.2.1 了解canvas 1.2.2 了解imageData 1.2.3 了解imgUrl 1.2.4 了解base64 1.2.5 了解blob/文件二进制流 1.2.6 了解arraybuffer 1.2.7 文件、图片 第二章 掌握图中的相互转换 2.1 cavas 与 imageData的互相转换 2.1…

基于OpenVidu的视频会议解决方案

OpenVidu是什么 OpenVidu 是一个开源的实时音视频通信平台&#xff0c;基于 Apache 2.0 协议开源的 WebRTC 视频会议平台&#xff0c;源码仓库地址&#xff1a;https://github.com/OpenVidu/openvidu。它提供了一组 API 和 SDK &#xff0c;使开发人员能够轻松地在 Web 和移动…