# History ## 0.35.0 Install/update via the bootstrap script: ```shell wget -NP . https://dokku.com/install/v0.35.0/bootstrap.sh sudo DOKKU_TAG=v0.35.0 bash bootstrap.sh ``` See the [0.35.0 migration guide](/docs/appendices/0.35.0-migration-guide.md) for more information on migrating to 0.35.0. ### Bug Fixes - #7179: @josegonzalez Remove references to version in compose files - #7177: @josegonzalez Reference noble apt repository and not focal - #7164: @josegonzalez Remove systemd on docker-based installations - #7157: @Cactusbone Fix building in vagrant when jq is not available - #7147: @Cactusbone Support older docker versions by setting ARG value with an equal sign - #7088: @andreby Handle the case where parent PID is 0 - #7077: @bakatz Add cron dependency because it's necessary to run scheduled cron jobs ### New Features - #7185: @josegonzalez Fix vagrant running on arm64 machines - #7184: @josegonzalez Clear out docker builder cache once a day - #7183: @josegonzalez Error out when the Dockerfile is missing during builder-dockerfile execution - #7175: @josegonzalez Upgrade digitalocean image to Ubuntu Noble - #7174: @josegonzalez Upgrade vagrant image to Ubuntu Noble - #7173: @josegonzalez Upgrade builder docker image to Ubuntu Noble - #7166: @josegonzalez Upgrade herokuish from 0.9.2 to 0.10.1 - #7075: @josegonzalez Upgrade herokuish builder to gliderlabs/herokuish:latest-24 - #7074: @josegonzalez Upgrade cnb builder to heroku/builder:24 - #7071: @josegonzalez Bump go version to 1.23.0 - #6853: @Reggino Support Ubuntu 24.04 LTS - #6762: @josegonzalez Upgrade docker compose version in use ### Documentation - #7180: @josegonzalez Reference actual properties for enabling the traefik api and dashboard - #7178: @josegonzalez Fix link to docs site - #7101: @strugee Fix typo in CNB documentation - #7100: @no0dles SVG gets modified on release ### Tests - #7176: @josegonzalez Fetch packages installed in ci from Ubuntu Noble repo - #7172: @josegonzalez Run CI release processes on Ubuntu Noble - #7171: @josegonzalez Run CI on Ubuntu Noble - #7170: @josegonzalez Run CI codeql analysis on Ubuntu Noble - #7169: @josegonzalez Run CI doc generation on Ubuntu Noble - #7168: @josegonzalez Run CI linting on Ubuntu Noble - #7073: @josegonzalez Drop codacy ### Dependencies - #7148: @dependabot[bot] chore(deps): bump dokku/openresty-docker-proxy from 0.8.0 to 0.9.0 in /plugins/openresty-vhosts - #7139: @dependabot[bot] chore(deps): bump timberio/vector from 0.39.0-debian to 0.41.1-debian in /plugins/logs - #7060: @dependabot[bot] chore(deps): bump mvdan.cc/sh/v3 from 3.8.0 to 3.9.0 in /plugins/cron - #7035: @dependabot[bot] chore(deps): bump traefik from 2.11.2 to 3.1.2 in /plugins/traefik-vhosts - #7014: @dependabot[bot] chore(deps): bump timberio/vector from 0.39.0-debian to 0.40.0-debian in /plugins/logs - #6985: @dependabot[bot] chore(deps): bump github.com/traefik/traefik/v2 from 2.10.7 to 2.11.6 in /plugins/scheduler-k3s ### Other - #7165: @josegonzalez Upgrade Docker image to Ubuntu Noble 24.04 - #6784: @josegonzalez Remove --restart docker arguments when not running deploy-phase containers
3.5 KiB
Getting Started with Dokku
What is Dokku?
Dokku is an extensible, open source Platform as a Service that runs on a single server of your choice. Dokku supports building apps on the fly from a git push via either Dockerfile or by auto-detecting the language with Buildpacks, and then starts containers based on your built image. Using technologies such as nginx and cron, Web processes are automatically routed to, while background processes and automated cron tasks are also managed by Dokku.
System Requirements
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:
- A server with one of the following architectures
- AMD64 (alternatively known as
x86_64), commonly used for Intel cloud servers - ARMV8 (alternatively known as
arm64), commonly used for Raspberry PI and AWS Graviton
- AMD64 (alternatively known as
To avoid memory pressure during builds or runtime of your applications, we suggest the following:
- At least 1 GB of system memory
- If your system has less than 1GB of memory, you can use this workaround.
Finally, we recommend attaching at least one domain name to your server. This is not required, but using a domain name will make app access easier. When connecting a domain, either a single domain or a wildcard may be associated to the server's IP.
- Wildcard domain (
*.domain.tldA Record): will allow access to apps via$APP.domain.tld. - Single domain (
domain.tldA or CNAME Record): will result in apps being accessed viadomain.tld:$RANDOM_PORT.
Please see the dns documentation and domains documentation for more details.
Installing the latest stable version
This is the simple method of installing Dokku. For alternative methods of installation, see the advanced install guide.
1. Install Dokku
To install the latest stable version of Dokku, you can run the following shell commands:
# for debian systems, installs Dokku via apt-get
wget -NP . https://dokku.com/install/v0.35.0/bootstrap.sh
sudo DOKKU_TAG=v0.35.0 bash bootstrap.sh
The installation process takes about 5-10 minutes, depending upon internet connection speed.
2. Setup SSH key and Virtualhost Settings
Once the installation is complete, you should configure an ssh key and set your global domain.
# usually your key is already available under the current user's `~/.ssh/authorized_keys` file
cat ~/.ssh/authorized_keys | dokku ssh-keys:add admin
# you can use any domain you already have access to
# this domain should have an A record or CNAME pointing at your server's IP
dokku domains:set-global dokku.me
# you can also use the ip of your server
dokku domains:set-global 10.0.0.2
# finally, you can use sslip.io to get subdomain support
# as you would with a regular domain name
# this would be done by appending `.sslip.io` to your ip address
dokku domains:set-global 10.0.0.2.sslip.io
See the user management and domains documentation for more information.
3. Deploy your first application
At this point, you should be able to deploy to the Dokku installation.