【Docker】appsmith 容器化部署

本文介绍了Appsmith,一款热门的低代码开发平台,它允许开发者通过拖放组件快速构建管理面板和应用。文章详细说明了如何通过Bitnami部署、配置环境变量、运行模式以及连接外部数据库的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Appsmith标准软件基于Bitnami appsmith 构建。当前版本为1.16.0

你可以通过轻云UC部署工具直接安装部署,也可以手动按如下文档操作,该项目已经全面开源,可以从如下环境获取
配置文件地址: https://gitee.com/qingplus/qingcloud-platform

Qinghub Studio 在线体验

什么是Appsmith?

Appsmith 成立于 2019 年,是一款开源低代码框架。这两年发展迅猛,是现在 GitHub 上最火的低代码开发平台(18k star),目前处于正式发行阶段。Appsmith主要用于构建管理面板、内部工具和仪表板等,允许拖放UI组件来构建页面,通过连接到任何 API、数据库或 GraphQL源,并使用 JavaScript 语言编写逻辑,可以在短时间内创建内部应用程序。这种开发模式仅需了解一些基本的JavaScript,在代码方面没有抽象层或术语需要学习,因而广受开发人员的好评。

快速启动

docker run -it --name appsmith bitnami/appsmith:latest

配置

环境变量

可定制的环境变量
NameDescriptionDefault Value
ALLOW_EMPTY_PASSWORD允许空密码。no
APPSMITH_USERNAMEAppsmith 默认 username.user
APPSMITH_PASSWORDAppsmith 默认 password.bitnami
APPSMITH_EMAILAppsmith 默认 email.user@example.com
APPSMITH_MODE要运行的 Appsmith 服务(backend、client或 UI)。backend
APPSMITH_ENCRYPTION_PASSWORDAppsmith数据库加密密码。bitnami123
APPSMITH_API_HOSTAppsmith API host.appsmith-api
APPSMITH_API_HOSTAppsmith API host.127.0.0.1
APPSMITH_API_PORTAppsmith API port.8080
APPSMITH_UI_HTTP_PORTAppsmith UI HTTP port.8080
APPSMITH_UI_HTTP_PORTAppsmith UI HTTP port.80
APPSMITH_UI_HTTPS_PORTAppsmith UI HTTPS port.8443
APPSMITH_UI_HTTPS_PORTAppsmith UI HTTPS port.443
APPSMITH_RTS_HOSTAppsmith RTS port.appsmith-rts
APPSMITH_RTS_HOSTAppsmith RTS port.127.0.0.1
APPSMITH_RTS_PORTAppsmith RTS port.8091
APPSMITH_DATABASE_HOSTDatabase server hosts (多个用逗号分隔).mongodb
APPSMITH_DATABASE_HOSTDatabase server hosts (多个用逗号分隔).127.0.0.1
APPSMITH_DATABASE_PORT_NUMBERDatabase server port.27017
APPSMITH_DATABASE_NAMEDatabase name.bitnami_appsmith
APPSMITH_DATABASE_USERDatabase user name.bn_appsmith
APPSMITH_DATABASE_INIT_DELAY数据库实际准备好之前等待的时间。0
APPSMITH_REDIS_HOSTRedis server host.redis
APPSMITH_REDIS_HOSTRedis server host.127.0.0.1
APPSMITH_REDIS_PORT_NUMBERRedis server port.6379
APPSMITH_STARTUP_TIMEOUTAppsmith 启动检查超时。120
APPSMITH_STARTUP_ATTEMPTSAppsmith 启动检查尝试。5
APPSMITH_DATA_TO_PERSIST从安装中保留的数据。$APPSMITH_CONF_FILE
只读环境变量
NameDescriptionValue
APPSMITH_BASE_DIRAppsmith 安装目录.${BITNAMI_ROOT_DIR}/appsmith
APPSMITH_VOLUME_DIRAppsmith 卷目录./bitnami/appsmith
APPSMITH_LOG_DIRAppsmith 日志目录.${APPSMITH_BASE_DIR}/logs
APPSMITH_LOG_FILEAppsmith 日志文件.${APPSMITH_LOG_DIR}/appsmith.log
APPSMITH_CONF_DIRAppsmith 配置目录.${APPSMITH_BASE_DIR}/conf
APPSMITH_CONF_FILEAppsmith 配置文件.${APPSMITH_CONF_DIR}/docker.env
APPSMITH_TMP_DIRAppsmith 临时目录.${APPSMITH_BASE_DIR}/tmp
APPSMITH_PID_FILEAppsmith PID 文件.${APPSMITH_TMP_DIR}/appsmith.pid
APPSMITH_RTS_LOG_FILEAppsmith RTS 日志文件.${APPSMITH_LOG_DIR}/rts.log
APPSMITH_RTS_PID_FILEAppsmith RTS PID 文件.${APPSMITH_TMP_DIR}/rts.pid
APPSMITH_DAEMON_USERAppsmith daemon system user.appsmith
APPSMITH_DAEMON_GROUPAppsmith daemon system group.appsmith

当您启动 Appsmith 映像时,您可以通过在 docker-compose 文件或命令行上传递一个或多个环境变量来调整实例的配置docker run。请注意,某些变量仅在容器首次启动时才被考虑。如果要添加新的环境变量:

  • 对于 docker-compose,加变量名称和值到docker-compose.yml:

    appsmith-api:
      ...
      environment:
        - APPSMITH_PASSWORD=my_password
      ...
    
  • 对于手动执行,–env为每个变量和值添加一个选项:

    $ docker run -d --name appsmith-api -p 80:8080 -p 443:8443 \
      --env APPSMITH_PASSWORD=my_password \
      --env APPSMITH_MODE=backend \
      --network appsmith-tier \
      --volume /path/to/appsmith-persistence:/bitnami \
      bitnami/appsmith:latest
    
运行模式

Appsmith支持三种运行模式:

  • Backend: Appsmith API。它是Appsmith的基本功能元素。
  • RTS: 对 Appsmith 创建的应用程序进行实时编辑所必需的。
  • Client: 包含Appsmith的UI。这是用户的主要入口点。

运行模式是通过APPSMITH_MODE环境变量定义的。可能的值为backend、rts和client。

将 Appsmith 容器连接到现有数据库

Appsmith 容器支持将 Appsmith 应用程序连接到外部数据库。这是为 Appsmith 使用外部数据库的示例。

$ docker run -d --name appsmith\
  -p 8080:8080 -p 8443:8443 \
  --network appsmith-network \
  --env APPSMITH_DATABASE_HOST=mongodb_host \
  --env APPSMITH_DATABASE_PORT_NUMBER=27017 \
  --env APPSMITH_DATABASE_NAME=appsmith_db \
  --env APPSMITH_DATABASE_USER=appsmith_user \
  --env APPSMITH_DATABASE_PASSWORD=appsmith_password \
  --volume appsmith_data:/bitnami/appsmith \
  bitnami/appsmith:latest

日志

docker logs wordpress

或者使用 Docker Compose:

docker-compose logs wordpress
<think>好的,我现在需要在MacOS系统上通过Docker部署AppSmith。首先,我得回想一下Docker在Mac上的安装步骤。记得之前看过引用里提到Docker Desktop的安装路径是/Applications/Docker.app,用户需要从应用中找到图标并运行,可能需要输入密码[^1]。所以第一步应该是安装Docker Desktop。 接下来,安装完成后,可能需要确认Docker是否正常运行。通常启动Docker后,会在顶部菜单栏看到鲸鱼图标,表示服务正在运行。如果遇到问题,可能需要检查系统兼容性或重新启动。 然后,部署AppSmith需要拉取它的Docker镜像。但AppSmith有没有官方的Docker镜像呢?应该有的,因为很多应用都提供Docker支持。这时候需要使用docker pull命令或者直接使用docker-compose文件。根据引用中的例子,比如Mantis项目,他们是通过克隆仓库然后运行Docker安装脚本[^3]。可能AppSmith也有类似的步骤。 查一下AppSmith的官方文档,发现他们推荐使用docker-compose.yml文件来部署。所以需要创建一个docker-compose.yml文件,内容可能包括AppSmith的镜像、端口映射、卷挂载等配置。例如: version: "3" services: appsmith: image: appsmith/appsmith-ce ports: - "80:80" - "9001:9001" volumes: - ./stacks:/appsmith-stacks restart: unless-stopped 保存这个文件后,运行docker-compose up -d应该就能启动服务了。但在此之前,需要确保已经安装了Docker Compose,不过Docker Desktop应该已经包含了这个工具。 另外,要注意端口是否被占用,比如80端口可能需要管理员权限,或者MacOS本身有其他服务占用。如果有冲突,可以改成其他端口,比如8080:80。 之后,访问http://localhost应该就能进入AppSmith的界面了。如果无法访问,可能需要检查Docker容器的日志,使用docker logs命令查看是否有错误信息。 可能遇到的问题包括权限问题,比如挂载的卷是否有写入权限。根据Mantis项目的系统要求,需要至少4GB内存和2核CPU,AppSmith可能也有类似的要求,需要确保Docker的资源分配足够。 总结步骤应该是:安装Docker Desktop -> 配置Docker -> 编写docker-compose.yml -> 启动容器 -> 访问应用。过程中需要处理可能出现的端口冲突、资源不足或权限问题。</think>### 在 MacOS 上使用 Docker 部署 AppSmith 的步骤 #### 1. 安装 Docker Desktop - **下载安装**:访问 [Docker 官网](https://www.docker.com/products/docker-desktop/)下载 MacOS 版 Docker Desktop,拖拽到 `/Applications` 文件夹完成安装[^1]。 - **启动 Docker**:双击 Docker.app 启动,输入系统密码授权运行[^1]。 - **验证安装**:在终端输入 `docker --version`,确认输出类似 `Docker version 24.0.6`。 #### 2. 配置 Docker 资源(可选) - 若 AppSmith 运行缓慢,可在 Docker Desktop 的 **Settings -> Resources** 中调整 CPU(≥2 核)和内存(≥4GB)。 #### 3. 部署 AppSmith - **创建部署目录**: ```bash mkdir appsmith && cd appsmith ``` - **编写 `docker-compose.yml`**: ```yaml version: "3.9" services: appsmith: image: appsmith/appsmith-ce:latest ports: - "80:80" # HTTP 访问端口 - "443:443" # HTTPS 端口(可选) - "9001:9001" # 后台服务端口 volumes: - ./stacks:/appsmith-stacks # 持久化数据 restart: unless-stopped ``` - **启动容器**: ```bash docker-compose up -d ``` #### 4. 访问 AppSmith - 浏览器打开 `http://localhost`,按引导完成初始化配置(如管理员邮箱、密码)。 #### 5. 管理容器 - **停止服务**:`docker-compose down` - **更新版本**:重新拉取镜像并启动: ```bash docker-compose pull && docker-compose up -d ``` #### 常见问题处理 - **端口冲突**:修改 `docker-compose.yml` 中左侧端口(如 `8080:80`)。 - **权限问题**:若挂载目录报错,运行 `chmod -R 777 ./stacks`(需谨慎)。 - **查看日志**:`docker logs <container_id>` 或 `docker-compose logs`.
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值