LIVEReading: Run StackStorm: Event-Driven Automation on LinuxTotal time: 12 minSteps: 7Worked first time: 62% LIVEReading: Run StackStorm: Event-Driven Automation on LinuxTotal time: 12 minSteps: 7Worked first time: 62%
CBW
Run StackStorm: Event-Driven Automation on Linux
Spicygithub.com/StackStorm/st22026-07-16

Run StackStorm: Event-Driven Automation on Linux

StackStorm lets you automate IT responses to events — like auto-fixing alerts or triggering deployments — using a single installer on Linux. Think IFTTT, but for servers and ops teams.

// Build stats

  • Total time12 min
  • Number of steps7
  • DifficultySpicy
  • Worked first time62%
// Before you start

What you need

  • A clean 64-bit Linux server (Ubuntu 20.04/22.04 or RHEL/CentOS 8 recommended)
  • At least 2 CPU cores, 4 GB RAM, 10 GB free disk
  • Root or sudo access to the server
  • Basic comfort running commands in a terminal
  • A modern browser to access the web UI
01
Step 1 of 7

Confirm your Linux server meets requirements

3 min

StackStorm is a multi-component platform — it runs RabbitMQ, MongoDB, PostgreSQL, and several Python services all on one box. A fresh, clean server avoids port conflicts and dependency clashes. If you are using a cloud VM (AWS, DigitalOcean, etc.), a fresh Ubuntu 20.04 or 22.04 instance works best. Make sure nothing else is already running on ports 80 or 443.

Terminal · mac
$ free -h && df -h / && lsb_release -a
What you should see
You should see at least 3.5G available RAM, 8G+ free disk space, and your Linux distribution name and version.
This might happen

Running on a server that already has Nginx, Apache, or another database installed can cause the installer to fail silently.

Use a truly fresh VM. Snapshot or back up any existing server before proceeding.

02
Step 2 of 7

Run the one-line installer

15 min

This single command downloads and runs the official StackStorm installer script. It installs all dependencies (MongoDB, RabbitMQ, PostgreSQL, Nginx), sets up all StackStorm services, and creates an admin user with the password you provide. Replace 'Ch@ngeMe' with a strong password of your choice — you will use it to log in. The script takes 10–15 minutes and prints progress as it goes.

Terminal · mac
$ curl -sSL https://stackstorm.com/packages/install.sh | bash -s -- --user=st2admin --password=Ch@ngeMe
What you should see
The script prints step-by-step progress. At the end you should see a success message with your StackStorm URL, something like: 'StackStorm is installed and ready. Go to https://YOUR-IP/'. No red ERROR lines.
This might happen

The script may fail if your server cannot reach the internet to download packages, or if SELinux is enforcing on RHEL/CentOS.

Check your firewall rules allow outbound HTTPS. On RHEL/CentOS, run 'sudo setenforce 0' before the installer, then re-enable after reviewing the SELinux docs at docs.stackstorm.com.

03
Step 3 of 7

Verify all services are running

2 min

StackStorm runs as several background services. This command checks that they all started correctly. If any service shows 'failed' or 'inactive', the platform will not work properly.

Terminal · mac
$ st2ctl status
What you should see
Each service listed (st2actionrunner, st2api, st2auth, st2stream, st2rulesengine, st2timersengine, st2workflowengine, st2notifier, st2sensorcontainer) should show 'is running'.
This might happen

One or more services show as 'not running' or 'failed'.

Run 'sudo st2ctl restart' to attempt a full restart. Then run 'st2ctl status' again. If still failing, check logs with 'sudo tail -50 /var/log/st2/st2api.log'.

04
Step 4 of 7

Log in and run your first action from the CLI

3 min

The 'st2' command-line tool lets you interact with StackStorm directly. First you authenticate with the admin credentials you set during install. Then you run a simple built-in action to confirm everything works end-to-end. This 'core.echo' action just echoes a message back — it is the 'Hello World' of StackStorm.

Terminal · mac
$ st2 login st2admin -p 'Ch@ngeMe' && st2 run core.echo message='Hello StackStorm'
What you should see
After login you see a token confirmation. After the run command you see 'status: succeeded' and 'result.result: Hello StackStorm'.
This might happen

You get 'Connection refused' or 'Unable to connect to ST2 API'.

The API service may still be starting. Wait 30 seconds and try again. If it persists, run 'sudo st2ctl restart st2api'.

05
Step 5 of 7

Open the web UI in your browser

2 min

StackStorm includes a web dashboard called StackStorm Web UI (st2web). You can browse actions, view execution history, manage rules, and trigger actions manually — all without the command line. Navigate to your server's IP address in a browser. Your browser will warn about a self-signed SSL certificate; click through to proceed.

Terminal · mac
$ echo "Open https://$(hostname -I | awk '{print $1}') in your browser"
What you should see
Your terminal prints the URL to open. In the browser you see a StackStorm login page. Log in with username 'st2admin' and the password you set.
This might happen

Browser shows 'This site can't be reached' or the page does not load.

Check that port 443 is open in your server's firewall or cloud security group. On Ubuntu run: 'sudo ufw allow 443'. On AWS/GCP, update the inbound rules in your security group.

06
Step 6 of 7

Install an integration pack from the Exchange

5 min

Packs are pre-built integrations — there are 160+ covering Slack, AWS, GitHub, PagerDuty, Jira, and more. This example installs the Slack pack so StackStorm can send messages to your Slack workspace. Browse all available packs at https://exchange.stackstorm.org. Replace 'slack' with any pack name you want.

Terminal · mac
$ st2 pack install slack
What you should see
You see download and install progress, ending with 'Install complete.' and the pack listed when you run 'st2 pack list'.
This might happen

Install fails with a permissions or git error.

Make sure your server has outbound access to GitHub (port 443). If behind a proxy, set the HTTPS_PROXY environment variable before running the command.

07
Step 7 of 7

Explore pack actions and read the docs

5 min

Now that a pack is installed, you can see all the actions it provides. Each action has parameters you can pass. The full documentation at docs.stackstorm.com covers how to create rules (which connect triggers to actions automatically), write workflows, and set up ChatOps. This is where the real power of StackStorm begins — but it does require reading the docs and editing YAML config files.

Terminal · mac
$ st2 action list --pack=slack
What you should see
A table listing all Slack actions, such as 'slack.post_message', with a short description of each.
// Status

cooked. baked. worked.

A fully running StackStorm instance on your Linux server, accessible via web UI and CLI, with at least one integration pack installed and a confirmed working action execution.

// the honest bit

The honest part

StackStorm is a serious enterprise automation platform, not a weekend toy. The installer handles the hard part, but actually building useful automations — writing rules, workflows, and configuring pack credentials — requires reading YAML files and the documentation. Expect a learning curve of several hours before your first real automation runs. The platform also consumes significant server resources; do not run this on a shared or low-memory machine. Community support is available on Slack and the forum, but response times vary.