The CloudSOE WooCommerce image is a zero-touch online store: WordPress with the WooCommerce plugin and Storefront theme, on the same hardened Apache/PHP/MariaDB stack as our WordPress image. There is no web installer — on first boot the VM installs WordPress unattended with wp-cli, activates WooCommerce and Storefront, and generates a unique store admin password for you. You log in and land in the WooCommerce setup wizard.
What you’ll need
- An Azure subscription
- An SSH public key (password login is disabled in the image)
- About ten minutes
Step 1 — Create the VM
- Find the CloudSOE WooCommerce offer in the Azure Marketplace and click Create.
- Choose a resource group, region and VM name.
- Pick a size — 2 vCPU / 4 GB (for example
Standard_B2sorStandard_D2as_v4) suits most stores. - Under Administrator account, select SSH public key, pick a username (e.g.
azureuser) and paste your key. This account is the uid-1000 admin user that owns the credentials file and the site files over SFTP. - Create or attach a public IP so you can reach the store. For production, make it Static so the address survives stop/start.
Step 2 — Open the firewall ports
In the VM’s network security group, allow inbound:
| Port | Protocol | Purpose |
|---|---|---|
| 22 | TCP | SSH and SFTP administration |
| 80 | TCP | HTTP (redirects to the store) |
| 443 | TCP | HTTPS (the store) |
Restrict port 22 to your own IP range where possible.
Step 3 — Let first boot finish
Two one-time services run in sequence on the very first boot, before Apache serves a single page:
wordpress-firstbootcreates the database, writeswp-config.phpwith fresh salts, and generates a self-signed TLS certificate for your public IP.woocommerce-firstbootthen installs WordPress core unattended, activates the Storefront theme and the WooCommerce plugin, sets pretty permalinks and generates your store admin password.
This usually completes within a minute or two. You can watch it:
ssh <admin-user>@<public-ip>
systemctl status wordpress-firstboot woocommerce-firstboot
Step 4 — Retrieve your credentials
SSH in with the admin username you chose at deployment. The login banner (MOTD) shows your store URLs and points at the credentials file:
sudo cat /opt/wordpress/default-wordpress-credentials.txt
This file (mode 600) holds the generated MariaDB password and the WordPress admin login created on first boot (user admin plus a random password). Change the admin password after your first login.
Step 5 — Log in to your store
Your store is already installed — no setup screens. From your own machine (note: an Azure VM often cannot reach its own public IP from inside), browse to:
- Storefront:
https://<public-ip>/ - Admin:
https://<public-ip>/wp-admin
Your browser will warn about the self-signed certificate — expected on a fresh instance; see the configuration guide for switching to a trusted certificate and your own domain. Log in to wp-admin with the credentials from the file, and the WooCommerce onboarding wizard walks you through payments, shipping and your first products.
Next steps
- Configure WooCommerce — file locations, wp-cli, database access, HTTPS and domains
- Tips & tricks — backups, performance and troubleshooting