puq-docker-immich-deploy
This workflow is designed to automate the deployment and management of Docker-based Immich service instances, supporting operations such as starting, stopping, mounting, setting permissions, and retrieving logs for containers. Through API interfaces and SSH remote execution, users can flexibly manage the container lifecycle and achieve one-stop status monitoring and user management. Additionally, the built-in nginx proxy configuration feature ensures stable operation of the service in a reverse proxy environment, making it suitable for cloud service providers, system operations personnel, and enterprise IT teams, thereby enhancing operational efficiency and service delivery quality.
Tags
Workflow Name
puq-docker-immich-deploy
Key Features and Highlights
This workflow is designed to automate the deployment and management of Docker-based Immich service instances. It integrates API interfaces, SSH remote execution, and Docker container management, supporting operations such as container start/stop, disk mount/unmount, permission settings, log retrieval, status monitoring, and user management. Through flexible command branching and parameter configuration, it enables full lifecycle management of the Immich service and its dependent containers. It also includes automatic generation and updating of nginx proxy configurations to ensure stable operation within a reverse proxy environment.
Core Problems Addressed
- Automated deployment and management of Immich service containers, reducing manual operations and configuration errors.
- Dynamic management of container storage mounts to ensure data persistence and isolation.
- Unified API control for easy integration with systems like WHMCS/WISECP.
- Centralized management of logs, status, permissions, and users to improve operational efficiency.
- Secure command execution via SSH to guarantee safe and controllable operations.
Use Cases
- Cloud service providers rapidly deploying Immich photo management services for customers.
- Enterprises automating multi-tenant Immich instance management internally.
- Integration with billing management platforms such as WHMCS/WISECP to automate Docker service provisioning, suspension, renewal, and other operations.
- DevOps teams centrally monitoring and maintaining Immich container environments.
Main Workflow Steps
- Receive API Requests: Accept external command requests via webhook with authentication.
- Parameter Configuration: Set server domain, data storage directories, mount points, and other parameters based on request content.
- Command Parsing: Use conditional nodes to interpret operation commands (e.g., create, start, stop, mount disk).
- Execute SSH Commands: Remotely run corresponding shell scripts via SSH to perform Docker container operations and environment setup.
- Configuration Generation and Update:
- Automatically generate
docker-compose.yml
for container orchestration. - Generate and update nginx proxy configuration files, applying access control lists (ACLs).
- Automatically generate
- Status and Log Collection: Retrieve container runtime status, performance metrics, and logs for feedback.
- User and Version Management: Query Immich application versions and user information, supporting password resets and other management functions.
- API Response: Return operation results in JSON format for caller consumption.
Involved Systems and Services
- Docker: Containerized deployment of Immich and its dependencies (database, Redis, machine learning services).
- SSH Remote Execution: Securely execute deployment and management commands on remote servers.
- Webhook API: Receive external system requests (e.g., from WHMCS/WISECP) to enable automated control.
- nginx Proxy: Reverse proxy configuration managing access control and request forwarding.
- Immich Service: Open-source self-hosted photo management backend.
- PostgreSQL Database: Stores Immich data.
- Redis Cache: Provides high-speed caching support.
Target Users and Value Proposition
- Cloud Service Providers: Automated deployment and management solution for Immich photo management services, enhancing customer delivery efficiency.
- System Administrators: Simplify multi-instance Immich operations with API-driven batch management and monitoring.
- Developers and Integrators: Facilitate integration of Immich container management into existing billing and customer management platforms.
- Enterprise IT Teams: Quickly build private photo management platforms ensuring data security and service stability.
- Technical Support Teams: Rapidly troubleshoot and resolve issues through log and status collection nodes.
This workflow delivers a comprehensive, efficient, and secure service management framework for automated deployment and operation of Immich in Docker environments. By leveraging API and SSH technologies, it significantly reduces manual effort while improving service delivery speed and quality.
Syncro Status Update Clockify
This workflow automatically receives status update requests via Webhook, intelligently synchronizing the archiving status of Clockify projects. Depending on whether the task is resolved, it automatically toggles the Clockify project between "archived" and "active," effectively addressing the cumbersome and error-prone nature of manual operations. It is suitable for teams that need to maintain consistency between task status and time tracking tools, significantly enhancing the efficiency and accuracy of project management, and ensuring that the project status is always in sync with the actual tasks.
Error Monitoring Notification Workflow
This workflow enables real-time monitoring of error events in the automated system. Once an error occurs, a detailed notification is immediately sent via Mattermost, and Twilio SMS alerts are utilized to ensure that relevant personnel are quickly informed of the anomaly. This multi-channel notification mechanism effectively prevents business interruptions or data loss due to undetected issues, enhancing operational efficiency and response speed. It is suitable for teams and enterprises that require real-time monitoring of business processes.
JIRA Issue Intelligent Auto-Assignment Workflow
This workflow intelligently and automatically assigns unassigned tasks that have been pending for more than 5 days by integrating JIRA, OpenAI, and the Supabase vector database. It utilizes AI technology to retrieve similar resolved issues, identify the best team members, and take into account the current task load, ensuring that tasks are assigned efficiently and accurately, while avoiding omissions and resource waste. It is suitable for agile development and project management, significantly reducing the manual allocation workload and enhancing team collaboration and management efficiency.
Receive Messages from an ActiveMQ Queue via AMQP Trigger
This workflow uses the AMQP Trigger node to listen for and receive messages from the ActiveMQ message queue in real-time, ensuring immediate capture and processing of messages. It effectively addresses the efficiency issue of retrieving messages from the ActiveMQ queue, avoiding manual polling or delayed responses, making it suitable for scenarios that require real-time message processing, such as order notifications and system event triggers. This workflow provides developers and operations personnel with tools to enhance message processing efficiency and supports the construction of automated processes.
n8n Update
This workflow implements automatic version detection and updates for running Docker containers. It regularly checks the differences between the current version and the latest released version on GitHub, automatically notifying users if updates are available. Upon user confirmation, it pulls the latest image and restarts the container. Notifications and interactions are conducted via Telegram, allowing users to conveniently manage updates remotely, ensuring that the platform always runs on the latest stable version, thereby enhancing system security and functional integrity.
n8n Workflow Auto Backup to GitHub
This workflow implements automatic backups of workflow configuration files, categorically storing them by year and month in a designated GitHub repository, with files named using a unique ID. It supports scheduled or manual triggers and intelligently identifies file statuses to optimize backup efficiency. After the backup is complete, it automatically sends a Slack notification to ensure users are promptly informed of the backup status. This process is suitable for enterprises and teams, reducing manual intervention and management costs while effectively ensuring the security and stability of the workflow.
Keep Discord Clean
This workflow implements an automatic message cleanup feature for Discord channels. It scans all channels of a specified server at scheduled intervals each day, automatically deleting messages that are older than seven days to keep the channels tidy. By appropriately setting wait times, it effectively avoids API call rate limits, ensuring the smooth execution of tasks and reducing the risk of being banned. This significantly alleviates the burden of manual management for community operators and business users, enhancing channel activity and information security.
Telegram Command-Triggered GitHub Release Query Automation Workflow
This workflow is triggered by a Telegram message, listening for specific commands input by the user. It automatically extracts the version number and calls the GitHub API to query the release information for the corresponding version, greatly simplifying the traditional version inquiry process. Users only need to send a simple command to instantly obtain detailed information about the target version, enhancing work efficiency and response speed. It is suitable for development teams, operations personnel, and product managers who need to quickly access project version information.