Commit Graph

139 Commits

Author SHA1 Message Date
Yury Kossakovsky
f5aa8a5ddf Refactor service management in start_services.py and scripts
- Updated the is_supabase_enabled function to read COMPOSE_PROFILES from the .env file instead of os.environ, improving clarity.
- Simplified the run_command function by removing the unused env parameter.
- Refined the stop_existing_containers function to streamline the shutdown process for the 'localai' project, conditionally including the Supabase compose file.
- Enhanced logging for better user feedback during service management operations.
- Adjusted the scripts for generating secrets and applying updates to improve clarity and functionality.
2025-05-22 14:09:28 -06:00
Yury Kossakovsky
1c2b348ee3 Add .env.bak to .gitignore
- Included .env.bak in the .gitignore file to prevent backup environment files from being tracked by Git, ensuring a cleaner repository and reducing the risk of accidentally committing sensitive information.
2025-05-22 13:46:54 -06:00
Yury Kossakovsky
5351443f76 Refactor Supabase compose file handling in start_services.py
- Updated the stop_existing_containers function to conditionally include the Supabase compose file only if Supabase is enabled, improving clarity and functionality.
- Added logging to inform users about the presence or absence of the Supabase compose file, enhancing the shutdown process.
- Included checks for the existence of the Supabase compose file to provide context when Supabase is disabled, ensuring better user feedback.
2025-05-22 13:46:02 -06:00
Yury Kossakovsky
f11b303531 Temporarily comment out cap_drop in docker-compose.yml for SearXNG service
- Commented out the cap_drop directive to allow for initial testing without dropping all capabilities, as noted in the accompanying documentation.
- Retained the entrypoint script for managing directory permissions and starting the SearXNG application, ensuring functionality remains intact during this change.
2025-05-22 13:37:08 -06:00
Yury Kossakovsky
767195b7ce Add entrypoint script to docker-compose.yml for SearXNG service
- Introduced an entrypoint script to handle directory permissions for the SearXNG service, ensuring proper ownership and access rights.
- The script includes commands to change ownership and permissions of the /etc/searxng directory before starting the SearXNG application, enhancing security and functionality during container startup.
2025-05-22 13:33:56 -06:00
Yury Kossakovsky
0c24dd07f8 Add force stop functionality for lingering containers in start_services.py
- Introduced a new function, force_stop_lingering_containers, to identify and force stop containers that may be running outside of the current Docker Compose management.
- Implemented logic to check for specific container patterns and handle stopping and removing them, enhancing the shutdown process.
- Improved error handling to manage potential issues during the force stop operation, ensuring robustness in service management.
2025-05-22 13:24:46 -06:00
Yury Kossakovsky
16e8b9a059 Refactor environment handling in stop_existing_containers function in start_services.py
- Updated the stop_existing_containers function to explicitly remove the COMPOSE_PROFILES environment variable when stopping and removing containers, ensuring all services are affected.
- Improved clarity by modifying the environment passed to run_command for both stop and remove operations, enhancing the shutdown process consistency.
2025-05-22 13:20:57 -06:00
Yury Kossakovsky
6505208f9c Refactor container shutdown process in start_services.py to improve clarity and functionality
- Updated the stop_existing_containers function to explicitly stop and remove all existing containers for the 'localai' project.
- Enhanced logging to provide clearer messages regarding the presence of the Supabase compose file during the shutdown process.
- Separated the stop and remove commands for better readability and maintainability of the shutdown logic.
2025-05-22 13:19:02 -06:00
Yury Kossakovsky
4750e92a65 Enhance run_command function in start_services.py to accept environment variables
- Modified the run_command function to include an optional env parameter, allowing explicit environment variable management during subprocess execution.
- Updated calls to run_command throughout the script to pass os.environ.copy(), ensuring the correct COMPOSE_PROFILES are used for service operations.
- Removed outdated comments regarding COMPOSE_PROFILES manipulation, reflecting the current environment handling approach.
2025-05-22 11:55:58 -06:00
Yury Kossakovsky
40c63a1d93 Refactor shutdown process in start_services.py to always include Supabase compose file
- Updated the 'down' command to always include the Supabase compose file if it exists, ensuring proper shutdown of services.
- Removed the temporary clearing of COMPOSE_PROFILES, as the current environment is now managed by load_dotenv().
- Enhanced logging to inform users about the presence or absence of the Supabase compose file during shutdown.
2025-05-22 11:52:08 -06:00
Yury Kossakovsky
a729baa3c9 Improve container shutdown process in start_services.py
- Enhanced the 'down' command to conditionally include the Supabase compose file based on the current environment settings.
- Implemented temporary clearing of COMPOSE_PROFILES to ensure all services are affected during shutdown.
- Added error handling to restore the original COMPOSE_PROFILES after command execution, maintaining environment integrity.
2025-05-22 11:43:18 -06:00
Yury Kossakovsky
a461b783b9 Enhance environment variable handling in start_services.py
- Added load_dotenv() to load environment variables from the .env file, ensuring that COMPOSE_PROFILES is retrieved from the environment.
- Updated the is_supabase_enabled() function to check for 'supabase' in the environment variable instead of directly from the .env file.
- Improved the documentation to clarify the reliance on environment variables for service configuration.
2025-05-22 11:39:11 -06:00
Yury Kossakovsky
394e4669eb Refactor installation summary logging in final report generation
- Moved the installation summary logging from 06_final_report.sh to install.sh to ensure it is displayed immediately after the installation steps.
- Improved the organization of the final report generation process by consolidating related logging functionality.
- Enhanced user visibility of installation steps performed during the setup process.
2025-05-22 11:34:45 -06:00
Yury Kossakovsky
8c017549f2 Add final report display in apply_update.sh to show service credentials
- Implemented a final report display feature in apply_update.sh to show service credentials post-update.
- Added error handling to log a warning if the final report fails to display, ensuring the update process remains unaffected.
- Enhanced user experience by providing a summary of service credentials after a successful update.
2025-05-22 11:29:09 -06:00
Yury Kossakovsky
2baafa495b Refactor service selection in wizard script and integrate into update process
- Updated the service selection logic in 04_wizard.sh to dynamically populate available services based on current COMPOSE_PROFILES from the .env file.
- Enhanced the Ollama hardware profile selection to reflect user choices and defaults based on existing profiles.
- Integrated the service selection wizard into apply_update.sh to streamline the update process and ensure user-defined service configurations are applied.
- Improved user prompts and handling for service choices, enhancing overall configuration experience.
2025-05-22 11:27:45 -06:00
Yury Kossakovsky
ae5cd1aab2 Enhance n8n import handling in apply_update.sh and update secrets generation
- Added logic to determine the N8N_WORKFLOWS_IMPORTED_EVER variable based on existing environment values and user input.
- Updated the apply_update.sh script to check if workflows have been imported previously, modifying the RUN_N8N_IMPORT and N8N_WORKFLOWS_IMPORTED_EVER variables accordingly.
- Improved user prompts for importing n8n workflows, ensuring a smoother configuration experience.
2025-05-22 11:22:11 -06:00
Yury Kossakovsky
be6a52303f Add new n8n workflow for AI-powered video generation and multi-platform publishing
- Introduced a comprehensive workflow that automates the generation of short-form videos using OpenAI, Flux, Kling, and ElevenLabs.
- The workflow includes nodes for image generation, video creation, voiceover generation, and uploading to multiple social media platforms.
- Enhanced user guidance with sticky notes detailing setup instructions and API key requirements for seamless integration.
- Implemented error handling and retry mechanisms to ensure robust execution of video generation tasks.
2025-05-19 17:42:58 -06:00
Yury Kossakovsky
5d1e46430c Add PostgreSQL configuration for n8n and Langfuse in final report script
- Enhanced the final report script to include details for a standalone PostgreSQL instance used by n8n and Langfuse.
- Added Ollama service information for internal access based on active profiles.
- Clarified the distinction between Supabase's internal PostgreSQL and the standalone instance for better user understanding.
2025-05-15 20:48:32 -06:00
Yury Kossakovsky
d2abd6e036 Add Ollama service configuration to docker-compose.yml and update related files
- Introduced Ollama service with CPU and GPU profiles in docker-compose.yml, allowing users to run large language models locally.
- Added Ollama selection option in the wizard script for hardware profile configuration.
- Updated README.md to include Ollama as a new available service.
- Adjusted .env.example to include GRAFANA_HOSTNAME in the correct position.
2025-05-15 20:44:36 -06:00
Yury Kossakovsky
3eb8a94620 Add new n8n workflow for backing up all workflows to Google Drive every 4 hours
- Introduced a new workflow that automates the backup of all n8n workflows to Google Drive at a 4-hour interval.
- The workflow includes nodes for creating folders, converting workflows to JSON files, and managing folder deletions to maintain organization.
- Enhanced scheduling and filtering capabilities to ensure efficient backup management.
2025-05-15 20:22:00 -06:00
Yury Kossakovsky
da812c18a4 Add new n8n workflow for automated backup to Google Drive with email and Discord notifications
- Introduced a comprehensive workflow that automates the backup of n8n workflows to Google Drive.
- The workflow includes nodes for scheduling, retrieving existing workflows, and sending success or failure notifications via email and Discord.
- Enhanced user guidance with sticky notes detailing setup instructions and important information.
2025-05-15 20:19:37 -06:00
Yury Kossakovsky
0027e6948b Add new n8n workflow for automatic documentation and backup of workflows
- Introduced a comprehensive workflow that automatically documents and backs up n8n workflows to Notion and GitHub.
- The workflow includes nodes for setting fields, mapping data, and handling notifications, ensuring efficient management and tracking of workflow changes.
2025-05-15 20:19:33 -06:00
Yury Kossakovsky
09a369a5d2 Enhance TMP_ENV_FILE handling in 03_generate_secrets.sh
- Added a check to prevent duplicate entries when appending environment variables to TMP_ENV_FILE, ensuring cleaner and more efficient script execution.
2025-05-15 19:54:17 -06:00
Yury Kossakovsky
0098378fd7 Refactor install.sh to streamline utilities sourcing
- Moved the sourcing of the utilities file to the beginning of the script for better organization and clarity.
- Removed redundant sourcing of the utilities file from the middle of the script.
2025-05-15 19:46:01 -06:00
Yury Kossakovsky
1da5d2851c Implement nested n8n-installer directory check in install.sh
- Added logic to detect and correct nested n8n-installer directory structures.
- Included re-execution of the install script from the corrected path to ensure proper script execution and path resolution.
2025-05-15 19:24:14 -06:00
Yury Kossakovsky
503ca356e3 Add LETTA_HOSTNAME environment variable to docker-compose.yml for Letta service configuration 2025-05-15 19:20:09 -06:00
Yury Kossakovsky
c3076a9990 Add Letta service configuration and update documentation
- Added Letta service to docker-compose.yml with necessary environment variables and volume configuration.
- Updated Caddyfile to include reverse proxy for Letta.
- Included Letta in the README.md for service availability and provided a brief description.
- Enhanced scripts to generate Letta server password and report its status in the final report.
- Updated .env.example to include Letta hostname and server password variable.
2025-05-15 19:11:33 -06:00
Yury Kossakovsky
d8f738303b Update DATABASE_URL in docker-compose.yml to point to langfuse database
- Changed the DATABASE_URL environment variable for the langfuse worker service to connect to the langfuse database instead of the default postgres database, ensuring proper database configuration for the application.
2025-05-15 18:45:52 -06:00
Yury Kossakovsky
ced3b81bfe Add new n8n workflow for automated YouTube video scheduling and AI-generated metadata
- Introduced a comprehensive workflow that automates the scheduling of YouTube videos, including fetching the latest videos, generating SEO-optimized titles, descriptions, and tags using AI, and updating video metadata.
- The workflow enhances content management efficiency on YouTube by integrating various nodes for video processing and scheduling.
2025-05-15 18:45:45 -06:00
Yury Kossakovsky
35e9d035d4 Add new n8n workflow for automating YouTube uploads with AI-generated metadata
- Introduced a comprehensive workflow that automates the process of uploading videos to YouTube, including downloading video files from Google Drive, generating descriptions and tags using AI, and updating video metadata.
- The workflow includes nodes for downloading videos, creating descriptions, generating SEO-optimized titles, and managing video uploads, enhancing the efficiency of content management on YouTube.
2025-05-15 18:45:40 -06:00
Yury Kossakovsky
0bada5dde9 Remove logging of current n8n worker count in apply_update.sh to streamline user prompts and enhance clarity during input collection. 2025-05-14 14:41:07 -06:00
Yury Kossakovsky
cd866edbdd Improve user prompts in 03_generate_secrets.sh and apply_update.sh
- Standardized prompt formatting by removing unnecessary newline characters, enhancing clarity and consistency in user interactions.
- Updated prompts to ensure a more straightforward user experience during input collection, particularly for domain name, email, and n8n worker count inputs.
2025-05-14 14:37:55 -06:00
Yury Kossakovsky
61ebcc8982 Refine n8n workflow import prompt in apply_update.sh
- Updated the user prompt to clarify the response options for importing n8n workflows, enhancing user understanding and interaction.
- Ensured consistency in prompt formatting across the script for improved user experience.
2025-05-14 14:35:57 -06:00
Yury Kossakovsky
a1a1d2509a Enhance user prompts in 03_generate_secrets.sh and apply_update.sh
- Updated prompts to use printf for better formatting, ensuring dynamic inclusion of variable values in user messages.
- Improved user experience by making prompts clearer and more informative during input collection.
2025-05-14 14:35:05 -06:00
Yury Kossakovsky
ea8e2e07ed Enhance user prompts in 03_generate_secrets.sh and apply_update.sh
- Updated prompts to include newline characters for better readability, improving user experience during input collection.
- Ensured consistency in user interaction across scripts by standardizing prompt formatting.
2025-05-14 14:30:43 -06:00
Yury Kossakovsky
4022be004d Refactor n8n workflow import prompt in apply_update.sh
- Simplified the user prompt for importing n8n workflows by removing the check for the RUN_N8N_IMPORT variable being true, allowing users to indicate if they have already imported the workflow.
- Retained the logic for modifying the RUN_N8N_IMPORT variable based on user input, ensuring flexibility in workflow management.
2025-05-14 14:26:01 -06:00
Yury Kossakovsky
96e640b33c Enhance update script with git reset functionality
- Added a git reset --hard HEAD command to the update.sh script to ensure a clean working directory before pulling the latest changes. This helps prevent issues caused by uncommitted local changes during updates, while also logging a warning if the reset fails.
2025-05-14 14:20:51 -06:00
Yury Kossakovsky
27634c630f Enhance n8n workflow import handling in apply_update.sh
- Added a check to skip the import prompt if RUN_N8N_IMPORT is already set to true in the .env file, improving user experience by preventing unnecessary prompts.
- Retained the existing logic for modifying the RUN_N8N_IMPORT variable based on user input, ensuring flexibility in workflow management.
2025-05-14 14:15:59 -06:00
Yury Kossakovsky
39c16f2bc5 Update n8n service configuration in docker-compose.yml
- Removed the npm install command for cheerio from the n8n service to streamline the startup process.
- Added environment variables NODE_FUNCTION_ALLOW_BUILTIN and NODE_FUNCTION_ALLOW_EXTERNAL to allow specific built-in and external modules, enhancing the flexibility of the n8n service.
2025-05-14 14:11:41 -06:00
Yury Kossakovsky
c1287b69d3 Change file permissions for start_services.py to make it executable 2025-05-14 14:01:15 -06:00
Yury Kossakovsky
e28a4980fb Update n8n command in docker-compose.yml to simplify syntax
- Modified the command for the n8n service in the docker-compose.yml file to use a simplified shell invocation, enhancing readability while maintaining functionality.
2025-05-14 11:44:45 -06:00
Yury Kossakovsky
c125625679 Add npm install command for cheerio in n8n service
- Updated the docker-compose.yml file to include a command that installs the cheerio package before starting the n8n service. This ensures that the necessary dependencies are available for the application to function correctly.
2025-05-14 11:44:45 -06:00
Yury Kossakovsky
5658594dd9 Add temporary "Dangerous Site" warning section to README.md
- Introduced a new section addressing potential browser security warnings after deploying services, detailing symptoms, causes, and solutions.
- This addition aims to assist users in troubleshooting common SSL certificate issues during initial service access.
2025-05-13 17:37:16 -06:00
Yury Kossakovsky
8e6ba6977b Add Redis configuration output for n8n and langfuse profiles in final report script
- Enhanced the final report script to include Redis connection details when the n8n or langfuse profiles are active.
- This addition provides clearer insights into internal service communication settings, improving the overall utility of the report.
2025-05-13 17:30:28 -06:00
Yury Kossakovsky
2835253eee Update system preparation script to include python3-pip installation
- Added python3-pip to the list of standard CLI tools installed in the system preparation script, enhancing the environment setup for Python package management.
2025-05-13 17:30:15 -06:00
Yury Kossakovsky
7a883959e4 Update README.md to require sudo for installation and update scripts
- Modified the installation and update commands in the README to include 'sudo', ensuring proper permissions for script execution.
- This change enhances the installation process by preventing potential permission issues during setup and updates.
2025-05-13 17:30:05 -06:00
Yury Kossakovsky
a40bced3f3 Add path to apply_update.sh in update script
- Updated the update.sh script to define the path for the apply_update.sh script, ensuring it can be referenced correctly during the update process.
- This change enhances the script's functionality by establishing a clear link to the new update handling script introduced in the previous commit.
2025-05-12 12:31:27 -06:00
Yury Kossakovsky
d6f3522ca7 Add apply_update.sh script to streamline update process
- Introduced a new script, apply_update.sh, to handle the update process, including stopping services, pulling the latest container versions, and modifying the .env file based on user input for n8n workflow import and worker count.
- Refactored update.sh to delegate the update tasks to apply_update.sh, improving code organization and maintainability.
- Enhanced error handling and logging throughout the update process for better user experience and troubleshooting.
2025-05-12 12:25:58 -06:00
Yury Kossakovsky
8716bd7fb4 Enhance update script to allow user input for n8n worker count
- Added functionality to prompt the user for a new n8n worker count during the update process, including validation for positive integers.
- Improved error handling and logging for cases where the N8N_WORKER_COUNT line is missing in the .env file, ensuring better user guidance and script robustness.
2025-05-12 12:14:18 -06:00
Yury Kossakovsky
257656d53e Refactor langfuse profile output in final report script
- Moved the langfuse profile output section to ensure it includes user email and password details, enhancing the clarity and completeness of the final report.
2025-05-12 12:14:14 -06:00