Reviewed-on: #62
Wordpress
Coöp Cloud + Wordpress = 🥳
- Category: Apps
- Status: 4
- Image:
wordpress, 4, upstream - Healthcheck: Yes
- Backups: Yes
- Email: 3
- Tests: 2
- SSO: No
Quick start
abra app new wordpressabra app config <app-name>abra app secret generate -a <app-name>abra app deploy <app-name>abra app cmd <app-name> app core_install
Authentik Integration
abra app config <app-name>
Configure the following envs:
COMPOSE_FILE="$COMPOSE_FILE:compose.authentik.yml"
AUTHENTIK_DOMAIN=authentik.example.com
AUTHENTIK_SECRET_NAME=authentik_example_com_wordpress_secret_v1 # the same as in authentik
AUTHENTIK_ID_NAME=authentik_example_com_wordpress_id_v1 # the same as in authentik
abra app cmd <app-name> app set_authentik
Running WP-CLI
abra app cmd <app-name> app wp -- core check-update --major
Network (Multi-site)
- Set up as above
abra app config <app-name>, and uncomment#MULTISITE=enableabra app deploy <app-name>- Log into the Wordpress admin dashboard, go to Tools » Network Setup
- Don't worry about the suggested file changes
abra app config <app-name>again and setMULTISITEto eithersubdomainorsubfolderdepending on your setup.abra app deploy <app-name>
Installing a custom theme
abra app cp <app-name> ~/path/to/local/theme wordpress:/var/www/html/wp-content/themes/
There is a local or remote SMTP relay configuration available.
- local:
COMPOSE_FILE=compose.yml:compose.mailrelay.yml - remote:
COMPOSE_FILE=compose.yml:compose.mailrelay.yml:compose.smtp.yml
Below are the instructions for the local relay.
- Deploy
postfix-relay abra app config <app-name>, and uncomment the email lines; changeMAIL_FROMto make sure the domain is the same aspostfix-relay's$DOMAINor in its$EXTRA_SENDER_DOMAINSabra app deploy <app-name>
Tests
Run the full test suite:
bash tests/run.sh
Prerequisites
The test suite uses several tools. Install them with your equivalent of:
brew install shellcheck gomplate
Some tests skip gracefully if their dependencies are missing.
Migrate from a non-Co-op Cloud Wordpress install
Make a .tar.gz backup of the site's wp-content dir and an .sql.gz backup of the database.
abra app wp.example.com restore app wp-content.tar.gzabra app wp.example.com restore db wordpress.sql.gz
Lastly, if there's a domain name change, run a search and replace:
abra app wp.example.com wp "search-replace https://old.example.com https://wp.example.com"