WordPress + Setyenv: no-code apps, workflow automation, AI agent. Community Edition free.
2.9K
Setyenv turns a WordPress site into a self-hosted automation and low-code platform: a visual workflow engine (WP-PFWorkflow), an AI agent that builds and drives workflows in plain language (WP-PFAgent), and a no-code / low-code data platform (WP-PFManagement). Everything runs on your own server, with your own database and your own LLM keys — no SaaS in the middle.
This image is WordPress with the three plugins installed and activated, a built-in cron, and updates through the Setyenv update channel.
The image runs on its own. Docker Desktop's Run button, or
docker run -d -p 8080:80 --name setyenv setyenv/setyenv
# open http://localhost:8080 and complete the WordPress install
No database to set up: when no WORDPRESS_DB_HOST is given, the container
starts an embedded MariaDB (bound to 127.0.0.1, its files in the
/var/lib/mysql volume) and WordPress uses it. Everything of yours lives in
two volumes, /var/www/html and /var/lib/mysql; name them to keep the site
across container re-creation:
docker run -d -p 8080:80 --name setyenv \
-v setyenv_html:/var/www/html -v setyenv_db:/var/lib/mysql setyenv/setyenv
With your own database (an existing MariaDB/MySQL, or a separate
container), pass the usual WORDPRESS_DB_* variables and the embedded one
never starts:
services:
setyenv:
image: setyenv/setyenv:latest
ports:
- "8080:80"
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_NAME: wordpress
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: change-me
# SETYENV_LICENSE_KEY: "PFL3.…" # Enterprise Edition (optional)
volumes:
- html:/var/www/html
depends_on:
- db
restart: unless-stopped
db:
image: mariadb:11
environment:
MARIADB_DATABASE: wordpress
MARIADB_USER: wordpress
MARIADB_PASSWORD: change-me
MARIADB_ROOT_PASSWORD: change-me-too
volumes:
- db:/var/lib/mysql
restart: unless-stopped
volumes:
html:
db:
docker compose up -d
# open http://localhost:8080 and complete the WordPress install
If that database already holds a WordPress site, the image leaves the site as it is apart from activating the three plugins: its theme, its pages and posts and its login screen are not touched. The home screen (below) is only set on a site the image installs itself.
There are no default credentials. The image ships no administrator and no
preset password: the first visit to the site opens the standard WordPress
installer, where you choose the site title and create your own administrator
account, the only administrator the site has. wp-admin is at
http://localhost:8080/wp-admin/ (or your own host name).
Right after the install, WP-PFManagement seeds a demo Agile project to explore,
and with it two demo people, demo.ana and demo.pablo: WordPress
subscriber accounts with random passwords and no email address. They
cannot log in until an administrator resets their password
(Users → Edit → Set New Password).
The embedded database needs nothing from you either: its password is generated
inside the container on the first start, kept with the data
(/var/lib/mysql/.setyenv-db-password, readable by root only) and handed to
WordPress through the environment.
Anything that promises a built-in admin/password for this image is not
from us.
The image has no mail server (MTA). WordPress's own mail (password resets, notifications) and the email steps of workflows go out through WordPress, so they need an SMTP plugin or an SMTP relay configured in WordPress; until there is one, no mail leaves the site.
SETYENV_LICENSE_KEY or
paste the key under Setyenv → License in wp-admin; one key licenses both
WP-PFManagement and WP-PFWorkflow. Same code, only the key differs.Subscriptions and keys: https://setyenv.com/#pricing
| Component | What it does |
|---|---|
| WP-PFWorkflow | Visual workflow builder and engine: triggers, conditions, loops, HTTP, email, WooCommerce, PFM records, remote jobs. A Zapier / n8n style automation engine that lives in WordPress. |
| WP-PFAgent | AI agent (bring your own LLM provider keys) that inspects your site and designs workflows and data models from a sentence. Free software (GPL-2.0). |
| WP-PFManagement | No-code data platform: entities, forms, lists, business rules, row-level security, REST API. Ships ready-made packages to start from. |
| wp-executor | Optional open-source host-side runner for jobs published by workflows. |
PHP imap | For the WP-PFManagement inbox poller (email to records). |
| Home screen | Catch Fullscreen theme with a full-screen header image, one Start menu entry into the PFM app, and LoginPress on the login screen — the same look as our own sites, with the theme's font (Poppins, SIL Open Font License) served by the site itself, never fetched from Google. Set once, on a site the image installs; change anything you like afterwards. |
| Built-in cron | wp-cron.php every 3 minutes (SETYENV_CRON_SECONDS), off-request. |
| Embedded MariaDB | Starts inside the container when no WORDPRESS_DB_HOST is given (bound to 127.0.0.1, data in /var/lib/mysql). Never starts when you bring your own database. |
| Variable | Default | Meaning |
|---|---|---|
WORDPRESS_DB_* | — | Same as the official WordPress image. |
SETYENV_LICENSE_KEY | empty | Enterprise key; empty means Community Edition. |
SETYENV_CRON_SECONDS | 180 | Built-in cron cadence in seconds (minimum 60). |
Every other option of the official wordpress image (WORDPRESS_CONFIG_EXTRA,
WORDPRESS_TABLE_PREFIX, …) works unchanged.
latest — the newest suite.<pfm>-<pfw>-<pfa> — the exact plugin versions the image carries, e.g.
1.2.26-1.2.14-1.2.9.The plugins live in the html volume and update through the Setyenv update
channel like on any WordPress (Plugins → Update, or auto-updates). Pull a
newer image for fresh installs; existing sites update in place. Back up the
html and db volumes and the container is disposable.
WordPress · workflow automation · AI agent · no-code · low-code · business process automation · Zapier alternative · n8n alternative · ServiceNow alternative · self-hosted · docker · setyenv
Content type
Image
Digest
sha256:fb76c6c98…
Size
345.2 MB
Last updated
17 days ago
docker pull setyenv/setyenv