From 75d3ec3f854468746b8a2e3d2c6d94ee2dbe51b0 Mon Sep 17 00:00:00 2001 From: Adam Dudley Date: Tue, 10 Dec 2024 16:43:33 +0000 Subject: [PATCH 1/2] Add Langflow one click app --- public/v4/apps/langflow.yml | 134 +++++++++++++++++++++++++++++++++++ public/v4/logos/langflow.png | Bin 0 -> 2069 bytes 2 files changed, 134 insertions(+) create mode 100644 public/v4/apps/langflow.yml create mode 100644 public/v4/logos/langflow.png diff --git a/public/v4/apps/langflow.yml b/public/v4/apps/langflow.yml new file mode 100644 index 000000000..928780423 --- /dev/null +++ b/public/v4/apps/langflow.yml @@ -0,0 +1,134 @@ +captainVersion: 4 +services: + $$cap_appname: + image: langflowai/langflow:$$cap_langflow_version + volumes: + - $$cap_appname-data:/data/langflow + restart: always + environment: + LANGFLOW_SUPERUSER: $$cap_langflow_superuser + LANGFLOW_SUPERUSER_PASSWORD: $$cap_langflow_superuser_password + LANGFLOW_SECRET_KEY: $$cap_langflow_secret_key + LANGFLOW_DATABASE_URL: $$cap_langflow_database_url + LANGFLOW_SAVE_DB_IN_CONFIG_DIR: true + LANGFLOW_AUTO_LOGIN: $$cap_langflow_auto_login + LANGFLOW_BACKEND_ONLY: $$cap_langflow_backend_only + LANGFLOW_DEV: $$cap_langflow_dev + LANGFLOW_OPEN_BROWSER: $$cap_langflow_open_browser + LANGFLOW_HOST: 0.0.0.0 + LANGFLOW_PORT: $$cap_langflow_port + LANGFLOW_AUTO_SAVING: true + LANGFLOW_AUTO_SAVING_INTERVAL: 1000 + LANGFLOW_CACHE_TYPE: async + LANGFLOW_LOG_LEVEL: critical + caproverExtra: + containerHttpPort: $$cap_langflow_port +caproverOneClickApp: + variables: + - id: $$cap_langflow_version + label: LangFlow Version + defaultValue: v1.1.1 + description: Specify the LangFlow version. Check their Docker page for the latest versions https://hub.docker.com/r/langflowai/langflow/tags + validRegex: /^([^\s^\/])+$/ + - id: $$cap_langflow_superuser + label: Superuser Username + defaultValue: admin + description: Username for logging into LangFlow. You can edit this field if needed. + validRegex: /.{1,}/ + - id: $$cap_langflow_superuser_password + label: Superuser Password + defaultValue: $$cap_gen_random_hex(16) + description: Password for the superuser. Edit this if needed. + validRegex: /.{1,}/ + - id: $$cap_langflow_secret_key + label: Secret Key + defaultValue: $$cap_gen_random_hex(32) + description: Secret key used to encrypt sensitive data. + validRegex: /.{32,}/ + - id: $$cap_langflow_port + label: LangFlow Port + defaultValue: 7860 + description: Port on which the LangFlow server will run. + validRegex: /^\d+$/ + - id: $$cap_langflow_database_url + label: PostgreSQL Database URL + defaultValue: postgresql://postgres:password@srv-captain--postgresdb:5432/langflow + description: > + The connection string for your PostgreSQL database. If you don’t have PostgreSQL installed, + go to the CapRover One-Click App Store, search for PostgreSQL, and install it (tested with vesion 17.0-bookworm) + During Caprover setup, change the database name from `postgres` to `langflow`. + Remember to use the username and password you specify during setup and update this field accordingly with the details. + validRegex: /^postgresql:\/\/[^:]+:[^@]+@[^:]+:\d+\/[^\/]+$/ + - id: $$cap_langflow_auto_login + label: Auto Login + defaultValue: false + description: Disable automatic login and require the login form to log into the LangFlow UI. + validRegex: /^(true|false)$/ + - id: $$cap_langflow_backend_only + label: Backend Only + defaultValue: false + description: Run only the LangFlow backend server, without the frontend. + validRegex: /^(true|false)$/ + - id: $$cap_langflow_dev + label: Development Mode + defaultValue: false + description: Run LangFlow in development mode. + validRegex: /^(true|false)$/ + - id: $$cap_langflow_open_browser + label: Open Browser + defaultValue: false + description: Open the system web browser on startup. + validRegex: /^(true|false)$/ + - id: $$cap_langflow_cache_type + label: Cache Type (Optional) + defaultValue: async + description: Cache type for LangFlow. Options async (default), redis, memory, disk. + validRegex: /^(async|redis|memory|disk)?$/ + - id: $$cap_langflow_redis_host + label: Redis Host (Optional) + defaultValue: "" + description: Required if cache type is set to redis. + validRegex: /^.*$/ + - id: $$cap_langflow_redis_port + label: Redis Port (Optional) + defaultValue: 6379 + description: Required if cache type is set to redis. + validRegex: /^\d*$/ + - id: $$cap_langflow_redis_db + label: Redis Database Index (Optional) + defaultValue: 0 + description: Redis database index. Required if cache type is set to redis. + validRegex: /^\d*$/ + - id: $$cap_langflow_redis_cache_expire + label: Redis Cache Expiry (Optional) + defaultValue: 3600 + description: Cache expiry time in seconds for Redis. + validRegex: /^\d*$/ + - id: $$cap_langflow_prometheus_enabled + label: Enable Prometheus Metrics (Optional) + defaultValue: false + description: Enable Prometheus metrics. + validRegex: /^(true|false)?$/ + - id: $$cap_langflow_prometheus_port + label: Prometheus Port (Optional) + defaultValue: 9090 + description: Port for Prometheus metrics. + validRegex: /^\d*$/ + instructions: + start: > + LangFlow is a UI for creating workflows with LLMs. This One-Click App requires a superuser + username and password for login, ensuring security. The secret key is auto-generated for securing + sensitive data. Ensure you have PostgreSQL installed and configured. If not, you can install PostgreSQL + using the CapRover One-Click App Store and configure it by setting the database name to `langflow` and + using your own username and password. + + Remember to update the PostgreSQL connection string to match your setup. + end: > + LangFlow is deployed and available at `$$cap_appname`. It might take a few + minutes for the service to initialize. + + For further documentation, visit: https://docs.langflow.org + displayName: LangFlow + isOfficial: false + description: Visual playground for creating LLM applications + documentation: https://docs.langflow.org diff --git a/public/v4/logos/langflow.png b/public/v4/logos/langflow.png new file mode 100644 index 0000000000000000000000000000000000000000..e40a2c29d4533d329ff5cb9dd1b24682a729c3cc GIT binary patch literal 2069 zcmeHIX;%^m8wG?!+)^|$8ByCzNpYFUtzJ@-G0n&{O$BtET(i`2nIsXHv{OR#YK2Sc zl)2>AWSZklxQtsUAl76iiVGUKK{yGfF!ufZ3GZ{xbMJFM-E;2!@Z7}v; z+v`UUzirO^wotWgToW=B003wh@8f@BTmFCkX97SV5Cj6Lsi}d%UPg+etnG+;28 zmX?;bwziIrj;^k*o}Qk*zCIidM<5VJMn=ZQ#z-X6#KgqZ)YQz(%-r03@7}%p_U+rh zfB&IFhb%2Et*orjXta%u4F-d;wY9agv$MCicW`iUbaZrba&mTdc5!iWb#*;@^e7gK zb#rrbcX#*j@bL2T^7i)j_4UQ$@c{t==gyrA3=9kk3JM7cArJ^eB9TNQg@uJhL_|bJ zMn*+NMMp=+#KgqL#>U0P#mC1dBqSszCZ?pMq^72(r>B$2B zePd%|b8~Y`OG|5OYg=1edwV;J#p>$n>gnm}?d|RF?;jW#V6)jnLqi-6hsWcMjEwO4 z{L#_Tw{PFRd-rZ^Y;1gdd}3lkAP`JWPEJit35CL$nVH$yS&>LIKR>^)upkzT7Z(?o zmzP&oR#sP6B@&5LDwWA(Yiny?zI>6(VnyZP;j{a)U6*&YxQr zg9czxr#ui=yk!pYm%lzt1&wgy6|dD2L3Ly*=o2{+wEGnXh$IyP?p?NOUK=pFRqA8% z+8w~fLAvRc2v_57>xwQMxSRfg_>6HL8?PMX5RSh3jUIsgZxizEA1YUHi=wIjqx3uk zpRw`&yAMO>^{UuW23Q4YUfB4T^gWm-RVDATE%(Y)FAuGtykXrAX5N@kF%8Im)SE{} z6N^5|b3hEbAxx>!K#GMiu;|o`Yx)eVej}|yagcValFH}f+}ZOaImxlI->Oh`(s&^{%E=p_2{=p^loviE1%wLhGW-{+z; zB@}cwv6d5Mh<&J9hdd^G0&`T!*0$xR0MnFWPfnEH?!>X*-*lwGjy>zV>w;2>;C|wG zw060FSjvt@9(y;M^etwh9X0!<^XXs3^4Hhws8=4?(LMb>qjYD?B?&pt*l=?}s)#{FBhZ`O6b=(^EQ2}aJ@BwR419J|?>oAJ_|!RCEMX(}{JX&xpUqL%vF zPkC;`N30W&@6XXTZg2H6B-)xttZLvnkW0@-f@whr!KnJ5rc7Ow6^3-#y}dve#oE(& zok5U^EsMBqlIhW{b>x3`23l+f%?@{Uz4)+i7 z{E4aVkrVq+msX2qTuMEg=?pRj@!_8L!VjQwO8AQ>XK~@DnhxN6rW!&r?@R}p zOr Date: Tue, 10 Dec 2024 16:48:14 +0000 Subject: [PATCH 2/2] run prettier --- public/v4/apps/langflow.yml | 258 ++++++++++++++++++------------------ 1 file changed, 129 insertions(+), 129 deletions(-) diff --git a/public/v4/apps/langflow.yml b/public/v4/apps/langflow.yml index 928780423..541fb5063 100644 --- a/public/v4/apps/langflow.yml +++ b/public/v4/apps/langflow.yml @@ -1,134 +1,134 @@ captainVersion: 4 services: - $$cap_appname: - image: langflowai/langflow:$$cap_langflow_version - volumes: - - $$cap_appname-data:/data/langflow - restart: always - environment: - LANGFLOW_SUPERUSER: $$cap_langflow_superuser - LANGFLOW_SUPERUSER_PASSWORD: $$cap_langflow_superuser_password - LANGFLOW_SECRET_KEY: $$cap_langflow_secret_key - LANGFLOW_DATABASE_URL: $$cap_langflow_database_url - LANGFLOW_SAVE_DB_IN_CONFIG_DIR: true - LANGFLOW_AUTO_LOGIN: $$cap_langflow_auto_login - LANGFLOW_BACKEND_ONLY: $$cap_langflow_backend_only - LANGFLOW_DEV: $$cap_langflow_dev - LANGFLOW_OPEN_BROWSER: $$cap_langflow_open_browser - LANGFLOW_HOST: 0.0.0.0 - LANGFLOW_PORT: $$cap_langflow_port - LANGFLOW_AUTO_SAVING: true - LANGFLOW_AUTO_SAVING_INTERVAL: 1000 - LANGFLOW_CACHE_TYPE: async - LANGFLOW_LOG_LEVEL: critical - caproverExtra: - containerHttpPort: $$cap_langflow_port + $$cap_appname: + image: langflowai/langflow:$$cap_langflow_version + volumes: + - $$cap_appname-data:/data/langflow + restart: always + environment: + LANGFLOW_SUPERUSER: $$cap_langflow_superuser + LANGFLOW_SUPERUSER_PASSWORD: $$cap_langflow_superuser_password + LANGFLOW_SECRET_KEY: $$cap_langflow_secret_key + LANGFLOW_DATABASE_URL: $$cap_langflow_database_url + LANGFLOW_SAVE_DB_IN_CONFIG_DIR: true + LANGFLOW_AUTO_LOGIN: $$cap_langflow_auto_login + LANGFLOW_BACKEND_ONLY: $$cap_langflow_backend_only + LANGFLOW_DEV: $$cap_langflow_dev + LANGFLOW_OPEN_BROWSER: $$cap_langflow_open_browser + LANGFLOW_HOST: 0.0.0.0 + LANGFLOW_PORT: $$cap_langflow_port + LANGFLOW_AUTO_SAVING: true + LANGFLOW_AUTO_SAVING_INTERVAL: 1000 + LANGFLOW_CACHE_TYPE: async + LANGFLOW_LOG_LEVEL: critical + caproverExtra: + containerHttpPort: $$cap_langflow_port caproverOneClickApp: - variables: - - id: $$cap_langflow_version - label: LangFlow Version - defaultValue: v1.1.1 - description: Specify the LangFlow version. Check their Docker page for the latest versions https://hub.docker.com/r/langflowai/langflow/tags - validRegex: /^([^\s^\/])+$/ - - id: $$cap_langflow_superuser - label: Superuser Username - defaultValue: admin - description: Username for logging into LangFlow. You can edit this field if needed. - validRegex: /.{1,}/ - - id: $$cap_langflow_superuser_password - label: Superuser Password - defaultValue: $$cap_gen_random_hex(16) - description: Password for the superuser. Edit this if needed. - validRegex: /.{1,}/ - - id: $$cap_langflow_secret_key - label: Secret Key - defaultValue: $$cap_gen_random_hex(32) - description: Secret key used to encrypt sensitive data. - validRegex: /.{32,}/ - - id: $$cap_langflow_port - label: LangFlow Port - defaultValue: 7860 - description: Port on which the LangFlow server will run. - validRegex: /^\d+$/ - - id: $$cap_langflow_database_url - label: PostgreSQL Database URL - defaultValue: postgresql://postgres:password@srv-captain--postgresdb:5432/langflow - description: > - The connection string for your PostgreSQL database. If you don’t have PostgreSQL installed, - go to the CapRover One-Click App Store, search for PostgreSQL, and install it (tested with vesion 17.0-bookworm) - During Caprover setup, change the database name from `postgres` to `langflow`. - Remember to use the username and password you specify during setup and update this field accordingly with the details. - validRegex: /^postgresql:\/\/[^:]+:[^@]+@[^:]+:\d+\/[^\/]+$/ - - id: $$cap_langflow_auto_login - label: Auto Login - defaultValue: false - description: Disable automatic login and require the login form to log into the LangFlow UI. - validRegex: /^(true|false)$/ - - id: $$cap_langflow_backend_only - label: Backend Only - defaultValue: false - description: Run only the LangFlow backend server, without the frontend. - validRegex: /^(true|false)$/ - - id: $$cap_langflow_dev - label: Development Mode - defaultValue: false - description: Run LangFlow in development mode. - validRegex: /^(true|false)$/ - - id: $$cap_langflow_open_browser - label: Open Browser - defaultValue: false - description: Open the system web browser on startup. - validRegex: /^(true|false)$/ - - id: $$cap_langflow_cache_type - label: Cache Type (Optional) - defaultValue: async - description: Cache type for LangFlow. Options async (default), redis, memory, disk. - validRegex: /^(async|redis|memory|disk)?$/ - - id: $$cap_langflow_redis_host - label: Redis Host (Optional) - defaultValue: "" - description: Required if cache type is set to redis. - validRegex: /^.*$/ - - id: $$cap_langflow_redis_port - label: Redis Port (Optional) - defaultValue: 6379 - description: Required if cache type is set to redis. - validRegex: /^\d*$/ - - id: $$cap_langflow_redis_db - label: Redis Database Index (Optional) - defaultValue: 0 - description: Redis database index. Required if cache type is set to redis. - validRegex: /^\d*$/ - - id: $$cap_langflow_redis_cache_expire - label: Redis Cache Expiry (Optional) - defaultValue: 3600 - description: Cache expiry time in seconds for Redis. - validRegex: /^\d*$/ - - id: $$cap_langflow_prometheus_enabled - label: Enable Prometheus Metrics (Optional) - defaultValue: false - description: Enable Prometheus metrics. - validRegex: /^(true|false)?$/ - - id: $$cap_langflow_prometheus_port - label: Prometheus Port (Optional) - defaultValue: 9090 - description: Port for Prometheus metrics. - validRegex: /^\d*$/ - instructions: - start: > - LangFlow is a UI for creating workflows with LLMs. This One-Click App requires a superuser - username and password for login, ensuring security. The secret key is auto-generated for securing - sensitive data. Ensure you have PostgreSQL installed and configured. If not, you can install PostgreSQL - using the CapRover One-Click App Store and configure it by setting the database name to `langflow` and - using your own username and password. + variables: + - id: $$cap_langflow_version + label: LangFlow Version + defaultValue: v1.1.1 + description: Specify the LangFlow version. Check their Docker page for the latest versions https://hub.docker.com/r/langflowai/langflow/tags + validRegex: /^([^\s^\/])+$/ + - id: $$cap_langflow_superuser + label: Superuser Username + defaultValue: admin + description: Username for logging into LangFlow. You can edit this field if needed. + validRegex: /.{1,}/ + - id: $$cap_langflow_superuser_password + label: Superuser Password + defaultValue: $$cap_gen_random_hex(16) + description: Password for the superuser. Edit this if needed. + validRegex: /.{1,}/ + - id: $$cap_langflow_secret_key + label: Secret Key + defaultValue: $$cap_gen_random_hex(32) + description: Secret key used to encrypt sensitive data. + validRegex: /.{32,}/ + - id: $$cap_langflow_port + label: LangFlow Port + defaultValue: 7860 + description: Port on which the LangFlow server will run. + validRegex: /^\d+$/ + - id: $$cap_langflow_database_url + label: PostgreSQL Database URL + defaultValue: postgresql://postgres:password@srv-captain--postgresdb:5432/langflow + description: > + The connection string for your PostgreSQL database. If you don’t have PostgreSQL installed, + go to the CapRover One-Click App Store, search for PostgreSQL, and install it (tested with vesion 17.0-bookworm) + During Caprover setup, change the database name from `postgres` to `langflow`. + Remember to use the username and password you specify during setup and update this field accordingly with the details. + validRegex: /^postgresql:\/\/[^:]+:[^@]+@[^:]+:\d+\/[^\/]+$/ + - id: $$cap_langflow_auto_login + label: Auto Login + defaultValue: false + description: Disable automatic login and require the login form to log into the LangFlow UI. + validRegex: /^(true|false)$/ + - id: $$cap_langflow_backend_only + label: Backend Only + defaultValue: false + description: Run only the LangFlow backend server, without the frontend. + validRegex: /^(true|false)$/ + - id: $$cap_langflow_dev + label: Development Mode + defaultValue: false + description: Run LangFlow in development mode. + validRegex: /^(true|false)$/ + - id: $$cap_langflow_open_browser + label: Open Browser + defaultValue: false + description: Open the system web browser on startup. + validRegex: /^(true|false)$/ + - id: $$cap_langflow_cache_type + label: Cache Type (Optional) + defaultValue: async + description: Cache type for LangFlow. Options async (default), redis, memory, disk. + validRegex: /^(async|redis|memory|disk)?$/ + - id: $$cap_langflow_redis_host + label: Redis Host (Optional) + defaultValue: '' + description: Required if cache type is set to redis. + validRegex: /^.*$/ + - id: $$cap_langflow_redis_port + label: Redis Port (Optional) + defaultValue: 6379 + description: Required if cache type is set to redis. + validRegex: /^\d*$/ + - id: $$cap_langflow_redis_db + label: Redis Database Index (Optional) + defaultValue: 0 + description: Redis database index. Required if cache type is set to redis. + validRegex: /^\d*$/ + - id: $$cap_langflow_redis_cache_expire + label: Redis Cache Expiry (Optional) + defaultValue: 3600 + description: Cache expiry time in seconds for Redis. + validRegex: /^\d*$/ + - id: $$cap_langflow_prometheus_enabled + label: Enable Prometheus Metrics (Optional) + defaultValue: false + description: Enable Prometheus metrics. + validRegex: /^(true|false)?$/ + - id: $$cap_langflow_prometheus_port + label: Prometheus Port (Optional) + defaultValue: 9090 + description: Port for Prometheus metrics. + validRegex: /^\d*$/ + instructions: + start: > + LangFlow is a UI for creating workflows with LLMs. This One-Click App requires a superuser + username and password for login, ensuring security. The secret key is auto-generated for securing + sensitive data. Ensure you have PostgreSQL installed and configured. If not, you can install PostgreSQL + using the CapRover One-Click App Store and configure it by setting the database name to `langflow` and + using your own username and password. - Remember to update the PostgreSQL connection string to match your setup. - end: > - LangFlow is deployed and available at `$$cap_appname`. It might take a few - minutes for the service to initialize. + Remember to update the PostgreSQL connection string to match your setup. + end: > + LangFlow is deployed and available at `$$cap_appname`. It might take a few + minutes for the service to initialize. - For further documentation, visit: https://docs.langflow.org - displayName: LangFlow - isOfficial: false - description: Visual playground for creating LLM applications - documentation: https://docs.langflow.org + For further documentation, visit: https://docs.langflow.org + displayName: LangFlow + isOfficial: false + description: Visual playground for creating LLM applications + documentation: https://docs.langflow.org