Merge pull request #7163 from dokku/0.35-release

Release 0.35.0
This commit is contained in:
Jose Diaz-Gonzalez
2024-09-23 01:04:53 -04:00
committed by GitHub
109 changed files with 1529 additions and 299 deletions

View File

@@ -3,7 +3,7 @@ set -eo pipefail
write-mkdocs() {
if [[ -f /usr/src/source/contrib/write-mkdocs ]]; then
if ! python /usr/src/source/contrib/write-mkdocs; then
if ! python3 /usr/src/source/contrib/write-mkdocs; then
exit 0
fi
fi

View File

@@ -0,0 +1,17 @@
# 0.35.0 Migration Guide
## Changes
- The provided `dokku/dokku:latest` Docker image now runs Ubuntu 24.04 Noble. Users that install custom packages within their docker-based installations should be sure to check package compatibility with Ubuntu 24.04.
- The default image used for Cloud Native Buildpack builds is now `heroku/builder:24`, and is based on both the `heroku-24` stack as well as Ubuntu 24.04. Users that wish to stick with the old, `heroku-22`/Ubuntu 22.04 builder may specify `heroku/buildpacks:22` as their builder image. Please see the [cloud native buildpack deployment documentation](/docs/deployment/builders/cloud-native-buildpacks.md#customizing-the-buildpack-stack-builder) for more information on how to specify a custom buildpack stack builder.
- The default image used for Herokuish Buildpack builds is now `gliderlabs/herokuish:latest-24`, and is based on both the `heroku-24` stack as well as Ubuntu 24.04. Users that wish to stick with the old, `heroku-22`/Ubuntu 22.04 builder may specify `gliderlabs/herokuish:latest-22` as their builder image. Please see the [herokuish buildpack deployment documentation](/docs/deployment/builders/herokuish-buildpacks.md#customizing-the-buildpack-stack-builder) for more information on how to specify a custom buildpack stack builder.
- The `vector` image used by Dokku for enhanced logging support has been upgraded from 0.39.x to 0.41.x. To take advantage of the new image, execute the following commands:
```
dokku logs:vector-stop
dokku logs:vector-start
```
- The `openresty` image used by Dokku for proxying via openresty has been upgraded from 0.8.0 to 0.9.0. To take advantage of the new image, execute the following commands:
```
dokku openresty:stop
dokku openresty:start
```

View File

@@ -147,7 +147,7 @@ project2.toml
> [!IMPORTANT]
> New as of 0.23.0
The default stack builder in use by CNB buildpacks in Dokku is based on `heroku/builder:22`. Users may desire to switch the stack builder to a custom version, either to update the operating system or to customize packages included with the stack builder. This can be performed via the `buildpacks:set-property` command.
The default stack builder in use by CNB buildpacks in Dokku is based on `heroku/builder:24`. Users may desire to switch the stack builder to a custom version, either to update the operating system or to customize packages included with the stack builder. This can be performed via the `buildpacks:set-property` command.
```shell
dokku buildpacks:set-property node-js-app stack paketobuildpacks/build:base-cnb
@@ -161,7 +161,7 @@ dokku buildpacks:set-property node-js-app stack
A change in the stack builder value will execute the `post-stack-set` trigger.
Finally, stack builders can be set or unset globally as a fallback. This will take precedence over a globally set `DOKKU_CNB_BUILDER` environment variable (`heroku/builder:22` by default).
Finally, stack builders can be set or unset globally as a fallback. This will take precedence over a globally set `DOKKU_CNB_BUILDER` environment variable (`heroku/builder:24` by default).
```shell
# set globally

View File

@@ -130,7 +130,7 @@ dokku docker-options:add node-js-app build '--build-arg NODE_ENV'
Once set, the Dockerfile usage would be as follows:
```Dockerfile
FROM ubuntu:20.04
FROM ubuntu:24.04
# set the argument default
ARG NODE_ENV=production
@@ -142,7 +142,7 @@ RUN echo $NODE_ENV
You may also set the argument as an environment variable
```Dockerfile
FROM ubuntu:20.04
FROM ubuntu:24.04
# set the argument default
ARG NODE_ENV=production

View File

@@ -166,7 +166,7 @@ dokku buildpacks:set-property node-js-app stack
A change in the stack builder value will execute the `post-stack-set` trigger.
Finally, stack builders can be set or unset globally as a fallback. This will take precedence over a globally set `DOKKU_IMAGE` environment variable (`gliderlabs/herokuish:latest-22` by default).
Finally, stack builders can be set or unset globally as a fallback. This will take precedence over a globally set `DOKKU_IMAGE` environment variable (`gliderlabs/herokuish:latest-24` by default).
```shell
# set globally
@@ -218,17 +218,17 @@ dokku buildpacks:report
```
=====> node-js-app buildpacks information
Buildpacks computed stack: gliderlabs/herokuish:v0.7.0-22
Buildpacks global stack: gliderlabs/herokuish:latest-22
Buildpacks global stack: gliderlabs/herokuish:latest-24
Buildpacks list: https://github.com/heroku/heroku-buildpack-nodejs.git
Buildpacks stack: gliderlabs/herokuish:v0.7.0-20
=====> python-sample buildpacks information
Buildpacks computed stack: gliderlabs/herokuish:latest-22
Buildpacks global stack: gliderlabs/herokuish:latest-22
Buildpacks computed stack: gliderlabs/herokuish:latest-24
Buildpacks global stack: gliderlabs/herokuish:latest-24
Buildpacks list: https://github.com/heroku/heroku-buildpack-nodejs.git,https://github.com/heroku/heroku-buildpack-python.git
Buildpacks stack:
=====> ruby-sample buildpacks information
Buildpacks computed stack: gliderlabs/herokuish:latest-22
Buildpacks global stack: gliderlabs/herokuish:latest-22
Buildpacks computed stack: gliderlabs/herokuish:latest-24
Buildpacks global stack: gliderlabs/herokuish:latest-24
Buildpacks list:
Buildpacks stack:
```

View File

@@ -13,7 +13,7 @@ on:
jobs:
deploy:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Cloning repo
uses: actions/checkout@v3

View File

@@ -9,11 +9,11 @@ We maintain the Dokku test harness within the `tests` directory:
## Continuous Integration
All pull requests have tests run against them on [GitHub Actions](https://github.com/features/actions), a continuous integration platform that provides Docker support for Ubuntu Focal 20.04.
All pull requests have tests run against them on [GitHub Actions](https://github.com/features/actions), a continuous integration platform that provides Docker support for Ubuntu Jammy 22.04.
If you wish to skip tests for a particular commit, e.g. documentation changes, you may add the `[ci skip]` designator to your commit message. Commits that _should_ be tested but have the above designator will not be merged.
While we do provide official packages for a variety of platforms, as our test suite currently runs on Ubuntu Focal 20.04, we only provide official installation support for that platform and the latest LTS release of Ubuntu (currently 20.04).
While we do provide official packages for a variety of platforms, as our test suite currently runs on Ubuntu Jammy 22.04, we only provide official installation support for that platform and the supported LTS releases of Ubuntu (currently 20.04, 22.04, and 24.04).
## Local Test Execution

View File

@@ -6,7 +6,7 @@
1. Login to your [DigitalOcean](https://m.do.co/c/fe06b043a083) account.
2. Click **Create a Droplet**.
3. Under **Choose an image > Marketplace**, search latest **Dokku** release for Ubuntu 20.04 _(version numbers may vary)_.
3. Under **Choose an image > Marketplace**, search latest **Dokku** release for Ubuntu 24.04 _(version numbers may vary)_.
4. Under **Choose a size**, select your machine spec.
5. Under **Choose a datacenter region**, select your region.
6. Add an SSH Key.

View File

@@ -25,8 +25,6 @@ docker container run -d \
Alternatively, you can use `docker-compose.yml`:
```yaml
version: "3.8"
services:
dokku:
image: dokku/dokku:0.34.9

View File

@@ -19,7 +19,7 @@ source openrc.sh # Set the environment variables for DreamHost Cloud
This allows OpenStack client to connect to DreamHost API endpoints.
The command below creates a new server instance named `my-dokku-instance`
based on Ubuntu 20.04, with 2 GB RAM and 1 CPU (the flavor called
based on Ubuntu 24.04, with 2 GB RAM and 1 CPU (the flavor called
`supersonic`), opening network port access to HTTP and SSH (the
`default` security group), and the name of the chosen SSH key. This
key will be automatically added to the new server in the
@@ -28,7 +28,7 @@ be reused by Dokku.
```sh
openstack server create \
--image Ubuntu-20.04 \
--image Ubuntu-24.04 \
--flavor gp1.supersonic \
--security-group default \
--key-name $YOUR_SSH_KEYNAME \

View File

@@ -9,7 +9,7 @@ Dokku is an extensible, open source Platform as a Service that runs on a single
To start using Dokku, you'll need a system that meets the following minimum requirements:
- A fresh installation of any of the following operating systems:
- [Ubuntu 20.04/22.04](https://www.ubuntu.com/download)
- [Ubuntu 20.04/22.04/24.04](https://www.ubuntu.com/download)
- [Debian 10+ x64](https://www.debian.org/distrib/)
- A server with one of the following architectures
- AMD64 (alternatively known as `x86_64`), commonly used for Intel cloud servers

View File

@@ -18,6 +18,7 @@ Docker releases updates periodically to their engine. We recommend reading their
Before upgrading, check the migration guides to get comfortable with new features and prepare your deployment to be upgraded.
- [Upgrading to 0.35](/docs/appendices/0.35.0-migration-guide.md)
- [Upgrading to 0.34](/docs/appendices/0.34.0-migration-guide.md)
- [Upgrading to 0.33](/docs/appendices/0.33.0-migration-guide.md)
- [Upgrading to 0.32](/docs/appendices/0.32.0-migration-guide.md)

View File

@@ -4,7 +4,7 @@ If you’re stuck, there are a number of places you can get help:
## The Official Dokku Website
- [https://dokku.com/docs/](/docs/)
- [https://dokku.com/docs/getting-started/installation/](/docs/getting-started/installation/)
The Official Dokku website is always a great place to visit. It features links to oft-used developer tools, community plugins, and guides on using Dokku.

View File

@@ -161,9 +161,9 @@ Dokku will extract all tcp ports exposed using the `EXPOSE` directive (one port
For example, if the Dokku installation is configured with the domain `dokku.me` and an application named `node-js-app` is deployed with following Dockerfile:
```
FROM ubuntu:20.04
FROM ubuntu:24.04
EXPOSE 1234
CMD python -m SimpleHTTPServer 1234
CMD python3 -m SimpleHTTPServer 1234
```
The application would be exposed to the user at `node-js-app.dokku.me:1234`. If this is not desired, the following application configuration may be applied:

View File

@@ -160,10 +160,10 @@ Traefik exposes an API and Dashboard, which Dokku disables by default for securi
> [!WARNING]
> Users enabling the dashboard should also enable api basic auth.
By default, the api is disabled. To enable, set the `api` property with the `--global` flag:
By default, the api is disabled. To enable, set the `api-enabled` property with the `--global` flag:
```shell
dokku traefik:set --global api true
dokku traefik:set --global api-enabled true
```
After enabling, the Traefik container will need to be restarted.
@@ -173,10 +173,10 @@ After enabling, the Traefik container will need to be restarted.
> [!WARNING]
> Users enabling the dashboard should also enable api basic auth.
By default, the dashboard is disabled. To enable, set the `dashboard` property with the `--global` flag:
By default, the dashboard is disabled. To enable, set the `dashboard-enabled` property with the `--global` flag:
```shell
dokku traefik:set --global dashboard true
dokku traefik:set --global dashboard-enabled true
```
After enabling, the Traefik container will need to be restarted.