What is Automatisch?
Automatisch is an open-source, self-hosted workflow automation tool similar to Zapier. It will help you to join up different applications and automate your tasks without users sharing their data outside of your service, making it a great choice to secure data privacy and customization. Automatisch can link many web services, automating repetitive workflows.
Why should we use Automatisch?
Automatisch offers the flexibility to operate on your servers and integrate with multiple apps and services, making it ideal for businesses and individuals who prefer self-hosting solutions. With Automatisch, you can create workflows for productivity, notifications, data syncing, and much more—all without recurring fees or third-party data exposure.
Requirements for Installing Automatisch
System Requirements
To install Automatisch, you’ll need a server environment, ideally with:
- OS: Ubuntu 20.04+ or Debian 10+
- CPU: At least 2 cores
- RAM: Minimum 4GB (8GB recommended)
- Disk Space: 10GB or more (depending on workflow storage requirements)
Required Software and Tools
Automatisch runs in a Docker container, so you’ll need Docker and Docker Compose. These tools allow you to package Automatisch’s dependencies and deploy them easily across environments.
Step 1: Setting Up the Server Environment
Choose Your Operating System
While Automatisch can work on many Operating Systems, we’ll focus on Ubuntu and Debian for this guide. First, make sure you have a user with sudo privileges.
Update Your System Packages
Before proceeding, make sure to update the package list and upgrade installed packages to avoid conflicts.
sudo apt update && sudo apt upgrade -y
Install Docker
Automatisch relies on Docker to run its services in isolated containers. To install Docker:
sudo apt install docker.io -y
Enable Docker to start on boot and verify it’s running:
sudo systemctl enable --now docker
sudo systemctl status docker
Install Docker Compose
Docker Compose is needed to manage multi-container applications. Install it by downloading the binary:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
Make the Docker Compose binary executable:
sudo chmod +x /usr/local/bin/docker-compose
Confirm the installation by checking the version:
docker-compose --version
Step 2: Cloning the Automatisch Repository
Clone the Automatisch Repository
Use Git to download Automatisch’s source code:
git clone https://github.com/automatisch/automatisch.git
cd automatisch
Explore the Repository
Familiarize yourself with the main files and directories:
- docker-compose.yml – orchestrates services for Automatisch.
- .env.example – sample environment file to configure your installation.
Step 3: Configuring Automatisch
Setting Up Environment Variables
Automatisch uses environment variables to define configurations like ports and database settings.
Open the .env file to customize settings:
nano .env
- PORT: Port on which Automatisch will run (default is 3000).
- DATABASE_URL: URL for your PostgreSQL instance. Automatisch defaults to PostgreSQL for data storage.
- JWT_SECRET: A secure string used for authentication. Generate a strong random value here.
- SMTP Settings: Optional, but you can add SMTP settings for email notifications.
Configuring Database
Automatisch requires a PostgreSQL database. Install PostgreSQL:
sudo apt install postgresql postgresql-contrib -y
Set Up Database and User:
Open the PostgreSQL prompt:
sudo -u postgres psql
- Create a new database and user:
CREATE DATABASE automatisch_db;
CREATE USER automatisch_user WITH ENCRYPTED PASSWORD 'yourpassword';
ALTER ROLE automatisch_user SET client_encoding TO 'utf8';
ALTER ROLE automatisch_user SET default_transaction_isolation TO 'read committed';
ALTER ROLE automatisch_user SET timezone TO 'UTC';
GRANT ALL PRIVILEGES ON DATABASE automatisch_db TO automatisch_user;
- Exit the PostgreSQL prompt:
\q
Customizing Docker Compose
In the docker-compose.yml file, make any adjustments needed for port mappings or volumes. The default setup should be sufficient, but you may customize it to suit your infrastructure.
Step 4: Running Automatisch
Start Docker Containers
With everything configured, run the following command to start Automatisch:
docker-compose up -d
Verify Container Status
Check if all containers are running as expected:
docker ps
You should see containers for Automatisch and the database.
Access Automatisch Interface
To access the Automatisch interface, open your web browser and enter the URL:
http://localhost:3000
(or your specified port). You should see the Automatisch login page.
If you click on accept popup, then you will be redirected to the Automatisch login page. Otherwise, the Docker container for Automatisch must be up and running and listening on the right port so that you can access it. If you encounter issues, double-check your firewall and port configurations to confirm that external access to this port is allowed. Once logged in, you’ll be able to manage Automatisch settings and workflows.
Sign Up from the Dashboard
To sign up for Automatisch, start by accessing the interface through your browser at http://localhost:3000 (or your specified IP and port). Fill in the required fields:
- Full Name: Enter your full name.
- Email Address: Provide an email address that you will use for Automatisch communications and account recovery.
- Password: Create a secure password. Ensure it is strong and unique to keep your account safe.
- Confirm Password: Re-enter the password to confirm.
Once all details are filled in, click the Sign-Up button to complete your registration. After successful sign-up, you should be redirected to the main dashboard, where you can start configuring and managing workflows.
Navigating the Dashboard and Creating Your First Flow
After signing up and logging in to Automatisch, you’ll land on the Flows dashboard. This section is the core area where you can create and manage automation flows. Since it’s a fresh setup, the dashboard will show a message indicating that no flows are currently available. To start building your workflows, click on the Create Flow button. It will open a guided setup where you can configure triggers, set actions, and manage connections to various apps
. The Flows tab on the left sidebar provides easy access to your created workflows, while the My Apps and Executions tabs help manage integrations and monitor workflow performance.
Creating a Workflow: Selecting Apps and Events in Automatisch
To create a workflow in Automatisch, begin by selecting the app and event that will serve as the trigger for your workflow. From the dashboard, click on “Create Flow” and give your workflow a name.
In the “Choose app & event” section, select an app from the list, such as GitHub, Ghost, or Disqus.
After selecting an app, choose a specific trigger event associated with it, like “New issues,” “New pull requests,” or “New stargazers” for GitHub. This step defines when the workflow will be activated. Once the trigger is set, proceed to configure additional steps or actions based on this event to build a complete workflow.
To complete the setup of your workflow in Automatisch, you need to finalize the trigger settings. After selecting the trigger app and event (e.g., GitHub and “New issues”), specify the frequency of checks (like “Every 15 minutes”). Next, choose a connection to link Automatisch with the selected app. You can also test the trigger to make sure that Automatisch will get notifications when you specify those events. After that, click “Continue” to go on using this setup; your workflow will begin to perform the correct actions when your trigger event happens, making for easy and specific automation based on your needs.
In this step, you can fine-tune the trigger settings for your workflow in Automatisch. After selecting the trigger event (like “New issues” in GitHub), you’re presented with options to specify which types of issues should activate the workflow. You can choose from a variety of conditions, such as “Any issue you can see,” “Only issues assigned to you,” or “Only issues created by you.” These filters allow for targeted automation, ensuring that the workflow only initiates for specific issues relevant to your requirements.
Once you’ve made your selections, proceed to confirm the setup, and your workflow will be ready to monitor for the defined triggers.
In this step, you configure the workflow trigger by selecting specific parameters within the Automatisch interface. Here, the chosen trigger is connected to GitHub, where you can select an event, such as “New issues,” as the basis for the workflow. You can then refine the trigger by specifying criteria, like limiting the workflow to issues assigned to you, issues you’ve created, or any issue you can view. After selecting the event type, the “Test Trigger” button allows you to simulate the event, ensuring that Automatisch correctly identifies the setup. This configuration enables customized automation, responding precisely to your workflow requirements.
Step 5: Testing and Troubleshooting
Testing Basic Functionality
Set up a simple workflow to test that Automatisch is working correctly. For example, configure a workflow that sends a notification when triggered.
Common Troubleshooting
Docker Permissions: If you’re having permission errors with Docker, try adding a user to the Docker group.
sudo usermod -aG docker $USER
- Log out and back in for this to take effect.
- Environment Variable Issues: Verify all values in .env are correct, particularly database credentials and JWT_SECRET.
Accessing Logs
If issues arise, check the Docker logs:
docker-compose logs
Step 6: Securing Your Installation
Enabling HTTPS with Let’s Encrypt
For production deployments, it’s important to secure Automatisch with HTTPS. Set up a reverse proxy with Nginx and generate a Let’s Encrypt certificate.
Install Nginx:
sudo apt install nginx -y
Configure Nginx to proxy traffic to Automatisch, then use Certbot to enable HTTPS.
Firewall Configuration
Use ufw to allow access only to necessary ports:
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
Regular Maintenance and Updates
To keep Automatisch and Docker containers updated, regularly pull the latest code:
git pull origin main
docker-compose down && docker-compose up -d
Conclusion
Now you can start creating automatic workflows to your specific needs with Automatisch running. Update Automatisch and your Docker environment regularly to receive the best experience. Now, you’re armed with a powerful self-hosted automation solution that boosts productivity while allowing you to retain control of your data.
About the writer
This article was written by Vinayak Baranwal, For more insightful content or collaboration opportunities, feel free to connect with Vinayak on LinkedIn through the provided link.