# Docker Installation Notes Pull the dokku/dokku image: ```shell docker pull dokku/dokku:0.20.0 ``` Next, run the image. ```shell docker 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.20.0 ``` Dokku is run with the following options: - The global hostname is set to `dokku.me` on 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/dokku` directory. - The docker socket is mounted into container Application repositories, plugin config, and plugin data is persisted to disk within the specified host directory for `/var/lib/dokku`. 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: ```yaml plugin_name: repository_url ``` An example for installing the postgres and redis plugins follows: ```yaml postgres: https://github.com/dokku/dokku-postgres.git redis: https://github.com/dokku/dokku-redis.git ``` To initialize ssh-keys within the container, use `docker exec` to enter the container and run the appropriate ssh-keys commands. ```shell docker exec -it dokku bash ``` Please see the [user management documentation](/docs/deployment/user-management.md) for more information.