WooCommerce
Deploy WooCommerce, an open source e-commerce plugin for WordPress. Use it to turn WordPress websites into online stores for selling digital and physical products for small-to-large businesses.
1. Deploy WooCommerce
Configure the required options to deploy your instance. For additional customization, add advanced options.
The table maps the Cloud Manager UI fields to their corresponding API/CLI keys (stackscript_data) required for automated deployments.
Base distribution and plan
- Supported distribution: Ubuntu 24.04 LTS
- Recommended plan: You can use all plan types and sizes. However, for production websites, use at least a 4GB Dedicated CPU Compute Instance.
Configuration options
Configure the required options to deploy your instance. For additional customization, add advanced options.
The table maps the Cloud Manager UI fields to their corresponding API/CLI keys (stackscript_data) required for automated deployments.
StackScript ID: 401708
| UI field | API/CLI key | Description |
|---|---|---|
| Required options | ||
| Email address (for the Let's Encrypt SSL certificate) | soa_email_address | Your email address to use when configuring the WordPress admin user, generating SSL certificates, and optionally creating DNS records for a custom domain. |
| Webserver stack | webserver_stack | A webserver to use for the WordPress deployment, Apache2, or NGINX. Possible values are: LAMP or LEMP. |
| Website title | site_title | A title for your WordPress site. |
| Admin username | wp_admin_user | A username for your WordPress admin user account. |
| Wordpress database user | wp_db_user | A MariaDB username for the WordPress database user. |
| Wordpress database name | wp_db_name | A name for the WordPress MariaDB database. |
| Limited sudo user | user_name | Your preferred username for the limited sudo user entered without any capital letters, spaces, or special characters. When adding a limited sudo user, the user is created with a strong generated password for your new Linode instance, and the account is assigned to the sudo group, which provides elevated permissions when running commands with the sudo prefix.Note: For easier and more secure access with the sudo user, add an account SSH key for the Cloud Manager user during deployment and select that user as an |
| Advanced options | ||
| Disable root access over SSH | disable_root | Applies to a limited sudo user. To block the root user from logging in over SSH, select Yes. Defaults to No. Note: When you disable the root user from logging in over SSH and don't provide a valid Account SSH Key assigned to the |
| Linode API token | token_password | Applies to a custom domain. The Linode API token if you want to use Linode’s DNS Manager to manage DNS records for your custom domain. Follow Manage personal access tokens to get your token on your account with Read/Write access to Domains.
|
| Subdomain | subdomain | Applies to a custom domain. The subdomain you want to use, like blog for blog.example.com. Use it only if you specify a Domain. |
| Domain | domain | Applies to a custom domain. The domain name you want to use, like example.com. Use it only if you specify a Linode API token. |
| Optional data exporter Add-ons | add_ons | An option to include add-ons for your deployment. Possible values are:
|
Notes:
- After the app deployment completes, the passwords for your WordPress admin user, WordPress database user, MariaDB root user, and limited sudo user are generated and stored in the
/home/$USERNAME/.credentialsfile. Log in to your instance asrootthrough the Lish console or SSH, then runcat /home/$USERNAME/.credentialsto view the password.- You can automatically configure a custom domain (optional) during deployment. To do that:
- Configure your domain to use Linode’s name servers via your registrar. See Configure your domain's authoritative name servers for details.
- Once you complete that, specify the Linode API token, subdomain, and domain for the app in Cloud Manager or via API/CLI/Terraform.
Use API, CLI, or Terraform
In addition to deploying the app to a new Linode instance via Cloud Manager, you can also use the Linode API, CLI, or Terraform. When running the operation, you need to provide the StackScript ID, supported Linux distribution, and app-specific fields along with the standard Linode deployment configurations.
Note: Generate a personal access token to authenticate your API, CLI, or Terraform requests.
curl --location 'https://api.linode.com/v4/linode/instances' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer abc123def456hij789klm' \
--data-raw '{
"region": "us-east",
"type": "g6-standard-2",
"image": "linode/ubuntu24.04",
"label": "my-woocommerce-one-click-app",
"root_pass": "@C0mpl3x#P@ssw0rd",
"stackscript_id": 401708,
"stackscript_data": {
"soa_email_address":"jsmith@example.com",
"webserver_stack":"LAMP",
"site_title":"My Site",
"wp_admin_user":"jsmith-admin",
"wp_db_user":"jsmith-database",
"wp_db_name":"My Database",
"user_name":"jsmith"
}
}'linode-cli linodes create \
--region us-east \
--type g6-standard-2 \
--label my-woocommerce-one-click-app \
--image linode/ubuntu24.04 \
--root_pass @C0mpl3x#P@ssw0rd \
--stackscript_id 401708 \
--stackscript_data '{"soa_email_address":"jsmith@example.com", "webserver_stack":"LAMP", "site_title":"My Site", "wp_admin_user":"jsmith-admin", "wp_db_user":"jsmith-database", "wp_db_name":"My Database", "user_name":"jsmith"}'resource "linode_instance" "my-linode" {
region = "us-east"
type = "g6-standard-2"
label = "my-woocommerce-one-click-app"
image = "linode/ubuntu24.04"
root_pass = "@C0mpl3x#P@ssw0rd"
stackscript_id = 401708
stackscript_data = {
"soa_email_address" = "jsmith@example.com"
"webserver_stack" = "LAMP"
"site_title" = "My Site"
"wp_admin_user" = "jsmith-admin"
"wp_db_user" = "jsmith-database"
"wp_db_name" = "My Database"
"user_name" = "jsmith"
}
}2. Access WordPress
Once you've deployed your app in Cloud Manager and fully installed it, get credentials to access the WordPress Admin Dashboard and start using it.
Get credentials
-
Log in to your new Linode instance using one of these methods:
- Lish console. Within Cloud Manager, navigate to Linodes from the left menu, select the Linode instance you just deployed, and click the Launch LISH Console button. Log in as the
rootuser. See Accessing your system console using Lish. - SSH. Log in to your Linode instance over SSH using the
rootuser. See Connecting to a remote server over SSH for details.
- Lish console. Within Cloud Manager, navigate to Linodes from the left menu, select the Linode instance you just deployed, and click the Launch LISH Console button. Log in as the
-
Once logged in, access the credentials file by running
cat /home/$USERNAME/.credentials.The command displays the file contents, including the passwords generated when the instance was deployed. Once you save these, you can safely delete the file.
Access dashboard
-
Open your web browser and navigate to
https://[domain]/wp-admin/, where you can replace [domain] with the custom domain entered during deployment or your Linode instance’s rDNS domain, like192-0-2-1.ip.linodeusercontent.com.You can also use your IPv4 address. However, the connection won't be secure. See the Manage IP addresses on a Linode guide for information on viewing IP addresses and rDNS.
Note: A TLS/SSL certificate is automatically generated for your custom domain, enabling you to connect to the site over the
httpsprotocol. If you don't enter a custom domain, a TLS/SSL certificate is configured on the rDNS domain instead. Connections using your IP address aren't secured and will use thehttpprotocol. -
Within the WordPress login page, enter the username (admin username) created during your instance deployment and the password automatically generated for this username. Then click Log In.
-
Once you're logged in to the WordPress Admin Dashboard, create new posts, add users, modify the theme, and adjust any other settings.
View your website
Open a web browser and navigate to https://[domain], replacing [domain] with the custom domain you entered during deployment or your Linode instance’s IPv4 address or rDNS domain. You should be able to view your WordPress site.
Configure the setup wizard
After logging in to the WordPress Admin interface, initiate the WooCommerce setup wizard. To do that:
-
Click the Start selling button within the WooCommerce Setup banner that appears on the dashboard.
You can also initiate the setup wizard by hovering over WooCommerce on the left menu and selecting Home.
-
Follow each step of the setup wizard. This includes specifying your store address details, the industry, the types of products you intend to sell, as well as providing additional business details and selecting a theme.
Note: Some WooCommerce features and themes require a monthly or yearly paid subscription. When going through the setup wizard, check the cost of any optional features you select.
-
Depending on the options you select, you may be asked to create a Jetpack account or connect your existing account.
This enables you to use Jetpack’s suite of tools within WordPress. Jetpack offers a free tier and multiple paid tiers. See Jetpack Pricing for details.
You can safely ignore this screen if you don't want to use Jetpack services.
-
Once the setup wizard has finished, you're taken to WooCommerce > Home within your WordPress Admin dashboard.
From here, you're presented with a checklist of tasks you may need to complete before selling products. This includes adding products, setting up a payment processor, creating tax rules, and more.
Email restrictions on Akamai CloudOutbound connections on ports 25, 465, and 587 are blocked by default on Linode instances for some new accounts to help reduce spam originating from our platform. These restrictions prevent applications from sending email. If you intend to send email from a Linode instance, review the Send email on Akamai Cloud guide to learn more about our email policies and to request the removal of these restrictions.
Additional resources
For more information about adding and modifying content in WordPress, see their official documentation.
- WordPress Documentation
- WordPress Themes
- WooCommerce Documentation
- Introduction to eCommerce for WordPress
- New Store Owners Guide
- WooCommerce Storefront Theme
- WooCommerce Extensions
Note that we can't vouch for the accuracy or timeliness of externally hosted resources.
For information about securing WordPress through HTTPS, using a secure password, changing the admin username, and more, see our official documentation.
Updated 19 days ago
