Skip to content

Installation

docker compose up alone is not enough — two things are gitignored and must exist before bringing the stack up:

  • abcnorio-meta/.env — compose interpolation vars (secrets, host paths, group IDs)
  • wp/dev/bedrock/ and wp/staging/bedrock/ — gitignored; scaffolded by bedrock-bootstrap.sh via composer create-project roots/bedrock; not in the repo

Host requirements: docker, composer, node / npm (used by bootstrap).

Step 1 — Clone abcnorio-meta and run the installer

Section titled “Step 1 — Clone abcnorio-meta and run the installer”
Terminal window
mkdir ~/abcnorio.org && cd ~/abcnorio.org
git clone git@github.com:…/abcnorio-meta.git
cd abcnorio-meta
bash install.sh

install.sh clones the three sibling repos, copies all .sample env files, and runs bedrock-bootstrap.sh (scaffolds Bedrock for dev + staging, runs composer install, builds plugin JS).

All gitignored env files are now created from samples. Fill in real values:

Terminal window
$EDITOR .env # host paths, domain names, secrets (compose interpolation)
$EDITOR wp/runtime.env # shared WP: salts, DB creds, cache TTL
$EDITOR wp/dev.env # dev WP: DB_NAME, WP_HOME, WP_SITEURL, save-trigger vars
$EDITOR wp/staging.env # staging WP: same
$EDITOR wp/dev/bedrock/.env # Bedrock dev: DB connection + salts
$EDITOR wp/staging/bedrock/.env # Bedrock staging: same

In .env, set ABCNORIO_FUNC_HOST_DIR to your local abcnorio-func repo path. Dev WordPress mounts it directly at web/app/plugins/abcnorio-func for live plugin edits.

Terminal window
cd abcnorio-meta
docker compose up -d --build

Builds custom images (astro, astro-staging, astro-prod, deploy-orchestrator, wp_dev, wp_staging) and starts all services.

Step 4 — WordPress install or DB restore

Section titled “Step 4 — WordPress install or DB restore”

On a fresh install, visit WP_HOME/wp/wp-admin/install.php for each WP env, or restore from a backup:

Terminal window
docker exec -i mariadb mysql -u root -p<password> <dbname> < backup.sql

Run Composer from container context:

Terminal window
cd abcnorio-meta
just composer staging update madeofpeople/abcnorio-func

When bumping madeofpeople/abcnorio-func semver and running update in staging Bedrock directly:

Terminal window
cd abcnorio-meta/wp/staging/bedrock
composer update madeofpeople/abcnorio-func

Release requirement: the plugin tag must already contain resources/vendor/components/dist so staging does not depend on post-install builds.