如何使用Docker部署开源Leanote蚂蚁笔记并发布个人博客至公网

本文主要是介绍如何使用Docker部署开源Leanote蚂蚁笔记并发布个人博客至公网,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

最近,我发现了一个超级强大的人工智能学习网站。它以通俗易懂的方式呈现复杂的概念,而且内容风趣幽默。我觉得它对大家可能会有所帮助,所以我在此分享。点击这里跳转到网站。

文章目录

    • 1. 安装Docker
    • 2. Docker本地部署Leanote蚂蚁笔记
    • 3. 安装cpolar内网穿透
    • 4. 固定Leanote蚂蚁笔记公网地址

本篇文章介绍如何使用Docker部署Leanote蚂蚁笔记,并且结合cpolar内网穿透实现公网远程访问本地笔记编辑并制作个人博客等。

Leanote 蚂蚁笔记是一款云笔记工具,蚂蚁笔记(又名LeaNote)就是一款国产开源的私有云笔记软件。它支持普通格式笔记、Markdown语法、专业数学公式编辑、和思维脑图,常见的笔记相关功能它都拥有,同时也支持 vim&emacs 输入,持私有本地部署。Leanote也可以作为你的个人博客, 结合cpolar内网穿透把你的知识传播的更远!

1708321074571

1. 安装Docker

本文演示环境:CentOS 7,Xshell7远程ssh

没有安装Docker的小伙伴需安装Docker,已有Docker可跳过以下步骤。

如没有安装Docker,需先安装Docker:

  • 安装软件包(提供实用程序)并设置存储库

    $ sudo yum install -y yum-utils
    $ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    

    安装Docker引擎

    sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
    

    启动Docker

    sudo systemctl start docker
    

    通过运行映像来验证 Docker 引擎安装是否成功

    sudo docker run hello-world
    

2. Docker本地部署Leanote蚂蚁笔记

检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

systemctl status docker

检查Docker版本

docker -v

下载Leanote镜像,本次使用Leanote容器镜像从dockerhub拉取,版本为latest版本

docker pull axboy/leanote

462826f279de6d977a141fffc489ad1

部署Leanote应用

创建Leanote容器挂载的数据目录

mkdir -p /data/leanote/{db,conf,files,upload}
cd /data/leanote/

使用docker-cli命令快速创建Leanote容器

docker run -d -p 9800:9000 \-e "TZ=Asia/Shanghai"\--restart=always\-v /data/leanote/db:/data/db \-v /data/leanote/conf/:/data/leanote/conf \-v /data/leanote/files:/data/leanote/files \-v /data/leanote/upload:/data/leanote/public/upload \-m 50M --oom-kill-disable --memory-swap=-1\--name leanote \axboy/leanote

4a23ca81b05028b50d4a0303a28f063

检查Leanote容器状态状态

docker ps

检查Leanote容器所在系统资源

docker stats --no-stream leanote

打开新的浏览器直接访问:http://192.168.149.143:9800/ (本地IP:9800)进入Leanote首页

6eb290b634e3112a49ff90dfeb0f9e3

设置简体中文

点击右上角简体中文

image-20240219114657197

管理员登录Leanote

用户名填写:admin 密码:abc123

765c9c5591ce2d795823725211dd0e3

进入到后台编辑界面

fdc37f8630d4caca914b697b0af0297

新建笔记

9626bc4c3c2bb37eca80477e00393f6

ca73116e4e6e3d15bc4663621e4d45c

编辑完文章后公开为博客

d1fd381ab09ff34befc11a2c8dbd4d1

点击右上角我的博客

6393df2a019f64c0f4e85a8f7088554

6b320011ca547400652fd64c17e173b

点击博客设置

4f54ed8c253b1e1dc706e8ab70e83d0

选择博客设置,进入博客管理页面

f93186a70af1d0ba79796962bf4cc5b

修改博客主题

c6d1dcbba11cb7809b7275535f7c95b

我们就成功在本地搭建了Leanote蚂蚁笔记,但如果想在外随时随地编辑自己的蚂蚁笔记,就需要借助cpolar内网穿透工具来实现公网访问了!接下来介绍一下如何安装cpolar内网穿透并实现蚂蚁笔记公网访问!

3. 安装cpolar内网穿透

下面是安装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 管理界面配置即可。

接下来配置一下Leanote蚂蚁笔记的公网地址,

登录后,点击左侧仪表盘的隧道管理——创建隧道,

创建一个蚂蚁笔记的公网http地址隧道

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:9800 (本地访问的地址)
  • 域名类型:免费选择随机域名
  • 地区:选择China Top

点击创建

cc32156089ad8673b165e6d76b7d18f

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

f795e04bc79da30ee5e595b309ca3c2

使用上面的Cpolar https公网地址,在任意设备的浏览器进行访问,即可成功看到Leanote蚂蚁笔记界面,这样一个公网地址且可以远程访问就创建好了,使用了cpolar的公网域名,无需自己购买云服务器,即可到公网进行远程访问蚂蚁笔记了!

3f2ae9de33f92922518b9253b713a00

小结

如果我们需要长期异地远程访问蚂蚁笔记,由于刚才创建的是随机的地址,24小时会发生变化。另外它的网址是由随机字符生成,不容易记忆。如果想把域名变成固定的二级子域名,并且不想每次都重新创建隧道来听歌,我们可以选择创建一个固定的http地址来解决这个问题。

4. 固定Leanote蚂蚁笔记公网地址

我们接下来为其配置固定的HTTP端口地址,该地址不会变化,方便分享给别人长期查看你的博客,而无需每天重复修改服务器地址。

配置固定http端口地址需要将cpolar升级到专业版套餐或以上。

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

4575c71ffe477ffdcf4d54e7814d239

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

fb815a8274f6fde74750968661f8db2

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

a8a1107f681b95be65e0b3487e29542

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

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

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

06b600fd02343bd9e36aa07cbb3c168

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

0c141638c943af343154a7163c777e6

最后,我们使用固定的公网https地址访问,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了,可以异地远程自己的蚂蚁笔记来进行编辑和学习了!

d7d91b3b344c909d6c237ea9495e518
7853ded19cb0e300cc05f58663268b6

这篇关于如何使用Docker部署开源Leanote蚂蚁笔记并发布个人博客至公网的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/735980

相关文章

C++中assign函数的使用

《C++中assign函数的使用》在C++标准模板库中,std::list等容器都提供了assign成员函数,它比操作符更灵活,支持多种初始化方式,下面就来介绍一下assign的用法,具有一定的参考价... 目录​1.assign的基本功能​​语法​2. 具体用法示例​​​(1) 填充n个相同值​​(2)

Spring StateMachine实现状态机使用示例详解

《SpringStateMachine实现状态机使用示例详解》本文介绍SpringStateMachine实现状态机的步骤,包括依赖导入、枚举定义、状态转移规则配置、上下文管理及服务调用示例,重点解... 目录什么是状态机使用示例什么是状态机状态机是计算机科学中的​​核心建模工具​​,用于描述对象在其生命

使用Python删除Excel中的行列和单元格示例详解

《使用Python删除Excel中的行列和单元格示例详解》在处理Excel数据时,删除不需要的行、列或单元格是一项常见且必要的操作,本文将使用Python脚本实现对Excel表格的高效自动化处理,感兴... 目录开发环境准备使用 python 删除 Excphpel 表格中的行删除特定行删除空白行删除含指定

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

prometheus如何使用pushgateway监控网路丢包

《prometheus如何使用pushgateway监控网路丢包》:本文主要介绍prometheus如何使用pushgateway监控网路丢包问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录监控网路丢包脚本数据图表总结监控网路丢包脚本[root@gtcq-gt-monitor-prome

Python通用唯一标识符模块uuid使用案例详解

《Python通用唯一标识符模块uuid使用案例详解》Pythonuuid模块用于生成128位全局唯一标识符,支持UUID1-5版本,适用于分布式系统、数据库主键等场景,需注意隐私、碰撞概率及存储优... 目录简介核心功能1. UUID版本2. UUID属性3. 命名空间使用场景1. 生成唯一标识符2. 数

SpringBoot中如何使用Assert进行断言校验

《SpringBoot中如何使用Assert进行断言校验》Java提供了内置的assert机制,而Spring框架也提供了更强大的Assert工具类来帮助开发者进行参数校验和状态检查,下... 目录前言一、Java 原生assert简介1.1 使用方式1.2 示例代码1.3 优缺点分析二、Spring Fr

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期