Commit Graph

87 Commits

Author SHA1 Message Date
Yury Kossakovsky
107f18296a feat: add appsmith low-code platform for internal tools
adds appsmith as an optional service with caddy reverse proxy,
auto-generated encryption secrets, wizard selection, welcome page
integration, update preview support, and final report output.
bumps version to 1.3.0.
2026-02-27 18:39:45 -07:00
Yury Kossakovsky
4a6f1c0e01 feat(postiz): add temporal server for workflow orchestration
add temporal and temporal-ui services to the postiz profile for
workflow orchestration. includes caddy reverse proxy with basic
auth, secret generation, and welcome page integration.
2026-01-16 18:42:54 -07:00
Yury Kossakovsky
d1da940ffe fix(env): use single quotes for values containing $ to prevent expansion 2025-12-30 17:26:28 -07:00
Yury Kossakovsky
492e9ea194 style(env): use double quotes consistently in env file output 2025-12-30 17:19:05 -07:00
Yury Kossakovsky
192d457c87 fix(gost): add nocodb to no_proxy bypass list
n8n couldn't connect to nocodb via internal hostname when gost proxy
is enabled. also ensures gost_no_proxy is updated from template on
system updates.
2025-12-30 16:21:26 -07:00
Yury Kossakovsky
6fbcc8768a fix: add database name variables for backward compatibility
existing installations use 'postgres' database to preserve data
new installations use service-specific databases (postiz, waha, lightrag)
2025-12-25 19:22:44 -07:00
Yury Kossakovsky
8b08442815 refactor: extract telemetry and database modules
- create scripts/telemetry.sh with all telemetry functions
- rename init_databases.sh to databases.sh and convert to library
- remove code duplication in init_all_databases()
- update all scripts to source new modules
- update documentation references
2025-12-25 18:22:05 -07:00
Yury Kossakovsky
108daca1fe feat: add nocodb as optional service
add nocodb (open source airtable alternative) with:
- docker service definition with postgresql backend
- caddy reverse proxy configuration
- jwt secret auto-generation
- wizard integration for service selection
- welcome page dashboard entry
- readme and changelog updates
2025-12-25 16:50:28 -07:00
Yury Kossakovsky
2f6516880b fix: preserve installation id during updates
the telemetry id was being lost during updates because:
1. apply_update.sh didn't export INSTALLATION_ID
2. 03_generate_secrets.sh only checked env var, not existing .env

now checks both exported var and generated_values from existing .env,
and generates new id for pre-telemetry installations upgrading
2025-12-25 16:49:43 -07:00
Yury Kossakovsky
ffca8693f7 feat: add anonymous telemetry via scarf
collect basic usage statistics (install/update events, version, os, selected
services) to help improve the project. users can opt-out by setting
SCARF_ANALYTICS=false or DO_NOT_TRACK=1.
2025-12-25 16:32:32 -07:00
Yury Kossakovsky
f1285f864e chore: remove flowise built-in auth credentials
flowise no longer uses FLOWISE_USERNAME/PASSWORD for authentication
2025-12-21 18:32:51 -07:00
Yury Kossakovsky
3bfe860a5a fix(gost): use fixed username and proper healthcheck
- change gost username from email to fixed 'gost' to avoid @ symbol
  breaking proxy url parsing
- fix healthcheck to make real proxy request to httpbin.org instead of
  invalid spider request to proxy port
- increase healthcheck interval to 60s and timeout to 15s
2025-12-21 14:55:03 -07:00
Yury Kossakovsky
ed046b3c68 feat: add gost proxy service for outbound ai traffic routing
- add gost http/https proxy service with authentication
- create x-proxy-env anchor for shared proxy configuration
- apply proxy settings to ai services (n8n, flowise, langfuse, etc.)
- add gost to wizard, welcome page, and final report
- generate gost credentials and proxy url in secrets script
- use wget healthcheck compatible with alpine-based gost image
2025-12-20 15:04:12 -07:00
Yury Kossakovsky
78e2306a5a feat(supabase): add PG_META_CRYPTO_KEY secret generation 2025-12-14 13:25:04 -07:00
Yury Kossakovsky
f84a15e305 chore: make scripts executable 2025-12-12 18:39:02 -07:00
Yury Kossakovsky
04e70cee2d refactor(utils): improve whiptail dialogs and logging utilities
- add adaptive terminal sizing for all whiptail dialogs (wt_get_size)
- add new wrapper functions: wt_checklist, wt_radiolist, wt_menu
- add safe parser wt_parse_choices to replace eval
- improve NEWT_COLORS theme with better contrast (brightgreen/brightcyan)
- add new logging functions: log_header, log_subheader, log_divider, log_box
- add spinner animation utilities for progress indication
- expand color palette with bright variants and text styles
- update 04_wizard.sh to use new whiptail wrappers
2025-12-12 13:43:20 -07:00
Yury Kossakovsky
e0018f2b2d refactor: consolidate shared utilities and add script documentation
- move common functions to utils.sh: init_paths, read_env_var, write_env_var,
  is_profile_active, load_env, gen_password, gen_hex, gen_base64, generate_bcrypt_hash
- add documentation headers to all installation scripts
- replace duplicate code with shared utility calls
- consolidate bcrypt hash generation loop in 03_generate_secrets.sh
- add DEBIAN_FRONTEND save/restore helpers for whiptail scripts
- standardize path initialization across all scripts
2025-12-12 09:58:12 -07:00
Yury Kossakovsky
366865ad4c feat: add welcome page dashboard for post-install credentials
replace terminal-based final report with web-based welcome page that
displays service credentials, hostnames, and quick start guide.

- add welcome/index.html with tailwind css and dark mode support
- add welcome/app.js with service metadata and password toggle/copy
- add scripts/generate_welcome_page.sh to generate data.json from env
- simplify 07_final_report.sh to show welcome page url and make commands
- add welcome page basic auth credentials to caddy and secret generation
- update add-new-service documentation with new welcome page steps
2025-12-11 17:09:42 -07:00
Yury Kossakovsky
35ca31d1af fix: address n8n v2.0 migration review issues
- fix quote parsing in N8N_WORKER_COUNT from .env
- remove unused N8N_RUNNER_COUNT references
- parameterize n8n version for both n8n and runner images
- add healthchecks to n8n main and worker services
2025-12-11 11:39:01 -07:00
Yury Kossakovsky
638c3d17a6 feat: add n8n v2.0 external task runner support
upgrade n8n from 1.123.3 to 2.0.0-rc.4 with external task runners for
Code node execution. task runners handle javascript and python code
execution in isolated containers with configurable concurrency.

key changes:
- add n8n-runner service using n8nio/runners:2.0.0-rc.4
- configure runner auth token and broker communication
- add N8N_RUNNER_COUNT for scaling runner replicas
- move code node library config to runner container
- update binary data mode from filesystem to database
- add runner count prompt to installation wizard
2025-12-11 11:39:01 -07:00
Yury Kossakovsky
bb3c6b4810 Update confirmation prompts in secret generation and service configuration scripts to default to 'yes'
- Modified the confirmation prompts in 03_generate_secrets.sh and 05_configure_services.sh to default to 'yes' for user actions regarding domain and email confirmation, as well as n8n worker updates. This change aims to streamline user interactions and reduce the need for repeated confirmations.
2025-11-09 13:48:00 -07:00
Yury Kossakovsky
5b0d701734 Add Docling service configuration and credentials
- Introduced Docling hostname and credentials in .env.example for environment setup.
- Updated Caddyfile to include reverse proxy configuration for the Docling service.
- Added Docling service definition in docker-compose.yml with necessary environment variables and health checks.
- Enhanced README.md to document Docling integration and access details.
- Updated scripts to generate Docling credentials and include them in the final report for user visibility.
2025-11-09 13:38:09 -07:00
Yury Kossakovsky
da6ea89432 Integrate Elasticsearch support into RAGFlow configuration
- Updated .env.example to include RAGFLOW_ELASTICSEARCH_PASSWORD for Elasticsearch credentials.
- Modified docker-compose.yml to replace the Infinity service with a new ragflow-elasticsearch service, including necessary environment variables and health checks.
- Adjusted README.md to reflect the integration of Elasticsearch as the backend for RAGFlow.
- Enhanced system preparation script to configure vm.max_map_count for Elasticsearch requirements.
- Updated secrets generation script to include RAGFLOW_ELASTICSEARCH_PASSWORD for credential management.
2025-11-05 10:18:35 -07:00
Yury Kossakovsky
fba8f96b81 Add LightRAG service configuration and credentials
- Introduced LightRAG hostname and credentials in .env.example for environment setup.
- Updated Caddyfile to include reverse proxy configuration for LightRAG service.
- Added LightRAG service definition in docker-compose.yml with necessary environment variables and volume mappings.
- Enhanced README.md to document LightRAG integration and access details.
- Updated scripts to generate LightRAG credentials and include them in the final report for user visibility.
2025-11-05 10:18:35 -07:00
Yury Kossakovsky
430a6e3c9a Add Redis service configuration and update environment variables in docker-compose.yml
- Introduced a new Redis service (ragflow-redis) in docker-compose.yml for enhanced caching capabilities.
- Updated environment variables to include RAGFLOW_REDIS_PASSWORD for secure access.
- Modified .env.example to reflect the addition of Redis credentials.
- Updated secrets generation script to include RAGFLOW_REDIS_PASSWORD for consistency in credential management.
2025-11-05 10:18:35 -07:00
Yury Kossakovsky
bf5575a48f Add RAGFlow service configuration and documentation
- Updated .env.example to include RAGFlow hostname and internal credentials for MySQL and MinIO.
- Modified Caddyfile to set up a reverse proxy for RAGFlow service.
- Enhanced docker-compose.yml with RAGFlow service definition, including environment variables and health checks for dependencies.
- Updated README.md to include RAGFlow information and service URL for user guidance.
- Configured system preparation script to set vm.max_map_count for Elasticsearch support required by RAGFlow.
- Added secret generation for RAGFlow internal credentials in the secrets generation script.
- Included RAGFlow in the final report script for visibility on service status and access information.
2025-11-05 10:18:35 -07:00
Yury Kossakovsky
fd96208619 Refactor WAHA API key generation in 03_generate_secrets.sh to ensure it occurs after .env write/substitutions. This change prevents overwriting existing values and maintains the integrity of generated secrets. 2025-10-15 12:51:12 -06:00
Yury Kossakovsky
5037bc6d16 Add WAHA (WhatsApp HTTP API) configuration to project
- Updated .env.example to include WAHA_HOSTNAME and related environment variables for configuration.
- Modified Caddyfile to set up reverse proxy for WAHA service.
- Enhanced docker-compose.yml to define WAHA service with necessary environment variables.
- Updated scripts to generate secrets for WAHA, including dashboard and Swagger credentials.
- Added WAHA information to the final report for user visibility.
2025-10-15 11:45:04 -06:00
Yury Kossakovsky
4d65382e92 Refactor user input prompts in scripts to use whiptail for better UX
- Replaced standard input prompts with whiptail dialogs in 03_generate_secrets.sh and 05_configure_services.sh for domain, email, OpenAI API key, and n8n worker count.
- Added validation messages using whiptail for empty inputs and invalid formats.
- Introduced new utility functions in utils.sh for whiptail integration, ensuring the script checks for whiptail availability.
2025-09-17 14:15:12 -06:00
Yury Kossakovsky
03a6812ec5 Refactor service configuration scripts and streamline .env updates
- Removed redundant prompts for OpenAI API key and Cloudflare Tunnel token in `03_generate_secrets.sh` and `04_wizard.sh`.
- Introduced `05_configure_services.sh` to handle service configuration and .env updates, improving clarity and maintainability.
- Enhanced user prompts for n8n worker count and workflow import settings, ensuring better user experience during configuration.
- Updated installation script to include the new configuration script, ensuring a cohesive setup process.
2025-08-28 18:42:50 -06:00
Yury Kossakovsky
c1ceb1884a Refactor LibreTranslate environment variable names across configuration files
- Updated environment variable names in .env.example, Caddyfile, and docker-compose.yml for consistency and clarity.
- Adjusted the final report script to reflect the new variable names, ensuring accurate output.
- Enhanced the script for generating secrets to accommodate the updated variable names, improving maintainability.
2025-08-28 17:19:30 -06:00
Yury Kossakovsky
fb0a5a3e02 Refactor LibreTranslate configuration in .env.example and docker-compose.yml
- Updated environment variable names in .env.example to align with container environment variables.
- Simplified the docker-compose.yml to use the new variable names, enhancing clarity and maintainability.
- Removed outdated API endpoint documentation from the final report script to streamline output.
2025-08-28 17:18:44 -06:00
freddy-schuetz
784e7a193a feat: Add LibreTranslate self-hosted translation service
- Add LibreTranslate service with 50+ language support
- Configure with Basic Auth for security
- Integrate with wizard and final report
- Add documentation to README
2025-08-28 16:59:09 +02:00
Yury Kossakovsky
984ae0a8f7 Add PaddleOCR username to secrets generation script
- Included a new variable for PaddleOCR username in the secrets generation script to align with recent configuration changes.
2025-08-27 15:29:19 -06:00
Yury Kossakovsky
efbf42c2d7 Add PaddleOCR username variable to secrets generation script
- Introduced a new variable for PaddleOCR username in the secrets generation script to support recent configuration updates.
2025-08-27 15:26:00 -06:00
Yury Kossakovsky
c4d08b729b Add PaddleOCR configuration and credentials to environment and Caddyfile
- Updated .env.example to include PaddleOCR credentials (username, password, password hash).
- Modified Caddyfile to implement basic authentication for PaddleOCR using the new credentials.
- Enhanced docker-compose.yml to pass PaddleOCR environment variables to the service.
- Updated scripts to generate and manage PaddleOCR password securely.
- Added PaddleOCR documentation link in README.md for user reference.
2025-08-27 15:11:20 -06:00
Yury Kossakovsky
f38e2ebde0 Refactor Cloudflare Tunnel integration in scripts
- Removed Cloudflare Tunnel Token prompts from the secrets generation script.
- Added logic to handle Cloudflare Tunnel Token input in the service selection wizard.
- Updated final report script to simplify security notice related to Cloudflare Tunnel.
2025-08-27 09:49:13 -06:00
Yury Kossakovsky
b56e11ee83 Refactor Cloudflare Tunnel configuration and update prompts
- Removed the dependency on the Caddy service in docker-compose.yml for the Cloudflare Tunnel.
- Updated prompts in the secret generation script to clarify that leaving the Cloudflare Tunnel Token empty will skip the input.
2025-08-21 18:10:43 -06:00
Yury Kossakovsky
b2d4b1a0c6 Merge branch 'main' into main 2025-08-21 16:23:43 -06:00
Adam
807f18a28c resolve conflicts 2025-08-20 14:57:03 -04:00
Adam
8752baaee4 Removed a few incorrect comments 2025-08-20 14:53:06 -04:00
Yury Kossakovsky
0e8a446a61 Remove POSTIZ_USERNAME from secret generation script to streamline configuration following the removal of Postiz service authentication variables. 2025-08-19 16:13:20 -06:00
Yury Kossakovsky
3324d1e8e6 Remove Postiz authentication variables and related configurations
- Deleted POSTIZ_USERNAME, POSTIZ_PASSWORD, and POSTIZ_PASSWORD_HASH from .env.example and docker-compose.yml to streamline configuration.
- Removed basic authentication setup from Caddyfile for the Postiz service.
- Updated scripts to eliminate generation of Postiz-related secrets, enhancing security and simplifying setup.
2025-08-19 16:12:02 -06:00
Yury Kossakovsky
f9b22d9631 Add Postiz configuration and environment variables
- Updated .env.example to include new environment variables for Postiz, including authentication and social media integration settings.
- Modified Caddyfile to implement basic authentication for the Postiz service.
- Enhanced docker-compose.yml to incorporate Postiz environment variables and ensure proper service configuration.
- Updated scripts to generate Postiz-related secrets and included them in the final report for user reference.
2025-08-19 14:25:07 -06:00
Yury Kossakovsky
f4ad57dd15 Add RAGApp integration into configuration
- Updated .env.example to include RAGAPP_HOSTNAME, RAGAPP_USERNAME, and RAGAPP_PASSWORD for basic authentication.
- Modified Caddyfile to implement basic authentication for the RAGApp reverse proxy.
- Enhanced docker-compose.yml to add a new RAGApp service with necessary environment variables.
- Updated scripts to generate RAGApp credentials and include them in the setup wizard and final report.
- Documented RAGApp details in the final report for user visibility.
2025-08-15 12:45:16 -06:00
TUCU-Adam
0ac3f89e15 Adding cloudflare tunnel mod
docker-compose.yml - Add the cloudflared service definition
.env.example - Add CLOUDFLARE_TUNNEL_TOKEN variable with documentation
scripts/03_generate_secrets.sh - Add tunnel token prompt with auto-enable logic
scripts/04_wizard.sh - Add cloudflare-tunnel to service selection menu
scripts/06_final_report.sh - Add security reminder when tunnel is enabled
README.md - Add comprehensive documentation section
2025-08-13 20:27:02 -04:00
Yury Kossakovsky
a30168a937 Add ComfyUI credentials and integration into configuration
- Updated .env.example to include COMFYUI_USERNAME and COMFYUI_PASSWORD for basic authentication.
- Modified Caddyfile to implement basic authentication for the ComfyUI reverse proxy.
- Enhanced docker-compose.yml to pass ComfyUI credentials as environment variables.
- Updated scripts to generate ComfyUI password and username, ensuring proper setup.
- Included ComfyUI credentials in the final report for visibility.
2025-08-08 13:35:25 -06:00
Yury Kossakovsky
848704d8c4 Remove Portainer credentials from configuration files and scripts
- Updated .env.example to eliminate PORTAINER_USERNAME and PORTAINER_PASSWORD.
- Modified Caddyfile to remove basic authentication for Portainer.
- Adjusted docker-compose.yml to exclude Portainer credentials from environment variables.
- Refactored scripts to stop generating Portainer password and username, ensuring a cleaner setup process.
2025-08-07 21:33:59 -06:00
Yury Kossakovsky
86ea16b359 Add Portainer integration as an optional service
- Updated .env.example to include PORTAINER_HOSTNAME, PORTAINER_USERNAME, PORTAINER_PASSWORD, and PORTAINER_PASSWORD_HASH for configuration.
- Modified Caddyfile to add a reverse proxy for Portainer with basic authentication.
- Enhanced docker-compose.yml to include a new Portainer service and associated volume.
- Updated scripts to generate Portainer credentials and include it in the setup wizard and final report.
- Documented the integration process and reflections in the memory bank for future reference.
2025-08-07 21:29:19 -06:00
Yury Kossakovsky
ea253f4cc5 Add Dify AI Platform integration to n8n-installer project
- Integrated Dify, an open-source AI application development platform, as an optional service in the n8n-installer project.
- Updated start_services.py to include functions for cloning the Dify repository, preparing the environment, and starting Dify services.
- Configured docker-compose.yml to reference Dify's external Docker Compose file and included necessary environment variables.
- Enhanced Caddyfile with reverse proxy settings for Dify, ensuring proper routing and access.
- Updated .env.example to include Dify-specific configuration variables.
- Revised README.md to document Dify's capabilities and access details.
- Enhanced service selection wizard to allow users to choose Dify during setup.
- Comprehensive testing and validation phase pending to ensure full functionality.
2025-08-06 18:01:05 -06:00