# History ## 0.24.4 Install/update via the bootstrap script: ```shell wget https://raw.githubusercontent.com/dokku/dokku/v0.24.4/bootstrap.sh sudo DOKKU_TAG=v0.24.4 bash bootstrap.sh ``` ### Bug Fixes - #4526: @josegonzalez Do not cut off builder arguments that have a 'v-' substring - #4523: @josegonzalez Ignore set pipefail errors when DOKKU_SHELL is set to sh - #4516: @josegonzalez Properly handle letsencrypt certs in certs:report output - #4510: @josegonzalez Reformat existing buildpacks files ### New Features - #4525: @josegonzalez Update error for git:from- commands when the artifact is already synced - #4524: @josegonzalez Allow skipping entrypoint detection if entrypoint is tini ### Documentation - #4531: @elamje Update config command to config:show - #4528: @grantjenks Fix typo in persistent storage docs - #4530: @Tobbe deployment docs: fix letsencrypt plugin name - #4517: @illgitthat Update README with correct link to docs - #4513: @josegonzalez Add a note on ssl and letsencrypt usage to the setup docs - #4511: @josegonzalez Document removal of nginx site-enabled files for first time installers - #4506: @josegonzalez Add full example for custom nginx log format - #4504: @josegonzalez Clarify permissions on persistent storage paths - #4503: @josegonzalez Drop dead newsletter link ### Other - #4540: @dependabot-preview[bot] chore(deps): bump github.com/golang/protobuf from 1.5.1 to 1.5.2 in /tests/apps/gogrpc - #4535: @dependabot-preview[bot] chore(deps): bump gunicorn from 20.0.4 to 20.1.0 in /tests/apps/multi - #4536: @dependabot-preview[bot] chore(deps): bump jetty-servlet from 11.0.1 to 11.0.2 in /tests/apps/java - #4537: @dependabot-preview[bot] chore(deps): bump gunicorn from 20.0.4 to 20.1.0 in /tests/apps/python-flask - #4527: @Cellane Remove all traces of dokku-update
2.7 KiB
Docker Installation Notes
Pull the dokku/dokku image:
docker pull dokku/dokku:0.24.4
Next, run the image.
docker container run \
--env DOKKU_HOSTNAME=dokku.me \
--name dokku \
--publish 3022:22 \
--publish 8080:80 \
--publish 8443:443 \
--volume /var/lib/dokku:/mnt/dokku \
--volume /var/run/docker.sock:/var/run/docker.sock \
dokku/dokku:0.24.4
Dokku is run in the following configuration:
- The global hostname is set to
dokku.meon boot. - The container name is dokku.
- Container SSH port 22 is exposed on the host as 3022.
- Container HTTP port 80 is exposed on the host as 8080.
- Container HTTPS port 443 is exposed on the host as 8443.
- Data within the container is stored on the host within the
/var/lib/dokkudirectory. - The docker socket is mounted into container
- The "web installer" is not supported.
Application repositories, plugin config, as well as plugin data are persisted to disk within the specified host directory for /var/lib/dokku.
Other docker container options can also be used when running Dokku, though the specific outcome will depend upon the specified options. For example, the Dokku container's nginx port can be bound to a specific host ip by specifying --publish $HOST_IP:8080:80, where $HOST_IP is the IP desired. Please see the docker container run documentation for further explanation for various docker arguments.
Plugin Installation
To install custom plugins, create a plugin-list file in the host's /var/lib/dokku directory. The plugins listed herein will be automatically installed by Dokku on container boot. This file should be the following format:
plugin_name: repository_url
An example for installing the postgres and redis plugins follows:
postgres: https://github.com/dokku/dokku-postgres.git
redis: https://github.com/dokku/dokku-redis.git
SSH Key Management
To initialize ssh-keys within the container, use docker exec to enter the container and run the appropriate ssh-keys commands.
docker exec -it dokku bash
Please see the user management documentation for more information.
Pushing Applications
When exposing the Dokku container's SSH port (22) on 3022, something similar to the following will need to be setup within the user's ~/.ssh/config:
Host dokku.docker
HostName 127.0.0.1
Port 3022
In the above example, the hostname 127.0.0.1 is being aliased to dokku.docker, while the port is being overriden to 3022. All SSH commands - including git pushes - for the hostname dokku.docker will be transparently sent to 127.0.0.1:3022.