-
Notifications
You must be signed in to change notification settings - Fork 554
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added LangflowAI #1183
base: master
Are you sure you want to change the base?
Added LangflowAI #1183
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This doesn't really need to be a variable, let's fix it to 7860. Since it's not mapped and it's internal to the container, it's totally fine to keep it as a fixed value. |
||
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 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Let's include postgres as a service in this template. One click apps are meant to be truly one click as we should try to keep all the dependencies in the same template. |
||
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 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since could be hardcoded to false. Since it's run in a container, it won't launch the browser anyways.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes good point. I'll update that in a little while