From dd948d4ba19187a743c84d0a864f59df18c01a1d Mon Sep 17 00:00:00 2001 From: Ben Word Date: Tue, 21 Apr 2026 21:23:23 -0500 Subject: [PATCH 1/2] Ubuntu 26.04 --- trellis/cli.md | 4 ++-- trellis/deploy-to-digitalocean.md | 6 +++--- trellis/installation.md | 4 ++-- trellis/local-development.md | 6 +++--- trellis/python.md | 6 +++--- trellis/remote-server-setup.md | 8 ++++---- 6 files changed, 17 insertions(+), 17 deletions(-) diff --git a/trellis/cli.md b/trellis/cli.md index 7381cce4..ae3f923c 100644 --- a/trellis/cli.md +++ b/trellis/cli.md @@ -150,7 +150,7 @@ Current supported settings: | Setting | Description | Type | Default | | --- | --- | -- | -- | | `manager` | VM manager (Options: `auto` (depends on OS), `lima`)| string | "auto" | -| `ubuntu` | Ubuntu OS version (Options: `18.04`, `20.04`, `22.04`, `24.04`)| string | `24.04` | +| `ubuntu` | Ubuntu OS version (Options: `22.04`, `24.04`, `26.04`)| string | `26.04` | | `hosts_resolver` | VM hosts resolver (Options: `hosts_file`)| string | `hosts_file` | | `images` | Custom OS image | object | Set based on `ubuntu` version | @@ -174,7 +174,7 @@ server: virtualenv_integration: true vm: manager: auto - ubuntu: 24.04 + ubuntu: 26.04 ``` Example env var usage: diff --git a/trellis/deploy-to-digitalocean.md b/trellis/deploy-to-digitalocean.md index 4ae3b575..0e2aeeda 100644 --- a/trellis/deploy-to-digitalocean.md +++ b/trellis/deploy-to-digitalocean.md @@ -1,5 +1,5 @@ --- -date_modified: 2026-04-03 10:00 +date_modified: 2026-04-21 10:00 date_published: 2019-01-07 10:05 description: Deploy Trellis WordPress sites to DigitalOcean servers. Create servers, configure settings, and automate WordPress deployment to DigitalOcean. title: Deploying Trellis to DigitalOcean @@ -11,7 +11,7 @@ authors: [DigitalOcean](https://roots.io/r/digitalocean) is a cloud infrastructure provider that offers virtual servers (droplets) that can handle most normal WordPress sites when provisioned with Trellis. -To provision a server, Trellis requires a server running a bare/stock version of Ubuntu 24.04 LTS. +To provision a server, Trellis requires a server running a bare/stock version of Ubuntu 26.04 LTS. ::: tip ℹ️ If you [signup for DigitalOcean](https://roots.io/r/digitalocean) through the Roots referral link you will receive a free $200 in credit for 2 months, and you help cover the costs of our hosting. @@ -90,7 +90,7 @@ Arguments: Options: --provider Cloud provider (digitalocean, hetzner) --region Region to create the server in - --image (default: ubuntu-24-04-x64) Server image (ie: Linux distribution) + --image (default: ubuntu-26-04-x64) Server image (ie: Linux distribution) --size Server size/type --skip-provision Skip provision after server is created --ssh-key Path to SSH public key to be added on the server diff --git a/trellis/installation.md b/trellis/installation.md index 9788edde..f2ec3c61 100644 --- a/trellis/installation.md +++ b/trellis/installation.md @@ -1,5 +1,5 @@ --- -date_modified: 2026-03-06 13:00 +date_modified: 2026-04-21 10:00 date_published: 2015-10-15 12:20 description: Install Trellis for WordPress projects. Complete setup instructions covering requirements, dependencies, project initialization, and initial configuration. title: Installing Trellis for WordPress @@ -87,7 +87,7 @@ with a single command thanks to trellis-cli too. ### Trellis servers are production-ready -Trellis provisions a base Ubuntu 24.04 server by installing and configuring the following software: +Trellis provisions a base Ubuntu 26.04 server by installing and configuring the following software: * PHP 8.3+ * Nginx (including HTTP/2, HTTP/3, and optional FastCGI micro-caching) diff --git a/trellis/local-development.md b/trellis/local-development.md index 9e50e9c8..c7d92d11 100644 --- a/trellis/local-development.md +++ b/trellis/local-development.md @@ -1,5 +1,5 @@ --- -date_modified: 2023-01-27 13:17 +date_modified: 2026-04-21 10:00 date_published: 2015-10-15 12:24 description: Trellis uses Lima VM's for local development. Trellis uses Ansible to automatically provision virtual machines running complete WordPress environments. title: Local WordPress Development with Trellis @@ -86,11 +86,11 @@ For the common use case, the default configuration should be all that's needed w The CLI [config file](cli.md#configuration) (global or project level) supports a new `vm` option. The only useful config option right now is `ubuntu` for setting the Ubuntu version. -Here's an example of specifying 20.04: +Here's an example of specifying 24.04: ```yml vm: - ubuntu: 20.04 + ubuntu: 24.04 ``` Note: this must be changed _before_ creating the VM, otherwise you'll need to delete it first and re-create it. diff --git a/trellis/python.md b/trellis/python.md index 7e0ae2a9..f2a595df 100644 --- a/trellis/python.md +++ b/trellis/python.md @@ -1,5 +1,5 @@ --- -date_modified: 2023-01-27 13:17 +date_modified: 2026-04-21 10:00 date_published: 2022-02-28 22:16 description: Install and configure Python for using Trellis. Python is required for Ansible automation that powers WordPress server provisioning and deployment. title: Python Requirements for Trellis @@ -62,10 +62,10 @@ $ python3 -m ensurepip ### Ubuntu -Ubuntu 20.04 comes default with Python 3 available as `python3` +Ubuntu 26.04 comes default with Python 3 available as `python3` only. There's no "unversioned" `python`. -The [`python-is-python3`](https://packages.ubuntu.com/focal/python-is-python3) package +The [`python-is-python3`](https://packages.ubuntu.com/resolute/python-is-python3) package exists solely as an easy way to symlink `/usr/bin/python` to `python3`. ```shell diff --git a/trellis/remote-server-setup.md b/trellis/remote-server-setup.md index 08b44fb5..3f2f4624 100644 --- a/trellis/remote-server-setup.md +++ b/trellis/remote-server-setup.md @@ -1,7 +1,7 @@ --- -date_modified: 2024-09-11 10:00 +date_modified: 2026-04-21 10:00 date_published: 2015-10-15 12:27 -description: Set up remote servers for Trellis requiring bare Ubuntu 24.04 LTS installation on VPS or dedicated servers. Shared hosting is not supported. +description: Set up remote servers for Trellis requiring bare Ubuntu 26.04 LTS installation on VPS or dedicated servers. Shared hosting is not supported. title: Remote Server Setup for WordPress with Trellis authors: - ben @@ -42,10 +42,10 @@ See the [CLI docs](/trellis/docs/cli/) for more details on configuring your clou ## Server requirements -* Ubuntu 24.04 LTS +* Ubuntu 26.04 LTS * SSH access to the server -You need a server running a bare/stock version of Ubuntu 24.04 LTS. If you're using a host such as DigitalOcean that lets you pick an OS to start with, then select the Ubuntu 24.04 option. +You need a server running a bare/stock version of Ubuntu 26.04 LTS. If you're using a host such as DigitalOcean that lets you pick an OS to start with, then select the Ubuntu 26.04 option. You need to be able to connect to your Ubuntu server from your local computer via SSH. We *highly* suggest doing this via SSH keys so you don't have to specify a password every time. Many hosts offer to automatically add your SSH key when creating a server, so take advantage of that. From 2e8f286ebb5088645962ee5aa4e2f93cf1583803 Mon Sep 17 00:00:00 2001 From: Ben Word Date: Tue, 3 Nov 2026 10:35:36 -0500 Subject: [PATCH 2/2] Keep 24.04 documented as supported, note Trellis v1.33.0 for 26.04 - Server requirements: Ubuntu 26.04 LTS (recommended) or 24.04 LTS - Local development: older Trellis versions need `ubuntu: 24.04`, and the first boot of a 26.04 VM takes about 2 minutes longer - Installation: Trellis uses msmtp for mail, not sSMTP - Troubleshooting: Trellis v1.33.0+ removes stale MariaDB and legacy .list repositories itself Co-Authored-By: Claude Opus 5.5 --- trellis/cli.md | 2 +- trellis/deploy-to-digitalocean.md | 4 ++-- trellis/installation.md | 2 +- trellis/local-development.md | 10 +++++++++- trellis/python.md | 2 +- trellis/remote-server-setup.md | 8 ++++---- trellis/troubleshooting.md | 4 ++-- 7 files changed, 20 insertions(+), 12 deletions(-) diff --git a/trellis/cli.md b/trellis/cli.md index 03ee562f..242ca37b 100644 --- a/trellis/cli.md +++ b/trellis/cli.md @@ -1,5 +1,5 @@ --- -date_modified: 2024-09-11 10:00 +date_modified: 2026-11-03 10:00 date_published: 2023-04-05 07:42 description: Use the Trellis CLI to manage WordPress projects via the `trellis` command. Simplifies provisioning servers, deploying sites, and common Trellis tasks. title: Trellis CLI Command-Line Interface diff --git a/trellis/deploy-to-digitalocean.md b/trellis/deploy-to-digitalocean.md index ad7a179b..a9c7a5eb 100644 --- a/trellis/deploy-to-digitalocean.md +++ b/trellis/deploy-to-digitalocean.md @@ -1,5 +1,5 @@ --- -date_modified: 2026-04-21 10:00 +date_modified: 2026-11-03 10:00 date_published: 2019-01-07 10:05 description: Deploy Trellis WordPress sites to DigitalOcean servers. Create servers, configure settings, and automate WordPress deployment to DigitalOcean. title: Deploying Trellis to DigitalOcean @@ -11,7 +11,7 @@ authors: [DigitalOcean](https://www.digitalocean.com/?refcode=09f11cfb5bac) is a cloud infrastructure provider that offers virtual servers (droplets) that can handle most normal WordPress sites when provisioned with Trellis. -To provision a server, Trellis requires a server running a bare/stock version of Ubuntu 26.04 LTS. +To provision a server, Trellis requires a server running a bare/stock version of Ubuntu 26.04 LTS (recommended) or 24.04 LTS. ::: tip ℹ️ If you [signup for DigitalOcean](https://www.digitalocean.com/?refcode=09f11cfb5bac) through the Roots referral link you will receive a free $200 in credit for 2 months, and you help cover the costs of our hosting. diff --git a/trellis/installation.md b/trellis/installation.md index c65506ff..472cbb40 100644 --- a/trellis/installation.md +++ b/trellis/installation.md @@ -97,7 +97,7 @@ Trellis provisions a base Ubuntu 26.04 server by installing and configuring the * Let's Encrypt for free SSL certificates * Composer * WP-CLI -* sSMTP (mail delivery) +* msmtp (mail delivery) * Memcached * Fail2ban and ferm diff --git a/trellis/local-development.md b/trellis/local-development.md index c7d92d11..2982600a 100644 --- a/trellis/local-development.md +++ b/trellis/local-development.md @@ -1,5 +1,5 @@ --- -date_modified: 2026-04-21 10:00 +date_modified: 2026-11-03 10:00 date_published: 2015-10-15 12:24 description: Trellis uses Lima VM's for local development. Trellis uses Ansible to automatically provision virtual machines running complete WordPress environments. title: Local WordPress Development with Trellis @@ -95,6 +95,14 @@ vm: Note: this must be changed _before_ creating the VM, otherwise you'll need to delete it first and re-create it. +::: warning +Ubuntu 26.04 requires Trellis v1.33.0 or later. If your project uses an older version of Trellis, set `ubuntu: 24.04`, or update Trellis first. +::: + +::: tip +The first boot of a new Ubuntu 26.04 VM takes about 2 minutes longer while it waits for the network to come up. Later starts are fast. +::: + ### Integration details When you first run `trellis vm start`, the CLI will do the following: diff --git a/trellis/python.md b/trellis/python.md index 40bdd66f..6dac6f66 100644 --- a/trellis/python.md +++ b/trellis/python.md @@ -1,5 +1,5 @@ --- -date_modified: 2026-04-21 10:00 +date_modified: 2026-11-03 10:00 date_published: 2022-02-28 22:16 description: Install and configure Python for using Trellis. Python is required for Ansible automation that powers WordPress server provisioning and deployment. title: Python Requirements for Trellis diff --git a/trellis/remote-server-setup.md b/trellis/remote-server-setup.md index b97cecac..2236bcf2 100644 --- a/trellis/remote-server-setup.md +++ b/trellis/remote-server-setup.md @@ -1,7 +1,7 @@ --- -date_modified: 2026-04-21 10:00 +date_modified: 2026-11-03 10:00 date_published: 2015-10-15 12:27 -description: Set up remote servers for Trellis requiring bare Ubuntu 26.04 LTS installation on VPS or dedicated servers. Shared hosting is not supported. +description: Set up remote servers for Trellis requiring a bare Ubuntu 26.04 LTS or 24.04 LTS installation on VPS or dedicated servers. Shared hosting is not supported. title: Remote Server Setup for WordPress with Trellis authors: - ben @@ -42,10 +42,10 @@ See the [CLI docs](/trellis/docs/cli/) for more details on configuring your clou ## Server requirements -* Ubuntu 26.04 LTS +* Ubuntu 26.04 LTS (recommended) or 24.04 LTS * SSH access to the server -You need a server running a bare/stock version of Ubuntu 26.04 LTS. If you're using a host such as DigitalOcean that lets you pick an OS to start with, then select the Ubuntu 26.04 option. +You need a server running a bare/stock version of Ubuntu 26.04 LTS (recommended) or 24.04 LTS. If you're using a host such as DigitalOcean that lets you pick an OS to start with, then select the Ubuntu 26.04 option. You need to be able to connect to your Ubuntu server from your local computer via SSH. We *highly* suggest doing this via SSH keys so you don't have to specify a password every time. Many hosts offer to automatically add your SSH key when creating a server, so take advantage of that. diff --git a/trellis/troubleshooting.md b/trellis/troubleshooting.md index 60667ba2..75abdce6 100644 --- a/trellis/troubleshooting.md +++ b/trellis/troubleshooting.md @@ -1,5 +1,5 @@ --- -date_modified: 2026-05-23 19:30 +date_modified: 2026-11-03 10:00 date_published: 2015-09-06 07:42 description: Troubleshoot Trellis installations with debugging tips for Ansible errors, solutions for unresponsive machines, and fixes for common provisioning problems. title: Troubleshooting Common Trellis Issues @@ -144,7 +144,7 @@ $ ssh -v root@12.34.56.78 The `sshd` role will most likely cause your SSH server to discontinue using some older and weaker protocols. If your connections involve older systems that do not support the stronger protocols configured by the `sshd` role, see [`Ciphers`, `KexAlgorithms`, and `MACs`](https://github.com/roots/trellis/tree/master/roles/sshd#ciphers-kexalgorithms-and-macs) for how to add back in any protocols you need. ## APT sources -You may need to clean the APT sources to update a package, for example when [updating MariaDB mirrors](https://github.com/roots/trellis/issues/1575). You can set `apt_clean_sources: true` in `group_vars/all/main.yml` to run every provision, or to run this for one provision only, use: +You may need to clean stale APT sources to update a package, for example after a repository has moved. Trellis v1.33.0 and later remove repositories for other MariaDB versions and the legacy `.list` files for the nginx, MariaDB and PHP repositories on their own. You can set `apt_clean_sources: true` in `group_vars/all/main.yml` to run every provision, or to run this for one provision only, use: ```shell $ trellis provision --extra-vars apt_clean_sources=true production