Ubuntu(22.04)本地部署Appsmith

Ubuntu(22.04)安装Appsmith

简要介绍

Appsmith 是一个开源的低代码开发平台,旨在帮助开发者和非开发者快速构建定制化的内部应用程序和管理工具。通过直观的拖拽界面和丰富的预配置组件,Appsmith 让用户无需编写大量代码即可创建功能强大的数据驱动型应用。

主要特点:

  1. 拖放式设计:Appsmith 提供了丰富的 UI 组件(如表单、按钮、图表等),用户可以通过简单的拖拽操作快速构建应用界面。
  2. 数据集成:支持与各种数据库、REST APIs、GraphQL、第三方服务(如 AWS、Google Sheets、Slack 等)集成,方便将不同数据源汇聚到一个应用中。
  3. 自定义逻辑:虽然是低代码平台,Appsmith 允许用户使用 JavaScript 自定义逻辑、处理业务需求,保持了极高的灵活性。
  4. 权限和安全:Appsmith 支持用户角色管理、权限控制等安全特性,确保内部工具的安全性。
  5. 开源和可扩展:作为开源项目,用户可以自行部署,适应不同的企业需求,同时还能自定义组件或集成到现有系统中。

典型用例:

  • 内部仪表板
  • 数据管理系统
  • 工单跟踪工具
  • CRM 系统
  • 项目管理工具

部署模式:

Appsmith 可以通过 Docker、Kubernetes、AWS 等进行本地或云端部署,支持自定义配置并能根据企业需求扩展。

总的来说,Appsmith 通过降低开发复杂度,加快了内部应用的开发和迭代,是很多公司快速构建业务工具的首选平台。

部署环境

  • docker v27.3.1
  • docker-compose v2.20.0
  • Appsmith v1.6.5

部署 Appsmith

以下linux命令中是否带sudo取决于使用当前用户的权限,请自行决定是否需要添加

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

    sudo mkdir -p ~/appsmith
    cd ~/appsmith
    
  2. 下载 Appsmith 的 Docker Compose 文件: 可以直接从 Appsmith 的 GitHub 仓库中获取官方的 docker-compose.yml 文件:

    wget https://github.com/appsmithorg/appsmith/blob/release/deploy/docker/docker-compose.yml
    

    这是github仓库里文件的内容

    在这里插入图片描述

  3. 编辑配置文件(可选): 如果你需要自定义配置,比如修改端口映射或者其他环境变量,可以编辑 docker-compose.yml 文件。

    创建该文件

    # 当docker-compose.yml存在时,nano会打开它,如果不存在,会在你退出保存时,创建该文件
    nano docker-compose.yml
    

    然后将下面的内容,粘贴到文件内,然后使用快捷键 Ctrl+O 保存修改,此时会问你是否将内容写入文件,直接回车即可,然后按 Ctrl+x退出

    version: "3" # 表示使用 Docker Compose 文件格式的版本。版本 3 是目前广泛使用的版本services: # 表示该 Compose 文件定义了一些需要启动的服务appsmith: # appsmith 服务定义image: index.docker.io/appsmith/appsmith-ce:release # 指定 Docker 镜像的来源。index.docker.io/appsmith/appsmith-ee 表示使用 Appsmith 社区版的release镜像container_name: appsmith # 指定 Docker 容器的名称为 appsmithports:- "8080:80" # 将主机的 8080 端口映射到容器的 80 端口environment:APPSMITH_ENCRYPTION_PASSWORD: abcd # 定义了 Appsmith 应用中使用的加密密码。Appsmith 需要对敏感数据进行加密,比如存储在数据库中的 API 密钥、OAuth 凭据等,这个密码用于加密这些敏感信息APPSMITH_ENCRYPTION_SALT: abcd # 定义了用于加密操作的盐值。加密的盐值用于增强加密的安全性,防止类似数据生成相同的加密结果。与加密密码配合使用,可以进一步提高数据加密的强度。volumes: # 定义了主机和容器之间共享数据的路径- ./stacks:/appsmith-stacks # 将主机当前目录下的 stacks 文件夹映射到容器中的 /appsmith-stacks 目录。restart: unless-stopped # 定义容器的重启策略。unless-stopped 表示除非手动停止容器,否则如果容器意外停止,Docker 会自动重启它
    
  4. 启动 Appsmith:docker-compose.yml 所在的目录中,运行以下命令来启动 Appsmith:

    docker-compose up -d
    

    该命令会下载并启动所有所需的容器,包括 Appsmith、MongoDB 和 Redis 等。

    注意:该指令会去docker仓库拉去镜像,如果是国内的服务器或者环境,很可能会失败,所以需要配置下镜像源。阿里官方文档
    在这里插入图片描述

    更换镜像源的过程太具体的不写了,搜索下一堆。

  5. 访问 Appsmith: 一旦容器启动成功,你可以通过浏览器访问 Appsmith。如果你的服务器的 IP 地址是 192.168.0.100,那么你可以通过以下链接访问:

    http://192.168.0.100:8080
    
  6. 检查运行状态: 你可以通过以下命令查看容器的状态:

    docker-compose ps
    
  7. 日志查看(可选): 如果你遇到任何问题,可以查看日志:

    docker-compose logs -f
    

后续操作

docker-compose指令都需要切换到有docker-compose.yml 文件的目录下才能使用

  • 停止服务:

    docker-compose down
    
  • **重启服务 **

    docker-compose up -d
    
  • 更新 Appsmith: 如果想更新到最新版本,可以停止服务后拉取最新的 Docker 镜像并重启:

    docker-compose pull
    docker-compose up -d
    

我映射到了8991端口,可以快乐玩耍了。

在这里插入图片描述

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

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

相关文章

Postman使用-基础篇

前言 本教程将结合业界广为推崇和使用的RestAPI设计典范Github API,详细介绍Postman接口测试工具的使用方法和实战技巧。 在开始这个教程之前,先聊一下为什么接口测试在现软件行业如此重要? 为什么我们要学习Postman? 现代软件…

数据轻松上云——Mbox边缘计算网关

随着工业4.0时代的到来,工厂数字化转型已成为提升生产效率、优化资源配置、增强企业竞争力的关键。我们凭借其先进的边缘计算网关与云平台技术,为工厂提供了高效、稳定的数据采集与上云解决方案。本文将为您介绍Mbox边缘计算网关如何配合明达云平台&…

React 基础阶段学习计划

React 基础阶段学习计划 目标 能够创建和使用React组件。理解并使用State和Props。掌握事件处理和表单处理。 学习内容 环境搭建 安装Node.js和npm 访问 Node.js官网 下载并安装最新版本的Node.js。打开终端或命令行工具,输入 node -v 和 npm -v 检查是否安装…

【Python】爬虫

Python爬虫是一种自动化下载网页内容的程序。以下是一个简单的Python爬虫示例,使用requests库获取网页,并用BeautifulSoup解析网页。 首先,你需要安装必要的库: pip install requests pip install beautifulsoup4 以下是一个简…

基于SpringBoot微信小程序的书院预约系统【附源码】

基于SpringBoot微信小程序的书院预约系统 效果如下: 微信小程序首页界面 用户登录界面 书院信息界面 会议室界面 管理员登录界面 管理员主界面 用户界面 书院信息界面 会议室界面 会议室预约界面 研究背景 随着社会的快速发展,计算机技术的影响是全面…

SpringBoot 单元测试 - 登录认证在 Spring Boot 上的标准单元测试写法。

👉 请投票支持这款 全新设计的脚手架 ,让 Java 再次伟大! 不要使用 SpringBootTest 使用 SpringBootTest 进行单元测试会启动整个 Spring Boot 容器,并引入整个项目的 development&test 依赖。缺点是速度慢、体积大、测试目标…

HarmonyOS Next应用开发——图像PixelMap变换

【高心星出品】 图像变换 图片处理指对PixelMap进行相关的操作,如获取图片信息、裁剪、缩放、偏移、旋转、翻转、设置透明度、读写像素数据等。图片处理主要包括图像变换、位图操作,本文介绍图像变换。 图形裁剪 // 裁剪图片 x,y为裁剪的起…

【element-tiptap】如何把分隔线改造成下拉框的形式?

当前的分隔线只有细横线这一种形式 但是咱们可以看一下wps中的分隔线,花里胡哨的 这些在wps里都需要使用快捷键打出来,真没找到菜单在哪里 那么这篇文章咱们就来看一下如何改造分隔线组件,改造成下拉框的形式,并且把咱们想要的分…

如何调试浏览器中的内存泄漏?

聚沙成塔每天进步一点点 本文回顾 ⭐ 专栏简介⭐ 如何调试浏览器中的内存泄漏?1. 什么是内存泄漏?2. 调试内存泄漏的工具3. 如何使用 Memory 面板进行内存调试3.1 获取内存快照(Heap Snapshot)获取内存快照的步骤:快照…

【ShuQiHere】深入解析数字电路中的锁存器与触发器

深入解析数字电路中的锁存器与触发器 🤖🔌 在数字电路设计中,**锁存器(Latch)和触发器(Flip-Flop)**是实现时序逻辑的基本元件。它们能够存储状态,是构建复杂数字系统的关键。本文将…

Dockerfile 中关于 RUN 的奇怪写法 -- 以 | 开头

在一个大型的官方镜像中 &#xff0c;我通过 docker history --no-trunc <image_id> 看到&#xff0c;该镜像某一步的构建过程是&#xff1a; RUN |3 CUDA_VERSION12.4.1.003 CUDA_DRIVER_VERSION550.54.15 JETPACK_HOST_MOUNTS /bin/sh -c if [ -n "${JETPACK_HOS…

如何自定义一个自己的 Spring Boot Starter 组件(从入门到实践)

文章目录 一、什么是 Spring Boot Starter&#xff1f;二、为什么要自定义 Starter&#xff1f;三、自定义 Starter 的基本步骤1. 创建 Maven 项目2. 配置 pom.xml3. 创建自动配置类4. 创建业务逻辑类5. 创建 spring.factories 四、使用自定义 Starter五、总结推荐阅读文章 在使…

Android广播限制Background execution not allowed: receiving Intent { act=

“Background execution not allowed: receiving Intent”这个错误信息通常出现在Android应用开发中&#xff0c;特别是在处理后台任务或接收广播&#xff08;Broadcast&#xff09;时。这个错误表明应用试图在后台执行某些操作&#xff0c;但Android系统出于电池优化和用户体验…

【二刷hot100】day 4

终于有时间刷刷力扣&#xff0c;求实习中。。。。 目录 1.最大子数组和 2.合并区间 3.轮转数组 4.除自身以外数组的乘积 1.最大子数组和 class Solution {public int maxSubArray(int[] nums) {//就是说可以转换为计算左边的最大值&#xff0c;加上中间的值&#xff0c…

1.6,unity动画Animator屏蔽某个部位,动画组合

动画组合 一边跑一边攻击 using System.Collections; using System.Collections.Generic; using UnityEngine;public class One : MonoBehaviour {private Animator anim;// Start is called before the first frame updatevoid Start(){anim GetComponent<Animator>();…

Scala中的reduce

作用&#xff1a;reduce是一种集合操作&#xff0c;用于对集合中的元素进行聚合操作&#xff0c;返回一个单一的结果。它通过指定的二元操作&#xff08;即取两个元素进行操作&#xff09;对集合中所有的元素进行递归处理&#xff0c;并最终将其合并为一个值。 语法&#xff1…

PPT自动化:Python如何修改PPT文字和样式!

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 文章内容 📒📝 使用 Python 修改 PPT 文本内容📝 遍历所有幻灯片和文本框📝 设置和修改文本样式📝 复制和保留文本样式⚓️ 相关链接 ⚓️📖 介绍 📖 在日常工作中,PPT 的文字内容和样式修改似乎是一项永无止境的…

每日算法一练:剑指offer——数组篇(3)

1.报数 实现一个十进制数字报数程序&#xff0c;请按照数字从小到大的顺序返回一个整数数列&#xff0c;该数列从数字 1 开始&#xff0c;到最大的正整数 cnt 位数字结束。 示例 1: 输入&#xff1a;cnt 2 输出&#xff1a;[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,1…

平衡二叉树最全代码

#include<stdio.h> #include<stdlib.h>typedef struct Node {int val;int height;struct Node *left;struct Node *right; }Node;//创建新结点 Node* newNode(int val) {Node *node (Node*)malloc(sizeof(Node));node->val val;node->height 1;node->l…

渗透测试实战—教育攻防演练中突破网络隔离

免责声明&#xff1a;文章来源于真实渗透测试&#xff0c;已获得授权&#xff0c;且关键信息已经打码处理&#xff0c;请勿利用文章内的相关技术从事非法测试&#xff0c;由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失&#xff0c;均由使用者本…