如何在使用Docker快速部署StackEdit并实现公网访问本地编辑器远程办公

文章目录

    • 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-8container_name: stackeditenvironment:- LISTENING_PORT=8080- ROOT_URL=/- USER_BUCKET_NAME=rootports:- 8080:8080/tcpnetwork_mode: bridgerestart: 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.mzph.cn/news/230640.shtml

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

相关文章

如何在Linux命令行下发送和接收UDP数据包

众所周知,在传输层有两个常用的协议 TCP 和 UDP,本文介绍在 Linux 命令行下,如何使用 nc 命令发送或接收 UDP 数据包,这些命令的用法对调试 UDP 通信程序将有所帮助,本文适合初学者阅读。 1. 问题的提出 编写了一个使用 raw socket 在数据链路层接收原始 UDP 数据包的程序…

Leetcode 2968. Apply Operations to Maximize Frequency Score

Leetcode 2968. Apply Operations to Maximize Frequency Score 1. 解题思路2. 代码实现 题目链接:2968. Apply Operations to Maximize Frequency Score 1. 解题思路 这题说来惭愧,一开始自己没有搞定,不过看了大佬们的解答之后发现多少有…

本地声明式缓存

SpringBootCaffeineRedis声明式缓存 最近接到一个项目,里面同时整合了Caffeine和Redis。 对于像验证码,或者对用户操作做一些限制的缓存,还有分布式锁等等操作就利用redis来缓存, 对于一些热点数据,为了降低数据库查…

Java语言真的跌落神坛了吗?

Java语言真的跌落神坛了吗? 在开始前我有一些资料,是我根据自己从业十年经验,熬夜搞了几个通宵,精心整理了一份「 Java的资料从专业入门到高级教程工具包」,点个关注,全部无偿共享给大家!&#…

居民建筑能耗现状以及节能降耗方向

1我国居住建筑能耗统计情况 我国民用建筑能耗统计工作起步较晚。为了解和掌握民用建筑能源消耗情况,2007年住房和城乡建设部发布了《民用建筑能耗统计报表制度》(试行)[建科函(2007)271号],自此我国民用建筑能耗统计工作正式展开,而城镇居住…

新增数据,某个字段的值总是保存不上问题解决

在系统中新增一条数据,某个字段的数据总是保存不上,但是没有报任何异常和错误,其他字段也都是正常的,通过抓包分析请求参数发现那个字段的值也没有传给后端,检查了前后端代码也没有排查到问题。百思不得其解&#xff0…

【算法与数据结构】455、LeetCode分发饼干

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析:因为大饼干可以满足大胃口的孩子也必然可以满足小胃口的孩子,如果要尽可能的满足孩子的胃口…

Git的rebase和merge合并代码的区别

引言 Git的中rebase和merge都可以合并代码,那他们有什么相同和不同呢?本文来一次说清楚、说明白。 首先Git中的rebase和merge都是用于合并代码的方式,但它们有不同的工作原理和影响。 Merge(合并) 合并(…

【智慧之窗】AI驱动产品探索

一.初识 ChatGPT ChatGPT 是由 OpenAI 开发的自然语言处理(NLP)模型,基于 GPT(Generative Pre-trained Transformer)架构。GPT 系列的模型旨在理解和生成自然语言文本。ChatGPT 专注于支持对话性任务,即与…

java的json解析

import com.alibaba.fastjson.*; public class JsonParser { public static void main(String[] args) { String jsonStr "{\"name\":\"John\", \"age\":30}"; // JSON字符串示例 // 将JSON字符串转换为JSONObject对象 JSONObje…

想做新程序员?马上用 GPT-4 编程,一切我们都替你搞好了!

// 打不过就加入。与其担心被 GPT-4 取代,不如现在就学习驾驭它。 (GPT-3.5 和其他模型都不用怕,它们都不行,谁用谁知道……除了 Claude 我们还在测试中) 文末有一键加入方法,国内用户也能无障碍使用—…

Ubuntu 20.04 prometheus prometheus-process-exporter

prometheus-process-exporter 监控系统架构方案 https://blog.csdn.net/weixin_45801289/article/details/126922395 sudo apt install prometheus-process-exporter prometheus-process-exporter_0.4.0ds-1_amd64.deb service prometheus-process-exporter status netstat …

中国一重集中采购平台的建设经历和系统亮点

中国一重前身为第一重型机器厂,是“一五”期间建设156项重点工程项目之一,始建于1954年,是中央管理的涉及国家安全和国民经济命脉的国有重要骨干企业之一,是国家创新型试点企业、国家高新技术企业,拥有国家级企业技术中…

大语言模型--数据

数据 大语言模型 数据WebText和OpenWebText数据集Colossal Clean Crawled Corpus(C4)Benchmark的数据污染问题GPT-3的数据集The Pile数据集 WebText和OpenWebText数据集 WebText数据集被用于训练GPT-2模型。其目标是获取既多样化又高质量的数据集。以前…

漏洞复现-iDocview doc/upload接口存在任意文件读取漏洞(附漏洞检测脚本)

免责声明 文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的…

SpringSecurity源码学习六:授权

目录 1. 用户权限2. 资源权限2.1 自定义资源权限2.2 权限注解2.2.1 默认注解2.2.2 自定义注解2.2.3 注解初始化和保存 3. 代码示例4. 源码解析4.1 投票器4.1.1 投票器不同实现类的含义4.1.2 默认投票器WebExpressionVoter 5. 总结 SpringSecurity的授权是依赖于过滤器FilterSec…

Postgresql源码(117)libpq的两套实现(socket/shm_mq)

libpq的通信方式 libpq提供了两套通信方式 socketshm_mq 分别实现在下面两个文件中 pqcomm.cpqmq.c 什么时候用socket通信? 除了下述并行场景,其他场景全部使用socket通信。 static const PQcommMethods PqCommSocketMethods {.comm_reset sock…

Spring boot 3.2 新特性介绍

1.增加了对Apache Pulsar的支持 使用方式参考 官网Messaging 2.增加了对虚拟线程的支持 需要jdk 21 版本 在spring-boot 项目中 通过设置 spring.threads.virtual.enabledtrue 即可开启虚拟线程。虚拟线程开启后作用域如下 1.Servlet Web Servers 当启用虚拟线程时&…

174.【2023年华为OD机试真题(C卷)】开源项目热榜(一般排序算法实现JavaPythonC++JS)

🚀你的旅程将在这里启航!本专栏所有题目均包含优质解题思路,高质量解题代码,详细代码讲解,助你深入学习,深度掌握! 文章目录 【华为OD机试AB必刷题目】题目描述解题思路Python题解代码JAVA题解代码C/C++题解代码JS题解代码代码OJ评判结果代码讲解Python题解代码讲解JAV…