Files
dokku/docs/advanced-usage/plugin-management.md
Jose Diaz-Gonzalez 924287c04f Release 0.14.0
# History

## 0.14.0

Install/update via the bootstrap script:

```shell
wget https://raw.githubusercontent.com/dokku/dokku/v0.14.0/bootstrap.sh
sudo DOKKU_TAG=v0.14.0 bash bootstrap.sh
```

### Bug Fixes

- #3384: @josegonzalez fix: use updated gpg key for apt repository
- #3382: @josegonzalez Set cleanup to global when no application is specified
- #3350: @josegonzalez Do not build the proxy config when there are no app listeners
- #3366: @josegonzalez Add post-app-clone-setup to network clean make target
- #3349: @josegonzalez Ensure apps are cleanly cloned
- #3356: @josegonzalez Move storage directory into DOKKU_LIB_ROOT
- #3341: @baikunz Select only default dokku network IP
- #3348: @josegonzalez Use correct name for packagecloud token when running CI commands
- #3339: @josegonzalez Properly check args when calling cleanup globally
- #3344: @josegonzalez Allow running dokku report without needing an interactive shell

### New Features

- #3381: @josegonzalez Add support for the Procfile release command
- #3380: @josegonzalez Install stable docker when using bootstrap script
- #3378: @josegonzalez Make admin setup UI look nicer
- #3369: @josegonzalez Pull invalid nginx configuration when the nginx configs fail to validate
- #3371: @josegonzalez Add tests section to changelog
- #3358: @josegonzalez Image tag deploy workflow cleanup
- #3351: @josegonzalez Do not clone URLS and VHOST files to new apps
- #3357: @josegonzalez Add support for building arbitrary releases
- #3354: @josegonzalez Drop default dhparam key size to 2048
- #3347: @josegonzalez Upgrade herokuish
- #3352: @josegonzalez Increase security of default SSL setup
- #3353: @josegonzalez Normalize tests
- #3345: @josegonzalez Allow triggering the full report for all apps via --all flag
- #3346: @josegonzalez Always overwrite the dokku.conf file for nginx

### Documentation

- #3377: @josegonzalez Remove team member section on homepage in favor of sponsor section
- #3376: @josegonzalez Switch from rawgit to jsdelivr
- #3365: @josegonzalez Remove extra tags:create call from docs

### Tests

- #3379: @josegonzalez Run mvdan/shfmt on test runs
- #3370: @josegonzalez Add junit support to shellcheck output
- #3308: @josegonzalez Add timing info to test runs on CircleCI
- #3367: @josegonzalez Run tests from built artifact
- #3368: @josegonzalez Balance circleci tests
- #3363: @josegonzalez Add a wrapper for invoking a single test
- #3362: @josegonzalez Allow tests to be run from any directory
- #3360: @josegonzalez Switch to bats-core
- #3361: @josegonzalez Do not generate dhparam for tests

### Other

- #3279: @fruitl00p Make sure the universe repo is loaded into APT
2019-01-08 08:02:13 -05:00

4.3 KiB

Plugin Management

New as of 0.4.0

plugin:disable <name>                    # Disable an installed plugin (third-party only)
plugin:enable <name>                     # Enable a previously disabled plugin
plugin:install [--core|git-url [--committish tag|branch|commit|--name custom-plugin-name]]           # Optionally download git-url (with custom tag/committish) & run install trigger for active plugins (or only core ones)
plugin:install-dependencies [--core]     # Run install-dependencies trigger for active plugins (or only core ones)
plugin:list                              # Print active plugins
plugin:uninstall <name>                  # Uninstall a plugin (third-party only)
plugin:update [name [committish]]        # Optionally update named plugin from git (with custom tag/committish) & run update trigger for active plugins
# for 0.3.x
cd /var/lib/dokku/plugins
git clone <git url>
dokku plugins-install

These commands require root permissions as the install and install-dependencies plugin triggers may utilize commands such as apt-get. For non-core plugins, please inspect those plugins before running the following command as root user.

Usage

You can list all installed plugins using the plugin command:

dokku plugin
plugn: dev
  00_dokku-standard    0.14.0 enabled    dokku core standard plugin
  20_events            0.14.0 enabled    dokku core events logging plugin
  apps                 0.14.0 enabled    dokku core apps plugin
  build-env            0.14.0 enabled    dokku core build-env plugin
  certs                0.14.0 enabled    dokku core certificate management plugin
  checks               0.14.0 enabled    dokku core checks plugin
  common               0.14.0 enabled    dokku core common plugin
  config               0.14.0 enabled    dokku core config plugin
  docker-options       0.14.0 enabled    dokku core docker-options plugin
  domains              0.14.0 enabled    dokku core domains plugin
  enter                0.14.0 enabled    dokku core enter plugin
  git                  0.14.0 enabled    dokku core git plugin
  logs                 0.14.0 enabled    dokku core logs plugin
  named-containers     0.14.0 enabled    dokku core named containers plugin
  network              0.14.0 enabled    dokku core network plugin
  nginx-vhosts         0.14.0 enabled    dokku core nginx-vhosts plugin
  plugin               0.14.0 enabled    dokku core plugin plugin
  proxy                0.14.0 enabled    dokku core proxy plugin
  ps                   0.14.0 enabled    dokku core ps plugin
  repo                 0.14.0 enabled    dokku core repo plugin
  shell                0.14.0 enabled    dokku core shell plugin
  ssh-keys             0.14.0 enabled    dokku core ssh-keys plugin
  storage              0.14.0 enabled    dokku core storage plugin
  tags                 0.14.0 enabled    dokku core tags plugin
  tar                  0.14.0 enabled    dokku core tar plugin

Installing a plugin is easy as well using the plugin:install command. This command will also trigger the install pluginhook on all existing plugins.

dokku plugin:install https://github.com/dokku/dokku-postgres.git
-----> Cloning plugin repo https://github.com/dokku/dokku-postgres.git to /var/lib/dokku/plugins/available/postgres
Cloning into 'postgres'...
remote: Counting objects: 646, done.
remote: Total 646 (delta 0), reused 0 (delta 0), pack-reused 646
Receiving objects: 100% (646/646), 134.24 KiB | 0 bytes/s, done.
Resolving deltas: 100% (406/406), done.
Checking connectivity... done.
-----> Plugin postgres enabled

You can also uninstall a third-party plugin using the plugin:uninstall command:

dokku plugin:uninstall postgres
-----> Plugin postgres uninstalled

Enabling or disabling a plugin can also be useful in cases where you are debugging whether a third-party plugin is causing issues in your Dokku installation:

dokku plugin:disable postgres
-----> Plugin postgres disabled
dokku plugin:enable postgres
-----> Plugin postgres enabled

Finally, you can update an installed third-party plugin. This should be done after any upgrades of Dokku as there may be changes in the internal api that require an update of how the plugin interfaces with Dokku.

dokku plugin:update postgres
Plugin (postgres) updated