【本地Docker部署开源低代码开发神器Appsmith与远程访问在线使用】

【本地Docker部署开源低代码开发神器Appsmith与远程访问在线使用】
💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老导航檀越剑指大厂系列:全面总结 java 核心技术,jvm,并发编程 redis,kafka,Spring,微服务等常用开发工具系列:常用的开发工具,IDEA,Mac,Alfred,Git,typora 等数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等新空间代码工作室:提供各种软件服务,承接各种毕业设计,毕业论文等懒人运维系列:总结好用的命令,解放双手不香吗?能用一个命令完成绝不用两个操作数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

博客目录

前言

公司需要快速开发一个内部工具,或者你心血来潮想给团队搞个小应用,结果发现开发周期长、成本高,还得找专业开发人员?感觉像是在做一道没有答案的数学题,不仅费时还费力。但今天,我要向你们介绍一款神器——Appsmith!这可是个能让不懂代码的小白也能轻松搭建出功能强大应用的超级英雄!

image-20250401140647756

1.什么是 Appsmith

Appsmith 是一个开源低代码开发平台,它就像一个神奇的画板,你只需要将各种组件(如表格、图表、表单等)像拼图一样拖到你的“画布”上,就能快速构建出复杂的应用程序。而且,它还支持多种数据源和 API 调用,让你的应用连接更自由,开发更快捷。

image-20250401140956023

Appsmith 的性能特色:

  1. 拖拽式开发:就像搭积木一样简单,你只需要把需要的组件拖到画布上,然后配置一下数据源,一个应用就诞生了!
  2. 多数据源支持:MySQL、PostgreSQL、MongoDB、REST API 等,Appsmith 都能轻松连接。
  3. 实时预览:开发过程中随时看到应用的实时效果,再也不用反复调试、刷新页面了。
  4. 强大的 JavaScript 支持:懂一点 JavaScript?那就更好了!Appsmith 允许你编写自定义逻辑,让你的应用更加灵活。
  5. 一键部署:开发完成后,你可以一键将应用部署到云端,或者导出代码进行二次开发。

2.Docker 部署

本例使用 Ubuntu 22.04 进行演示,使用 Docker 进行部署,如果没有安装 Docker,可以查看这篇教程进行安装:《Docker 安装教程——Linux、Windows、MacOS》

首先创建 Appsmith 目录: 需要在本地服务器上创建一个目录来存储 Appsmith 的配置和数据。可以是任意位置

mkdir -p ~/appsmith cd ~/appsmith 
image-20250331164816925

下载 Appsmith 的 Docker Compose 文件: 可以直接从 Appsmith 的 GitHub 仓库中获取官方的 docker-compose.yml 文件:

wget https://raw.githubusercontent.com/appsmithorg/appsmith/refs/heads/release/deploy/docker/docker-compose.yml 
image-20250331164858545

启动项目:

sudo docker compose up -d 
image-20250331165654373

打开浏览器输入 localhost:8080,就能进入到 appsmith 的主页了

image-20250331170651670

3.Appsmith 简单使用

安装完成后,打开 Appsmith,点击“Create New”按钮创建一个新的应用。

image-20250331170948352

然后,你可以在左侧的组件面板中选择需要的组件(如按钮、表单、表格等),拖放到中间的画布上进行布局。配置数据源,并将数据源绑定到组件上,使组件能够动态显示和操作数据。最后,点击右上角的“Deploy”按钮发布应用。

image-20250331171010706

4.安装 cpolar 内网穿透

不过我们目前只能在本地局域网内访问刚刚部署的 Appsmith,如果想不在同一局域网内时,也能在外部网络环境使用手机、平板、电脑等设备远程访问与使用它,应该怎么办呢?我们可以使用 cpolar 内网穿透工具来实现远程访问的需求。无需公网 IP,也不用准备云服务器那么麻烦。

下面是安装 cpolar 步骤:

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

使用一键脚本安装命令:

sudocurl https://get.cpolar.sh |sh
img

安装完成后,执行下方命令查看 cpolar 服务状态:(如图所示即为正常启动)

sudo systemctl status cpolar 
img

Cpolar 安装和成功启动服务后,在浏览器上输入 ubuntu 主机 IP 加 9200 端口即:【http://localhost:9200】访问 Cpolar 管理界面,使用 Cpolar 官网注册的账号登录,登录后即可看到 cpolar web 配置界面,接下来在 web 界面配置即可:

image-20240801133735424

5. 配置公网地址

登录 cpolar web UI 管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了:Appsmith,注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:8080
  • 域名类型:随机域名
  • 地区:选择 China Top

点击创建:

image-20250401132908360

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用任意一个地址在浏览器中访问即可。

image-20250401132950818

现在就已经成功实现使用 cpolar 生成的公网地址异地远程访问本地部署的 appsmith 啦!

小结

为了方便演示,我们在上边的操作过程中使用 cpolar 生成的 HTTP 公网地址隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在 24 小时内会发生随机变化,更适合于临时使用。

如果有长期使用 appsmith,或者异地访问与使用其他本地部署的服务的需求,但又不想每天重新配置公网地址,还想让公网地址好看又好记并体验更多功能与更快的带宽,那我推荐大家选择使用固定的二级子域名方式来配置公网地址。

6. 配置固定公网地址

使用 cpolar 为其配置二级子域名,该地址为固定地址,不会随机变化。

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

点击左侧的预留,选择保留二级子域名,地区选择 china top,然后设置一个二级子域名名称,我这里演示使用的是 appsmith,大家可以自定义。填写备注信息,点击保留。

image-20250401134041400

保留成功后复制保留的二级子域名地址:

image-20250401134104967

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

image-20250401134135508

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

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

点击更新

image-20250401134203724

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

image-20250401134246967

最后,我们使用固定的公网地址在任意设备的浏览器中访问,可以看到成功访问本地部署的 appsmith 页面,这样一个永久不会变化的二级子域名公网网址即设置好了。

image-20250401134407490

总结

通过这篇文章,你已经掌握了如何在 Ubuntu 上安装 Appsmith,并使用 cpolar 实现远程访问。希望这些工具和资源能为你带来更多的便利和灵感。无论你是初学者还是有经验的开发者,都能在这个过程中找到乐趣和成就感。

以上就是如何在本地 Ubuntu 系统使用 Docker 快速部署开源低代码开发神器 Appsmith,并安装 cpolar 内网穿透工具配置固定不变的二级子域名公网地址,实现随时随地远程访问的全过程,感谢您的观看,有任何问题欢迎留言交流。

觉得有用的话点个赞 👍🏻 呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

Read more

实战教程:Leaflet+SpringBoot 实现地图任意点位点击查看时间功能

实战教程:Leaflet+SpringBoot 实现地图任意点位点击查看时间功能

目录 前言 一、需求解析 1、地图展示 2、时区和时间的关系 3、经纬度和时区的关系 二、应用实现 1、经纬度和时区求解 2、Leaflet 实现地图点击 3、前后台交互 三、成果展示 1、亚洲地区 2、欧洲地区 3、拉美地区 4、澳洲地区 四、总结 前言         在数字化、全球化的当下,地理位置与时间信息的结合应用,已经渗透到出行导航、跨境调度、物流追踪、国际业务展示等众多场景。用户不再满足于单纯查看地图点位,更需要点击地图任意位置,即可快速获取当地真实时间,比如针对国外新闻的展示,对于我国的用户需要知晓事件发生的时间,一般有两个时间的概念,即北京时间和当地时间。北京时间是跟我们同一时区,让我们清楚的知道在我们的时间时刻中,在何时发生。而全球是个分为多个时区的模式,

By Ne0inhk
Flutter 组件 aws_lambda_dart_runtime_ns 的鸿蒙化适配实战 - 实现 OpenHarmony 分布式端高性能云端协同、冷启动指纹预检与工业级边缘计算核方案

Flutter 组件 aws_lambda_dart_runtime_ns 的鸿蒙化适配实战 - 实现 OpenHarmony 分布式端高性能云端协同、冷启动指纹预检与工业级边缘计算核方案

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 组件 aws_lambda_dart_runtime_ns 的鸿蒙化适配实战 - 实现 OpenHarmony 分布式端高性能云端协同、冷启动指纹预检与工业级边缘计算核方案 前言 在鸿蒙(OpenHarmony)生态的分布式边缘计算、强云端一体化架构或者是对冷启动耗时有极其严苛要求的 0308 批次企业级应用中。“云原生函数的执行效率与边缘执行环境的指纹预检维度”是衡量整个系统算力调度稳定性的最终质量门禁。面对包含每秒数百万次调用的 Lambda 函数集群、动态变化的 AWS 环境变量、甚至是由于跨域转发产生的 0308 批次请求转发波次。如果仅仅依靠简单的“HTTP 转发”或者是干瘪的裸进程运行。不仅会导致在处理高并发云请求时让系统如同在逻辑废墟中盲人摸象。更会因为运行时环境不兼容。令应用在关键业务触发时瞬间陷入无响应盲区。 我们需要一种“逻辑严密、运行时自适应”的算子调度艺术。 aws_lambda_dart_

By Ne0inhk

ySQL 9.6 Windows 详细安装与坑点修复教程

MySQL 9.6 Windows 详细安装与坑点修复教程 本文旨在提供一份完整的 MySQL 9.6 安装指南,并重点针对在 Windows 环境下由于“中文主机名”和“文件编码”导致的初始化失败问题提供深度解决方案。 第一部分:MySQL 9.6 标准安装步骤 1. 下载与运行安装程序 * 从 MySQL 官网下载 MySQL Installer。 * 运行安装程序,选择 Server only 或 Full 安装模式。 2. 配置服务器 * Type and Networking:选择 Development Computer,端口默认为 3306。 * Authentication Method:建议选择 Use

By Ne0inhk
SpringBoot + Vue 前后端分离项目实战:权限 + 工作流 + 报表

SpringBoot + Vue 前后端分离项目实战:权限 + 工作流 + 报表

✨道路是曲折的,前途是光明的! 📝 专注C/C++、Linux编程与人工智能领域,分享学习笔记! 🌟 感谢各位小伙伴的长期陪伴与支持,欢迎文末添加好友一起交流! 📚 目录 * 前言 * 一、项目背景与技术选型 * 二、系统架构设计 * 三、权限管理模块 * 四、工作流引擎集成 * 五、报表系统实现 * 六、核心代码实现 * 七、部署与运维 * 八、总结 前言 前后端分离架构已成为企业级应用开发的主流选择。本文将通过一个完整的企业管理系统实战项目,详细介绍如何使用 SpringBoot + Vue 技术栈,实现权限管理、工作流引擎和报表系统三大核心功能。 项目特色 * 前后端分离:RESTful API 设计,便于扩展和维护 * RBAC权限模型:细粒度的权限控制体系 * Flowable工作流:可视化流程设计与执行 * 动态报表:灵活配置的数据可视化方案 一、项目背景与技术选型 1.

By Ne0inhk