Compare commits

...

1453 Commits

Author SHA1 Message Date
Dokku Bot
6cda8189f2 Release 0.28.2
# History

## 0.28.2

Install/update via the bootstrap script:

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

### Bug Fixes

- #5393: @josegonzalez Correct issue with replacing the version in the installation guide
- #5354: @josegonzalez Report the correct value for the letsencrypt server
- #5347: @josegonzalez Set correct version on builder-lambda plugin

### New Features

- #5392: @josegonzalez Add support for devcontainers on ARM64 instances

### Documentation

- #5365: @josegonzalez Use correct indentation for embedded list in remote commands documentation
- #5357: @josegonzalez Reference blog on main domain
- #5355: @josegonzalez Autogenerate documentation in CI
- #5351: @josegonzalez Fix formatting on list in deployment tasks
- #5328: @holtergram Call out git remote change when renaming an app
- #5344: @josegonzalez Generate docs via mkdocs
- #5342: @josegonzalez Ensure doc links work on github as well as on docs site
- #5336: @josegonzalez Add note about docker-compose requirement for using the caddy plugin
- #5337: @josegonzalez Add note about docker-compose requirement for using the traefik…
- #5332: @cdubz Remove errant semicolon from wget command
- #5329: @josegonzalez Use updated url for gliderlabs slack invite app
- #5315: @alexislefebvre Fix doc link for systems with less than 1GB memory

### Other

- #5382: @dependabot[bot] chore(deps): bump sinatra from 2.2.2 to 3.0.2 in /tests/apps/ruby
- #5386: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 224 to 225 in /tests/apps/php
- #5361: @dependabot[bot] chore(deps): bump jetty-servlet from 11.0.11 to 11.0.12 in /tests/apps/java
- #5346: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 223 to 224 in /tests/apps/php
2022-10-13 04:13:09 +00:00
Jose Diaz-Gonzalez
e63dbcd132 Merge pull request #5393 from dokku/josegonzalez-patch-1
Correct issue with replacing the version in the installation guide
2022-10-13 00:11:45 -04:00
Jose Diaz-Gonzalez
716326573c fix: correct issue with replacing the version in the installation guide 2022-10-13 00:11:37 -04:00
Jose Diaz-Gonzalez
99e2e0ea68 Merge pull request #5392 from dokku/vscode-arm
Add support for devcontainers on ARM64 instances
2022-10-13 00:09:30 -04:00
Jose Diaz-Gonzalez
674cb2b6eb docs: document development in a dev container
The process is roughly the same as in a VM.
2022-10-12 22:41:47 -04:00
Jose Diaz-Gonzalez
d9e584f5a1 docs: split out testing documentation a bit 2022-10-12 22:08:50 -04:00
Jose Diaz-Gonzalez
a39a47b3ae feat: respect TARGETARCH when installing development dependencies 2022-10-12 21:53:11 -04:00
Jose Diaz-Gonzalez
dfcce1c6a6 fix: ensure we install the golang for the correct architecture
TARGETARCH is an automatic build-arg that docker injects - https://docs.docker.com/engine/reference/builder/#automatic-platform-args-in-the-global-scope - so this is safe to depend on.
2022-10-12 21:51:52 -04:00
Jose Diaz-Gonzalez
8cb708b8f7 Merge pull request #5382 from dokku/dependabot/bundler/tests/apps/ruby/sinatra-3.0.2
chore(deps): bump sinatra from 2.2.2 to 3.0.2 in /tests/apps/ruby
2022-10-11 18:52:55 -07:00
Jose Diaz-Gonzalez
f8489efe17 Merge pull request #5386 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-225
chore(deps-dev): bump heroku/heroku-buildpack-php from 224 to 225 in /tests/apps/php
2022-10-11 18:52:42 -07:00
dependabot[bot]
7843738a2f chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 224 to 225.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v224...v225)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-06 13:13:36 +00:00
dependabot[bot]
300aacfa5b chore(deps): bump sinatra from 2.2.2 to 3.0.2 in /tests/apps/ruby
Bumps [sinatra](https://github.com/sinatra/sinatra) from 2.2.2 to 3.0.2.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v2.2.2...v3.0.2)

---
updated-dependencies:
- dependency-name: sinatra
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-03 13:06:59 +00:00
Jose Diaz-Gonzalez
b72a2544ab Merge pull request #5365 from dokku/josegonzalez-patch-1
Use correct indentation for embedded list in remote commands documentation
2022-09-19 13:30:33 -04:00
Jose Diaz-Gonzalez
1474297397 docs: use correct indentation for embedded list in remote commands documentation 2022-09-19 13:29:47 -04:00
Jose Diaz-Gonzalez
02c304fada Merge pull request #5361 from dokku/dependabot/maven/tests/apps/java/org.eclipse.jetty-jetty-servlet-11.0.12
chore(deps): bump jetty-servlet from 11.0.11 to 11.0.12 in /tests/apps/java
2022-09-16 10:25:11 -04:00
dependabot[bot]
64706f021c chore(deps): bump jetty-servlet in /tests/apps/java
Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.11 to 11.0.12.
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.11...jetty-11.0.12)

---
updated-dependencies:
- dependency-name: org.eclipse.jetty:jetty-servlet
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-16 13:10:22 +00:00
Jose Diaz-Gonzalez
10c222839d Merge pull request #5357 from dokku/unify-blog
Reference blog on main domain
2022-09-11 15:00:40 -04:00
Jose Diaz-Gonzalez
a3ca2a56b8 docs: reference blog on main domain
The blog is now backed by mkdocs and has been moved to a subdirectory of dokku.com.
2022-09-11 15:00:17 -04:00
Jose Diaz-Gonzalez
bdf12179fa fix: sort files 2022-09-10 16:11:16 -04:00
Jose Diaz-Gonzalez
674de032f8 fix: run shfmt 2022-09-10 16:09:19 -04:00
Jose Diaz-Gonzalez
807ae5e651 chore: drop debug statement 2022-09-10 16:06:00 -04:00
Jose Diaz-Gonzalez
bf26d32495 fix: setup correct python version for generating docs 2022-09-10 16:05:37 -04:00
Jose Diaz-Gonzalez
b23eb8f330 debug: output the current version file for debugging 2022-09-10 16:01:29 -04:00
Jose Diaz-Gonzalez
c715857ac7 fix: ensure the generated site is owned by the CI user 2022-09-10 15:54:39 -04:00
Jose Diaz-Gonzalez
a74ab40494 debug: note the current user and owner of files 2022-09-10 15:09:27 -04:00
Jose Diaz-Gonzalez
7316b6322c fix: ensure the docs image is generated 2022-09-10 15:03:52 -04:00
Jose Diaz-Gonzalez
14752ac407 Merge pull request #5355 from dokku/autogenerate-docs
Autogenerate documentation in CI
2022-09-10 14:59:37 -04:00
Jose Diaz-Gonzalez
3aab81aa7c feat: generate documentation in CI and auto-push to the docs site 2022-09-10 14:53:21 -04:00
Jose Diaz-Gonzalez
bed0e0ce71 feat: clone generated docs site before running docs generation 2022-09-10 14:34:15 -04:00
Jose Diaz-Gonzalez
46b9df3872 Merge pull request #5354 from dokku/caddy-report-output
Report the correct value for the letsencrypt server
2022-09-10 14:26:34 -04:00
Jose Diaz-Gonzalez
a2c8c77dad fix: report the correct value for the letsencrypt server 2022-09-10 00:04:52 -04:00
Jose Diaz-Gonzalez
224dc15f09 Merge pull request #5351 from dokku/josegonzalez-patch-1
Fix formatting on list in deployment tasks
2022-09-08 15:18:57 -04:00
Jose Diaz-Gonzalez
68752c9318 docs: fix formatting on list in deployment tasks 2022-09-08 15:15:26 -04:00
Jose Diaz-Gonzalez
0abbe320f3 Merge pull request #5347 from dokku/josegonzalez-patch-1
Set correct version on builder-lambda plugin
2022-09-06 22:32:08 -04:00
Jose Diaz-Gonzalez
59c7144255 fix: set correct version on builder-lambda plugin 2022-09-06 22:31:55 -04:00
Jose Diaz-Gonzalez
c5d282dcd1 Merge pull request #5328 from holtergram/patch-1
Update docs: Added Git change remote
2022-09-06 22:21:11 -04:00
Jose Diaz-Gonzalez
87c11ca077 Merge pull request #5346 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-224
chore(deps-dev): bump heroku/heroku-buildpack-php from 223 to 224 in /tests/apps/php
2022-09-06 22:20:32 -04:00
dependabot[bot]
bf13a6fd97 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 223 to 224.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v223...v224)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-06 13:12:46 +00:00
Jose Diaz-Gonzalez
75beecf65b Merge pull request #5344 from dokku/mkdocs-support
Generate docs via mkdocs
2022-09-05 22:00:41 -04:00
Jose Diaz-Gonzalez
8845715959 fix: correct current version 2022-09-05 21:53:34 -04:00
Jose Diaz-Gonzalez
c2a170b6ec chore: use normal blog link for now 2022-09-05 21:49:04 -04:00
Jose Diaz-Gonzalez
4ed1bcb3f4 chore: fix formatting 2022-09-05 21:45:46 -04:00
Jose Diaz-Gonzalez
dd26a82646 fix: add note about existing docs 2022-09-05 21:33:26 -04:00
Jose Diaz-Gonzalez
9ab58d6f33 feat: cleanup output and only ever generate latest docs for a version 2022-09-05 21:31:55 -04:00
Jose Diaz-Gonzalez
9cb54fc742 chore: silence command 2022-09-05 21:28:05 -04:00
Jose Diaz-Gonzalez
80924a0c31 fix: do not use unsupported hyphens in block name 2022-09-05 21:22:19 -04:00
Jose Diaz-Gonzalez
4b086ff8a4 chore: hide outdated message for latest docs 2022-09-05 21:21:06 -04:00
Jose Diaz-Gonzalez
b53a8526cd fix: add latest alias to latest docs 2022-09-05 21:20:42 -04:00
Jose Diaz-Gonzalez
401183fdd8 feat: use absolute url 2022-09-05 21:20:16 -04:00
Jose Diaz-Gonzalez
a862bdaf88 feat: add override 2022-09-05 21:02:44 -04:00
Jose Diaz-Gonzalez
e77e8d71bd fix: redirect to the correct page for old doc versions 2022-09-05 20:58:29 -04:00
Jose Diaz-Gonzalez
344d2e83ad fix: ensure the versions are sorted 2022-09-05 20:41:40 -04:00
Jose Diaz-Gonzalez
4c9deedba9 fix: rewrite home logo link in index.html 2022-09-05 20:25:41 -04:00
Jose Diaz-Gonzalez
460edc8b3e fix: remove unneeded variables 2022-09-05 20:24:57 -04:00
Jose Diaz-Gonzalez
98117db6a5 feat: write the mkdocs version 2022-09-05 20:20:52 -04:00
Jose Diaz-Gonzalez
cf92615936 feat: add social links to footer 2022-09-05 19:38:46 -04:00
Jose Diaz-Gonzalez
11b640c0b8 fix: drop trace output 2022-09-05 19:28:33 -04:00
Jose Diaz-Gonzalez
48ddbb4279 feat: ensure we build the app with the static buildpack 2022-09-05 19:28:20 -04:00
Jose Diaz-Gonzalez
3240491113 fix: ensure the assets are always up to date 2022-09-05 19:28:05 -04:00
Jose Diaz-Gonzalez
1d232aae89 fix: add missing / 2022-09-05 19:04:53 -04:00
Jose Diaz-Gonzalez
d3890fee9f feat: add rewrites for older versions 2022-09-05 19:03:56 -04:00
Jose Diaz-Gonzalez
8fe33a0e41 docs: copy the extra css to subsites 2022-09-05 17:35:48 -04:00
Jose Diaz-Gonzalez
d560ee13e0 docs: switch to the acquamarine color 2022-09-05 17:35:30 -04:00
Jose Diaz-Gonzalez
1d5c9edbd2 docs: use an easier to understand icon for toggling light mode 2022-09-05 17:35:17 -04:00
Jose Diaz-Gonzalez
4b0a40a20c docs: add navigation indexes for installations and upgrades 2022-09-05 17:29:09 -04:00
Jose Diaz-Gonzalez
47c1bfe26d docs: rename upgrading index to allow supporting navigation indexes 2022-09-05 17:18:00 -04:00
Jose Diaz-Gonzalez
01531c3986 docs: cleanup links to renamed docs 2022-09-05 16:49:56 -04:00
Jose Diaz-Gonzalez
d3a5289156 docs: turn absolute links into relative links
This is necessary as links in mkdocs must be relative.
2022-09-05 16:46:13 -04:00
Jose Diaz-Gonzalez
fa7de79faf docs: cleanup whitespace in codeblocks 2022-09-05 15:38:49 -04:00
Jose Diaz-Gonzalez
db11f1f15f docs: remove unnecessary link
This is duplicated through a redirect.
2022-09-05 15:28:46 -04:00
Jose Diaz-Gonzalez
0d6263c9b5 chore: drop extra print 2022-09-05 15:27:52 -04:00
Jose Diaz-Gonzalez
ab0b127778 chore: update build dependencies 2022-09-05 15:16:37 -04:00
Jose Diaz-Gonzalez
062aa7aa43 docs: add code for generating documentation from all old versions of dokku
This generates the appropriate versions for our usage, in addition to ensuring the markdown is of a format that mkdocs understands.
2022-09-05 14:49:56 -04:00
Jose Diaz-Gonzalez
f7905b4943 docs: add code for building docs in ci 2022-09-05 14:46:55 -04:00
Jose Diaz-Gonzalez
08b77b62d4 docs: add initial files for mkdocs support 2022-09-05 14:46:22 -04:00
Jose Diaz-Gonzalez
b8907d1f8e docs: update page titles to match sidebar 2022-09-05 14:43:45 -04:00
Jose Diaz-Gonzalez
9b05b9c2f4 Merge pull request #5342 from dokku/docs-links
Ensure doc links work on github as well as on docs site
2022-09-03 01:14:09 -04:00
Jose Diaz-Gonzalez
0b097b9b87 docs: ensure doc links work on github as well as on docs site 2022-09-03 01:13:31 -04:00
Jose Diaz-Gonzalez
ece77aa8c4 Merge pull request #5336 from dokku/5335-caddy
Add note about docker-compose requirement for using the caddy plugin
2022-08-30 13:29:05 -04:00
Jose Diaz-Gonzalez
0b5743a74c Merge pull request #5337 from dokku/5335-traefik
Add note about docker-compose requirement for using the traefik…
2022-08-30 13:27:57 -04:00
Jose Diaz-Gonzalez
66d2694751 docs: add note about docker-compose requirement for using the traefik plugin 2022-08-30 13:27:26 -04:00
Jose Diaz-Gonzalez
46ee448489 docs: add note about docker-compose requirement for using the caddy plugin 2022-08-30 13:27:24 -04:00
Jose Diaz-Gonzalez
953a2636a4 Merge pull request #5332 from cdubz/patch-1
Remove errant semicolon from wget command
2022-08-29 11:52:53 -04:00
Christopher Charbonneau Wells
1d1daafc07 Remove errant semicolon
Running the command with the semicolon results in a 404 Not Found.
2022-08-28 19:35:47 -07:00
Jose Diaz-Gonzalez
19ed0b00ea Merge pull request #5329 from dokku/update-invite-links
Use updated url for gliderlabs slack invite app
2022-08-25 18:20:01 -04:00
Jose Diaz-Gonzalez
18e787d65f docs: use updated url for gliderlabs slack invite app 2022-08-25 18:19:33 -04:00
holtergram
548013e46f Update docs: Added Git change remote
In order to make `git push` work after renaming an app the hint was added to update the remote url
2022-08-25 22:39:38 +02:00
Jose Diaz-Gonzalez
6348126f0c docs: add missing upgrade guide 2022-08-22 21:47:54 -04:00
Jose Diaz-Gonzalez
0fd909b277 Merge pull request #5315 from alexislefebvre/patch-1
Fix link to system < 1GB memory
2022-08-18 17:49:42 -04:00
Alexis Lefebvre
563293d1ff Fix link to system < 1GB memory 2022-08-18 23:43:49 +02:00
Dokku Bot
9d87bdf93b Release 0.28.1
# History

## 0.28.1

Install/update via the bootstrap script:

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

### Bug Fixes

- #5313: @josegonzalez Fix issues with multiple domains in new proxy plugins
2022-08-18 20:53:49 +00:00
Jose Diaz-Gonzalez
702fb6c330 Merge pull request #5313 from dokku/5311-proxy-tests
Fix issues with multiple domains in new proxy plugins
2022-08-18 16:53:07 -04:00
Jose Diaz-Gonzalez
16dd0adb35 fix: drop extra quote on LE server 2022-08-18 13:10:47 -04:00
Jose Diaz-Gonzalez
c9caa0880f tests: add unit tests and support multiple routers/services in traefik 2022-08-18 11:13:34 -04:00
Jose Diaz-Gonzalez
801fc5d78c fix: ensure we don't output anything extra in tests 2022-08-18 11:13:01 -04:00
Jose Diaz-Gonzalez
741ffc635c fix: fix issue with multiple domain support for caddy 2022-08-18 10:53:08 -04:00
Jose Diaz-Gonzalez
591fe8642d fix: correct help output for traefik 2022-08-18 10:50:46 -04:00
Jose Diaz-Gonzalez
3a44c414d1 fix: correct help output for caddy 2022-08-18 10:50:39 -04:00
Dokku Bot
5276543ee5 Release 0.28.0
# History

## 0.28.0

Install/update via the bootstrap script:

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

See the [0.28.0 migration guide](/docs/appendices/0.28.0-migration-guide.md) for more information on migrating to 0.28.0.

### Bug Fixes

- #5299: @josegonzalez Do not trigger restarts when mutating config globally
- #5298: @josegonzalez Set core.bare=true on correct repository path

### New Features

- #5300: @josegonzalez Add the ability to disable the init process
- #5295: @josegonzalez Add an official caddy proxy implementation
- #5293: @josegonzalez Add an official traefik proxy implementation
- #5202: @josegonzalez Add builder-lambda plugin

### Documentation

- #5296: @janlavicka Fix typo in kubernetes docs
- #5288: @josegonzalez Do not have bottom border float on page
- #5283: @alexgleason Homepage: fix link in quick install guide

### Other

- #5297: @josegonzalez Update vector image
- #5294: @josegonzalez Document and enable alternative proxy implementations
- #5291: @dependabot[bot] chore(deps): bump werkzeug from 2.2.1 to 2.2.2 in /tests/apps/python-flask
- #5292: @dependabot[bot] chore(deps): bump flask from 2.2.1 to 2.2.2 in /tests/apps/multi
- #5290: @dependabot[bot] chore(deps): bump flask from 2.2.1 to 2.2.2 in /tests/apps/python-flask
- #5227: @josegonzalez Drop forwarded port from vagrant setup
- #5285: @josegonzalez Update all development dependencies
- #5240: @josegonzalez Drop support for CentOS, Fedora, OpenSuse, as well as Debian 9
- #5281: @dependabot[bot] chore(deps): bump flask from 2.1.3 to 2.2.1 in /tests/apps/multi
- #5280: @dependabot[bot] chore(deps): bump flask from 2.1.3 to 2.2.1 in /tests/apps/python-flask
- #5284: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 222 to 223 in /tests/apps/php
2022-08-17 18:29:17 +00:00
Jose Diaz-Gonzalez
4ce71cb6db Merge pull request #5300 from dokku/5287-disable-init
Add the ability to disable the init process
2022-08-15 16:23:14 -04:00
Jose Diaz-Gonzalez
f09b960997 tests: add a unit test for the init-process option 2022-08-14 13:45:41 -04:00
Jose Diaz-Gonzalez
e15f411939 Merge pull request #5299 from dokku/5289-no-global-restarts
Do not trigger restarts when mutating config globally
2022-08-11 15:50:17 -04:00
Jose Diaz-Gonzalez
58af38a9ab Merge pull request #5298 from dokku/5275-git-bare
Set core.bare=true on correct repository path
2022-08-11 15:50:07 -04:00
Jose Diaz-Gonzalez
bc4eaa002f fix: correct shfmt issue 2022-08-11 13:07:00 -04:00
Jose Diaz-Gonzalez
78ad3f59b1 Merge pull request #5297 from dokku/update-vector
Update vector image
2022-08-11 13:06:12 -04:00
Jose Diaz-Gonzalez
045825857a fix: add missing source and respect any user settings for init-process property 2022-08-11 11:51:31 -04:00
Jose Diaz-Gonzalez
293ead4f35 feat: force-disable the --init flag for linuxserver images
All linuxserver images uses S6, and there are enough of them that this makes sense to autodetect on behalf of users.
2022-08-10 21:33:08 -04:00
Jose Diaz-Gonzalez
c4c6ac5617 feat: add the ability to disable the init process
This allows projects using s6 overlay - in particular linxserver images - the ability to disable --init flag injection.

Closes #5287
2022-08-10 21:32:55 -04:00
Jose Diaz-Gonzalez
414c891c6c fix: do not trigger restarts when mutating config globally
Closes #5289
2022-08-10 17:01:31 -04:00
Jose Diaz-Gonzalez
deeb18b56c fix: set core.bare=true on correct repository path
Closes #5275
2022-08-10 16:51:17 -04:00
Jose Diaz-Gonzalez
f60e0d7c8a feat: update vector image
Also drop value for --watch-config flag, as this is now properly parsed as a boolean value.

Refs #5197
2022-08-10 16:46:56 -04:00
Jose Diaz-Gonzalez
6a3933213c Merge pull request #5295 from dokku/caddy-proxy
Add an official caddy proxy implementation
2022-08-10 16:08:08 -04:00
Jose Diaz-Gonzalez
8b2afbadc2 Merge pull request #5296 from janlavicka/docs-kubernetes
docs: fix typo in kubernetes docs
2022-08-10 14:34:43 -04:00
Jan Lavička
403da909cb docs: fix typo in kubernetes docs 2022-08-10 18:26:27 +00:00
Jose Diaz-Gonzalez
d749a400a2 docs: add new notes 2022-08-10 14:23:17 -04:00
Jose Diaz-Gonzalez
a7d5fb69e2 docs: add migration note 2022-08-10 14:15:05 -04:00
Jose Diaz-Gonzalez
e66671f3c5 feat: implement the caddy plugin
This plugin uses a docker-compose based Caddy installation in conjunction with injected container labels to route requests. It only exposes the minimal necessary for routing traffic to docker containers. Users wishing to customize further labels may explore using the docker-options plugin to attach additional labels during the 'deploy' phase.
2022-08-10 14:13:19 -04:00
Jose Diaz-Gonzalez
583cbc7326 docs: cleanup proxy plugin headers 2022-08-10 14:08:10 -04:00
Jose Diaz-Gonzalez
d32f0fe2b5 docs: add a warning for using multiple proxy services 2022-08-10 14:06:05 -04:00
Jose Diaz-Gonzalez
9c6380f07d chore: update compose version 2022-08-10 13:56:29 -04:00
Jose Diaz-Gonzalez
ea7299eef7 fix: do not expose port 443 if no letsencrypt email is set 2022-08-10 13:56:18 -04:00
Jose Diaz-Gonzalez
d5085d3156 feat: expose letsencrypt-server property for traefik plugin 2022-08-10 13:56:06 -04:00
Jose Diaz-Gonzalez
8ab44f1ab0 Merge pull request #5293 from dokku/traefik-proxy
Add an official traefik proxy implementation
2022-08-10 12:06:19 -04:00
Jose Diaz-Gonzalez
12d5bc4649 refactor: use http and https as traefik entrypoints
This makes it a bit more clear as to where things are being redirected for web containers.

Also gate the https entrypoint behind the letsencrypt integration.
2022-08-10 05:20:54 -04:00
Jose Diaz-Gonzalez
bebb05268c feat: restart traefik automatically unless stopped 2022-08-10 05:20:54 -04:00
Jose Diaz-Gonzalez
aeaf8e78f1 fix: run shfmt 2022-08-10 05:20:54 -04:00
Jose Diaz-Gonzalez
b66a8e6181 docs: note that requests are routed once the container is running. 2022-08-10 05:20:54 -04:00
Jose Diaz-Gonzalez
8fe122ffbd feat: implement the traefik plugin
This plugin uses a docker-compose based Traefik installation in conjunction with injected container labels to route requests. It only exposes the minimal necessary for routing traffic to docker containers. Users wishing to customize further labels may explore using the docker-options plugin to attach additional labels during the 'deploy' phase.
2022-08-10 05:20:54 -04:00
Jose Diaz-Gonzalez
45e250443c Merge pull request #5294 from dokku/alternative-proxies
Document and enable alternative proxy implementations
2022-08-10 05:20:41 -04:00
Jose Diaz-Gonzalez
f4c886e10f Merge pull request #5291 from dokku/dependabot/pip/tests/apps/python-flask/werkzeug-2.2.2
chore(deps): bump werkzeug from 2.2.1 to 2.2.2 in /tests/apps/python-flask
2022-08-10 05:10:46 -04:00
Jose Diaz-Gonzalez
40c5cd089a Merge pull request #5292 from dokku/dependabot/pip/tests/apps/multi/flask-2.2.2
chore(deps): bump flask from 2.2.1 to 2.2.2 in /tests/apps/multi
2022-08-10 05:10:38 -04:00
Jose Diaz-Gonzalez
823928a44c Merge pull request #5290 from dokku/dependabot/pip/tests/apps/python-flask/flask-2.2.2
chore(deps): bump flask from 2.2.1 to 2.2.2 in /tests/apps/python-flask
2022-08-10 05:10:29 -04:00
Jose Diaz-Gonzalez
98feb988fa feat: implement nginx:start and nginx:stop commands 2022-08-10 04:23:05 -04:00
Jose Diaz-Gonzalez
b605de522c refactor: split out proxy port configuration into it's own trigger
This will allow it to be called by plugins other than the nginx-vhosts one.
2022-08-10 04:23:05 -04:00
Jose Diaz-Gonzalez
707cafd26d fix: correct the required networking suffix 2022-08-10 04:23:05 -04:00
Jose Diaz-Gonzalez
f2c7392276 docs: add documentation for implementing a proxy 2022-08-10 04:23:05 -04:00
Jose Diaz-Gonzalez
f094ea1f72 chore: move nginx docs to new proxies location 2022-08-10 04:23:05 -04:00
dependabot[bot]
ebed512dbc chore(deps): bump flask from 2.2.1 to 2.2.2 in /tests/apps/multi
Bumps [flask](https://github.com/pallets/flask) from 2.2.1 to 2.2.2.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.2.1...2.2.2)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-09 13:14:28 +00:00
dependabot[bot]
8cef4a4f5d chore(deps): bump werkzeug in /tests/apps/python-flask
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 2.2.1 to 2.2.2.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/2.2.1...2.2.2)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-09 13:14:12 +00:00
dependabot[bot]
36e93cab03 chore(deps): bump flask from 2.2.1 to 2.2.2 in /tests/apps/python-flask
Bumps [flask](https://github.com/pallets/flask) from 2.2.1 to 2.2.2.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.2.1...2.2.2)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-09 13:14:08 +00:00
Jose Diaz-Gonzalez
c4de27a4a6 Merge pull request #5202 from dokku/builder-lambda 2022-08-09 04:46:46 -04:00
Jose Diaz-Gonzalez
6caf4e6039 fix: use newer lambda-builder 2022-08-09 02:34:04 -04:00
Jose Diaz-Gonzalez
7cc84dcdbe tests: add unit test for lambda builder 2022-08-09 02:13:06 -04:00
Jose Diaz-Gonzalez
65b9c6aa3e fix: delete the data dir for the app after the app is deleted 2022-08-09 02:12:27 -04:00
Jose Diaz-Gonzalez
2959fdd154 fix: create the data directory for an app as necessary 2022-08-09 02:11:48 -04:00
Jose Diaz-Gonzalez
a71e4219be fix: set the correct image source type based on label
We also have a special carveout for herokuish as folks may deploy built images with it.
2022-08-09 02:11:32 -04:00
Jose Diaz-Gonzalez
30e279b6b9 fix: suppress labeling output for the dockerfile builder 2022-08-09 02:10:46 -04:00
Jose Diaz-Gonzalez
216647890e Merge pull request #5288 from dokku/josegonzalez-patch-1
Do not have bottom border float on page
2022-08-08 22:33:19 -04:00
Jose Diaz-Gonzalez
9c3876045a fix: do not have bottom border float on page
This covers up some of the content.
2022-08-08 22:33:06 -04:00
Jose Diaz-Gonzalez
86d7b6b649 docs: fix path for alternative lamba.yml 2022-08-08 15:15:29 -04:00
Jose Diaz-Gonzalez
d91957b969 fix: use correct path for source call 2022-08-08 15:15:29 -04:00
Jose Diaz-Gonzalez
5ee0619888 fix: install the lambda-builder package in ci and development 2022-08-08 15:15:28 -04:00
Jose Diaz-Gonzalez
fbd77ee5e8 docs: document the lambda builder 2022-08-08 15:14:49 -04:00
Jose Diaz-Gonzalez
35c248fb5c fix: use correct variable name for lambda.yml path 2022-08-08 15:14:49 -04:00
Jose Diaz-Gonzalez
7eecbefdd0 chore: run shfmt 2022-08-08 15:14:49 -04:00
Jose Diaz-Gonzalez
2715d2a485 chore: drop extra cp statement 2022-08-08 15:14:49 -04:00
Jose Diaz-Gonzalez
951dd98f17 feat: ensure the container is routable by dokku
- Keep the container alive via DOCKER_LAMBDA_STAY_OPEN=1
- Set the default listening port to 5000 (which is what herokuish will use)
2022-08-08 15:14:49 -04:00
Jose Diaz-Gonzalez
8ca71d9ff5 fix: add com.dokku.builder-type label to built image
This will allow schedulers to make decisions when interacting with images from specific builders.
2022-08-08 15:14:49 -04:00
Jose Diaz-Gonzalez
f2e791f48f fix: do not detect builder-lambda on armhf
While the lambda-builder project builds for armhf, the underlying images are not armhf/arm compatible (only arm64).
2022-08-08 15:14:48 -04:00
Jose Diaz-Gonzalez
f549934740 fix: update lambda-builder usage and write out Procfile/lambda.zip 2022-08-08 15:14:48 -04:00
Jose Diaz-Gonzalez
3a09d2217f feat: initial templates for scheduling (not building, but i need them somewhere) 2022-08-08 15:14:48 -04:00
Jose Diaz-Gonzalez
92790b70e8 feat: broken support for lambda-builder
It's currently broken because there are flags in there that aren't actually implemented
2022-08-08 15:14:48 -04:00
Jose Diaz-Gonzalez
02d6813209 scratch: initial implementation 2022-08-08 15:14:48 -04:00
Jose Diaz-Gonzalez
96ef82cbc9 Merge pull request #5227 from dokku/josegonzalez-patch-1
Drop forwarded port from vagrant setup
2022-08-08 15:08:32 -04:00
Jose Diaz-Gonzalez
f9c2251711 Merge branch 'master' into josegonzalez-patch-1 2022-08-08 15:08:22 -04:00
Jose Diaz-Gonzalez
fb73c9e1d9 Merge pull request #5285 from dokku/update-dev-dependencies
Update all development dependencies
2022-08-08 15:07:57 -04:00
Jose Diaz-Gonzalez
15695eded2 Merge pull request #5240 from dokku/drop-unsupported-os
Drop support for CentOS, Fedora, OpenSuse, as well as Debian 9
2022-08-07 18:36:52 -04:00
Jose Diaz-Gonzalez
70fc35c317 chore: drop unsupported operating systems
We will no longer support CentOS, Fedora, and Opensuse as installation targets. These are not actively maintained by anyone with commit rights and occasionally cause issues for users as they are not tested during the release process.

Rather than have subpar support for an untested operating system, we're removing support for them completely. Users of these operating systems should take a look migration to the docker-based installation method, which will always be tested and supported by the project.

Additionally, drop support for Debian 9 as it is now EOL.
2022-08-07 18:36:30 -04:00
Jose Diaz-Gonzalez
0835e7706f Merge pull request #5281 from dokku/dependabot/pip/tests/apps/multi/flask-2.2.1
chore(deps): bump flask from 2.1.3 to 2.2.1 in /tests/apps/multi
2022-08-07 18:34:43 -04:00
Jose Diaz-Gonzalez
c4d1196975 Merge pull request #5280 from dokku/dependabot/pip/tests/apps/python-flask/flask-2.2.1
chore(deps): bump flask from 2.1.3 to 2.2.1 in /tests/apps/python-flask
2022-08-07 18:34:37 -04:00
Jose Diaz-Gonzalez
4ce2d63a0e Merge pull request #5284 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-223
chore(deps-dev): bump heroku/heroku-buildpack-php from 222 to 223 in /tests/apps/php
2022-08-07 18:34:21 -04:00
Jose Diaz-Gonzalez
e4db82aebf chore: update all development dependencies 2022-08-07 14:16:16 -04:00
dependabot[bot]
3f05666d59 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 222 to 223.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v222...v223)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-05 13:10:58 +00:00
Jose Diaz-Gonzalez
35e1ac9825 Merge pull request #5283 from alexgleason/homepage-install-link
Homepage: fix link in quick install guide
2022-08-04 13:59:57 -04:00
Alex Gleason
4a81bce0e7 Homepage: fix link in quick install guide 2022-08-04 12:33:05 -05:00
dependabot[bot]
1d9b8fdda8 chore(deps): bump flask from 2.1.3 to 2.2.1 in /tests/apps/multi
Bumps [flask](https://github.com/pallets/flask) from 2.1.3 to 2.2.1.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.1.3...2.2.1)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-04 13:10:51 +00:00
dependabot[bot]
571a96fc77 chore(deps): bump flask from 2.1.3 to 2.2.1 in /tests/apps/python-flask
Bumps [flask](https://github.com/pallets/flask) from 2.1.3 to 2.2.1.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.1.3...2.2.1)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-04 13:10:45 +00:00
Dokku Bot
63f7f39048 Release 0.27.10
# History

## 0.27.10

Install/update via the bootstrap script:

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

### Bug Fixes

- #5276: @d6rkaiz Remove duplicate syntax for nginx.conf

### Other

- #5274: @kennell readme: mention Ubuntu 22.04 compability
2022-08-01 15:09:46 +00:00
Jose Diaz-Gonzalez
ef5a2a9f5b Merge pull request #5276 from d6rkaiz/fix_duplicate_nginxconf
Remove duplicate syntax for nginx.conf
2022-08-01 11:08:50 -04:00
Isao Sugimoto
51547b7688 fix duplicate syntax for nginx.conf 2022-07-31 15:38:53 +00:00
Jose Diaz-Gonzalez
6fe2559c01 Merge pull request #5274 from kennell/patch-1 2022-07-30 17:30:31 -04:00
Kevin Kennell
af069041c5 readme: mention Ubuntu 22.04 compability 2022-07-30 23:30:06 +02:00
Dokku Bot
9192198096 Release 0.27.9
# History

## 0.27.9

Install/update via the bootstrap script:

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

### Bug Fixes

- #5273: @josegonzalez Correct issue where more complex docker args were not properly parsed when scheduling containers
- #5272: @josegonzalez Add support for --global as app name when calling config-get trigger
- #5263: @alexgleason Update deprecated apt-key command

### New Features

- #5262: @josegonzalez Run shfmt against all test files
- #5257: @chrisjdixon Move nginx.conf.d includes after all other hard-coded config to allow for overrides

### Other

- #5184: @yasoob New website. Closes #5175
- #5270: @dependabot[bot] chore(deps): bump werkzeug from 2.2.0 to 2.2.1 in /tests/apps/python-flask
- #5265: @dependabot[bot] chore(deps): bump werkzeug from 2.1.2 to 2.2.0 in /tests/apps/python-flask
- #5264: @dependabot[bot] chore(deps): bump sinatra from 2.2.1 to 2.2.2 in /tests/apps/ruby
- #5261: @dependabot[bot] chore(deps): bump luizm/action-sh-checker from 0.4.0 to 0.5.0
- #5258: @dependabot[bot] chore(deps): bump sinatra from 2.2.0 to 2.2.1 in /tests/apps/ruby
2022-07-30 19:42:09 +00:00
Jose Diaz-Gonzalez
d68fbd5e09 Merge pull request #5184 from yasoob/new-website
New website. Closes #5175
2022-07-30 15:41:10 -04:00
Jose Diaz-Gonzalez
39561bde4a Merge pull request #5273 from dokku/complex-docker-args
Correct issue where more complex docker args were not properly parsed when scheduling containers
2022-07-30 12:58:46 -04:00
Jose Diaz-Gonzalez
16090e58c7 Merge pull request #5272 from dokku/5269-global-config-trigger-flag
Add support for --global as app name when calling config-get trigger
2022-07-30 00:49:28 -04:00
Jose Diaz-Gonzalez
d8e9511769 fix: correct issue where more complex docker args were not properly parsed when scheduling containers
In cases where a docker arg uses backticks - which may happen with docker labels - scheduled containers would fail to support these due to performing a double-eval. This is particularly noticeable for traefik labels, where backticks and parenthesis are common. This fix properly handles docker args as an array instead of performing an extra eval when scheduling containers.
2022-07-30 00:48:38 -04:00
Jose Diaz-Gonzalez
652a9ec26c chore: switch to correct trigger when getting a global argument
While both will now work, using the correct trigger will skip some extra logic.
2022-07-29 22:45:23 -04:00
Jose Diaz-Gonzalez
d243433625 fix: add support for --global as app name when calling config-get trigger
The trigger in use _should_ be config-get-global, but some calling code does not check, so adding support here will ensure the calling code gets what it expects.

Refs #5269
2022-07-29 22:44:23 -04:00
M.Yasoob Ullah Khalid ☺
40143622ad Merge branch 'master' into new-website 2022-07-29 09:34:14 +05:00
Jose Diaz-Gonzalez
bfe679fb50 Merge pull request #5270 from dokku/dependabot/pip/tests/apps/python-flask/werkzeug-2.2.1
chore(deps): bump werkzeug from 2.2.0 to 2.2.1 in /tests/apps/python-flask
2022-07-28 19:28:52 -04:00
Jose Diaz-Gonzalez
e7a8793414 Merge pull request #5263 from alexgleason/apt-key
Update deprecated apt-key command
2022-07-28 19:26:18 -04:00
dependabot[bot]
a9f3ed206b chore(deps): bump werkzeug in /tests/apps/python-flask
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/2.2.0...2.2.1)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-28 13:20:21 +00:00
Jose Diaz-Gonzalez
2f58ab0637 Merge pull request #5265 from dokku/dependabot/pip/tests/apps/python-flask/werkzeug-2.2.0
chore(deps): bump werkzeug from 2.1.2 to 2.2.0 in /tests/apps/python-flask
2022-07-26 14:49:23 -04:00
Jose Diaz-Gonzalez
abaf6db3e3 Merge pull request #5264 from dokku/dependabot/bundler/tests/apps/ruby/sinatra-2.2.2
chore(deps): bump sinatra from 2.2.1 to 2.2.2 in /tests/apps/ruby
2022-07-26 14:49:14 -04:00
Jose Diaz-Gonzalez
235dfd2257 Merge pull request #5261 from dokku/dependabot/github_actions/luizm/action-sh-checker-0.5.0
chore(deps): bump luizm/action-sh-checker from 0.4.0 to 0.5.0
2022-07-26 14:49:04 -04:00
dependabot[bot]
a09262b35e chore(deps): bump werkzeug in /tests/apps/python-flask
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 2.1.2 to 2.2.0.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/2.1.2...2.2.0)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-25 13:10:56 +00:00
dependabot[bot]
2daf25186f chore(deps): bump sinatra from 2.2.1 to 2.2.2 in /tests/apps/ruby
Bumps [sinatra](https://github.com/sinatra/sinatra) from 2.2.1 to 2.2.2.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v2.2.1...v2.2.2)

---
updated-dependencies:
- dependency-name: sinatra
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-25 13:04:33 +00:00
dependabot[bot]
2648e90f29 chore(deps): bump luizm/action-sh-checker from 0.4.0 to 0.5.0
Bumps [luizm/action-sh-checker](https://github.com/luizm/action-sh-checker) from 0.4.0 to 0.5.0.
- [Release notes](https://github.com/luizm/action-sh-checker/releases)
- [Commits](38985be9e8...edd0e45ecf)

---
updated-dependencies:
- dependency-name: luizm/action-sh-checker
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-25 03:59:32 +00:00
Jose Diaz-Gonzalez
fa9595ea35 Merge pull request #5262 from dokku/shfmt
Run shfmt against all test files
2022-07-24 23:59:05 -04:00
Alex Gleason
480ee7b9af Update deprecated apt-key command 2022-07-24 11:12:16 -05:00
Jose Diaz-Gonzalez
9d332e9b2d chore: run shfmt against all test files 2022-07-21 14:57:42 -04:00
Jose Diaz-Gonzalez
e6b9851b52 Merge pull request #5257 from chrisjdixon/master
Move nginx.conf.d includes after all other hard-coded config to allow for overrides
2022-07-21 14:56:28 -04:00
Jose Diaz-Gonzalez
71210df5ec Merge pull request #5258 from dokku/dependabot/bundler/tests/apps/ruby/sinatra-2.2.1
chore(deps): bump sinatra from 2.2.0 to 2.2.1 in /tests/apps/ruby
2022-07-18 15:44:07 -04:00
dependabot[bot]
99b25d3e91 chore(deps): bump sinatra from 2.2.0 to 2.2.1 in /tests/apps/ruby
Bumps [sinatra](https://github.com/sinatra/sinatra) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v2.2.0...v2.2.1)

---
updated-dependencies:
- dependency-name: sinatra
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-18 13:05:44 +00:00
chrisjdixon
a8a9bc93ab moved "include {{ $.DOKKU_ROOT }}/{{ $.APP }}/nginx.conf.d/*.conf" after default error pages 2022-07-18 17:29:19 +10:00
Dokku Bot
d5590b61af Release 0.27.8
# History

## 0.27.8

Install/update via the bootstrap script:

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

### Bug Fixes

- #5232: @YuukiHogo builder-build fix for DOKKU_DOCKERFILE_CACHE_BUILD and DOKKU_DOCKER_BUILD_OPTS variables

### New Features

- #5255: @josegonzalez export DOKKU_COMMAND for use in authentication systems

### Other

- #5250: @dependabot[bot] chore(deps): bump flask from 2.1.2 to 2.1.3 in /tests/apps/multi
- #5251: @dependabot[bot] chore(deps): bump flask from 2.1.2 to 2.1.3 in /tests/apps/python-flask
- #5245: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 221 to 222 in /tests/apps/php
2022-07-17 23:07:58 +00:00
Jose Diaz-Gonzalez
84aee0909d Merge pull request #5255 from dokku/josegonzalez-patch-2
export DOKKU_COMMAND for use in authentication systems
2022-07-17 19:05:05 -04:00
Jose Diaz-Gonzalez
cfc1cfb305 feat: export DOKKU_COMMAND for use in authentication systems
Some auth systems may decide that an app is not available for use by a particular command vs making them wholly available or not. Exporting the variable here allows such systems to function correctly.
2022-07-17 17:58:37 -04:00
Jose Diaz-Gonzalez
4d8e8148d5 Merge pull request #5250 from dokku/dependabot/pip/tests/apps/multi/flask-2.1.3
chore(deps): bump flask from 2.1.2 to 2.1.3 in /tests/apps/multi
2022-07-17 15:23:45 -04:00
Jose Diaz-Gonzalez
beec7f8468 Merge pull request #5232 from YuukiHogo/builder-dockerfile-patch-1
builder-build fix for DOKKU_DOCKERFILE_CACHE_BUILD and DOKKU_DOCKER_BUILD_OPTS variables
2022-07-17 14:03:42 -04:00
dependabot[bot]
5b35bab62c chore(deps): bump flask from 2.1.2 to 2.1.3 in /tests/apps/multi
Bumps [flask](https://github.com/pallets/flask) from 2.1.2 to 2.1.3.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.1.2...2.1.3)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-17 18:03:11 +00:00
Jose Diaz-Gonzalez
ebed25693a Merge pull request #5251 from dokku/dependabot/pip/tests/apps/python-flask/flask-2.1.3
chore(deps): bump flask from 2.1.2 to 2.1.3 in /tests/apps/python-flask
2022-07-17 14:02:47 -04:00
dependabot[bot]
6ae507a0b2 chore(deps): bump flask from 2.1.2 to 2.1.3 in /tests/apps/python-flask
Bumps [flask](https://github.com/pallets/flask) from 2.1.2 to 2.1.3.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.1.2...2.1.3)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-14 13:11:13 +00:00
Jose Diaz-Gonzalez
5182638599 Merge branch 'master' into builder-dockerfile-patch-1 2022-07-13 03:45:28 -04:00
Jose Diaz-Gonzalez
23341bd0c5 Merge pull request #5245 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-222
chore(deps-dev): bump heroku/heroku-buildpack-php from 221 to 222 in /tests/apps/php
2022-07-10 20:54:08 -04:00
dependabot[bot]
8a2f7401a3 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 221 to 222.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v221...v222)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-08 13:22:28 +00:00
Dokku Bot
6c3de8c628 Release 0.27.7
# History

## 0.27.7

Install/update via the bootstrap script:

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

### Bug Fixes

- #5238: @josegonzalez Respect dokku system user/group when setting storage permissions on installation

### New Features

- #5239: @josegonzalez Add builder-type and image-stage labels to all images

### Documentation

- #5241: @josegonzalez Clarify where logs are pulled from and general log shipping stance
- #5237: @josegonzalez Fix builder-pack:set command example

### Other

- #5235: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 220 to 221 in /tests/apps/php
2022-07-05 23:20:17 +00:00
Jose Diaz-Gonzalez
99dd31ceeb Merge pull request #5239 from dokku/builder-labels
Add builder-type and image-stage labels to all images
2022-07-05 19:06:26 -04:00
Jose Diaz-Gonzalez
b983afe9fa feat: add builder-type and image-stage labels to all images
This allows users to further introspect where an image came from, and therefore what - if any - custom logic to perform.
2022-07-05 15:09:59 -04:00
Jose Diaz-Gonzalez
ef64210821 Merge pull request #5241 from dokku/5234-log-docs
Clarify where logs are pulled from and general log shipping stance
2022-07-05 14:50:38 -04:00
Jose Diaz-Gonzalez
dcb880b0f2 docs: clarify log shipping stance
While it is unfortunate that we don't store logs locally, doing so is actually a fairly difficult ask. Rather than pretending the problem doesn't exist, we'll clarify how logs are currently fetched, as well as point users to integrations/tools that may make their lives easier.

Refs #5234
2022-07-05 14:49:21 -04:00
Jose Diaz-Gonzalez
b26aec249c Merge pull request #5235 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-221
chore(deps-dev): bump heroku/heroku-buildpack-php from 220 to 221 in /tests/apps/php
2022-07-05 14:16:45 -04:00
Jose Diaz-Gonzalez
3903b8a331 Merge pull request #5238 from dokku/storage-perms
Respect dokku system user/group when setting storage permissions on installation
2022-07-05 14:16:28 -04:00
Jose Diaz-Gonzalez
5f192ec3a1 fix: respect dokku system user/group when setting storage permissions on installation 2022-07-04 23:32:58 -04:00
Jose Diaz-Gonzalez
f42972fc3c Merge pull request #5237 from dokku/cnb-docs
Fix builder-pack:set command example
2022-07-04 23:31:18 -04:00
Jose Diaz-Gonzalez
f4f3d4adc6 docs: fix builder-pack:set command example 2022-07-04 23:30:38 -04:00
dependabot[bot]
7e0a8dca94 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 220 to 221.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v220...v221)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-04 13:15:04 +00:00
YuukiHogo
ab45435473 Update builder-build 2022-06-28 12:28:59 +03:00
Dokku Bot
23322b6dde Release 0.27.6
# History

## 0.27.6

Install/update via the bootstrap script:

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

### Bug Fixes

- #5225: @josegonzalez Use original app name when setting include_labels for vector source
- #5228: @josegonzalez Always respect app.json formations in scale settings
- #5201: @josegonzalez Use pack as default builder for arm64 servers

### Documentation

- #5230: @josegonzalez Clarify usage of build args to set environment variables for Dockerfile deploys
- #5208: @asokoloski-m Fix typo in dockerfile builder docs
- #5206: @AxelTheGerman Added dokku-litestream to list of community plugins

### Other

- #5218: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 219 to 220 in /tests/apps/php
- #5222: @dependabot[bot] chore(deps): bump jetty-servlet from 11.0.10 to 11.0.11 in /tests/apps/java
- #5224: @josegonzalez Document that the community registry plugin should be uninstalled before upgrading past 0.24.x
- #5220: @dependabot[bot] chore(deps): bump jetty-servlet from 11.0.9 to 11.0.10 in /tests/apps/java
- #5212: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 218 to 219 in /tests/apps/php
- #5210: @dependabot[bot] chore(deps): bump monolog/monolog from 1.27.0 to 1.27.1 in /tests/apps/php
- #5204: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 217 to 218 in /tests/apps/php
2022-06-27 17:19:21 +00:00
Jose Diaz-Gonzalez
fbf136bbe3 Merge pull request #5218 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-220
chore(deps-dev): bump heroku/heroku-buildpack-php from 219 to 220 in /tests/apps/php
2022-06-27 12:28:40 -04:00
Jose Diaz-Gonzalez
952e7c6fda Merge pull request #5230 from dokku/josegonzalez-patch-2
Clarify usage of build args to set environment variables for Dockerfile deploys
2022-06-27 10:54:44 -04:00
Jose Diaz-Gonzalez
ae10527b8a docs: clarify usage of build args to set environment variables for Dockerfile deploys
While documented under Dockerfile deploys, developers looking at docs might not know to go to those docs to find this information out.
2022-06-27 10:53:09 -04:00
dependabot[bot]
b4d0456f5f chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 219 to 220.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v219...v220)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-27 14:47:33 +00:00
Jose Diaz-Gonzalez
3f28c24b57 Merge pull request #5225 from dokku/5221-inflected-app-name
Use original app name when setting include_labels for vector source
2022-06-27 10:46:25 -04:00
Jose Diaz-Gonzalez
9da3b4e155 Merge pull request #5228 from dokku/5205-sync-ps-with-app-json
Always respect app.json formations in scale settings
2022-06-27 10:46:13 -04:00
Jose Diaz-Gonzalez
dded26625b fix: always respect app.json formations in scale settings
Without this change, it was possible would end up in a state where we might still try to scale processes up that no longer exists.

Closes #5205
2022-06-26 14:33:19 -04:00
Jose Diaz-Gonzalez
dac21b7280 chore: drop forwarded port from vagrant setup
This isn't necessary since routing should be performed via the exposed `DOKKU_IP` or `dokku.me` hostname.
2022-06-26 12:41:17 -04:00
Jose Diaz-Gonzalez
515eb372a4 Merge pull request #5201 from dokku/5113-switch-to-pack
Use pack as default builder for arm64 servers
2022-06-25 01:17:11 -04:00
Jose Diaz-Gonzalez
abe06b3d84 docs: fix the error message to be slightly more readable 2022-06-25 01:16:53 -04:00
Jose Diaz-Gonzalez
229d97e502 Merge pull request #5222 from dokku/dependabot/maven/tests/apps/java/org.eclipse.jetty-jetty-servlet-11.0.11
chore(deps): bump jetty-servlet from 11.0.10 to 11.0.11 in /tests/apps/java
2022-06-25 01:15:27 -04:00
Jose Diaz-Gonzalez
51cd7fd85e fix: use original app name when setting include_labels for vector source
Closes #5221
2022-06-25 01:06:28 -04:00
Jose Diaz-Gonzalez
9a52cbdd27 Merge pull request #5224 from dokku/5223-uninstall-registry
Document that the community registry plugin should be uninstalled before upgrading past 0.24.x
2022-06-25 00:26:54 -04:00
Jose Diaz-Gonzalez
7d5c242fa9 docs: document that the community registry plugin should be uninstalled first
Without this, it's unknown what will happen.

Refs #5223
2022-06-25 00:26:31 -04:00
dependabot[bot]
e665243ae1 chore(deps): bump jetty-servlet in /tests/apps/java
Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.10 to 11.0.11.
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.10...jetty-11.0.11)

---
updated-dependencies:
- dependency-name: org.eclipse.jetty:jetty-servlet
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-23 15:11:04 +00:00
Jose Diaz-Gonzalez
6f79fb2e87 Merge pull request #5220 from dokku/dependabot/maven/tests/apps/java/org.eclipse.jetty-jetty-servlet-11.0.10
chore(deps): bump jetty-servlet from 11.0.9 to 11.0.10 in /tests/apps/java
2022-06-23 01:29:07 -04:00
dependabot[bot]
211f0ef049 chore(deps): bump jetty-servlet in /tests/apps/java
Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.9 to 11.0.10.
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.9...jetty-11.0.10)

---
updated-dependencies:
- dependency-name: org.eclipse.jetty:jetty-servlet
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-21 13:08:59 +00:00
Jose Diaz-Gonzalez
07aa343140 Merge pull request #5212 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-219
chore(deps-dev): bump heroku/heroku-buildpack-php from 218 to 219 in /tests/apps/php
2022-06-10 10:44:57 -04:00
dependabot[bot]
ab658ec274 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 218 to 219.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v218...v219)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-10 13:11:39 +00:00
Jose Diaz-Gonzalez
a2eab242b6 Merge pull request #5210 from dokku/dependabot/composer/tests/apps/php/monolog/monolog-1.27.1
chore(deps): bump monolog/monolog from 1.27.0 to 1.27.1 in /tests/apps/php
2022-06-09 10:28:27 -04:00
dependabot[bot]
321b94db19 chore(deps): bump monolog/monolog in /tests/apps/php
Bumps [monolog/monolog](https://github.com/Seldaek/monolog) from 1.27.0 to 1.27.1.
- [Release notes](https://github.com/Seldaek/monolog/releases)
- [Changelog](https://github.com/Seldaek/monolog/blob/1.27.1/CHANGELOG.md)
- [Commits](https://github.com/Seldaek/monolog/compare/1.27.0...1.27.1)

---
updated-dependencies:
- dependency-name: monolog/monolog
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-09 13:18:32 +00:00
Jose Diaz-Gonzalez
e17f87d62d Merge pull request #5208 from asokoloski-m/patch-1
Fix docs: incorrect command for app storage status
2022-06-08 11:05:29 -04:00
asokoloski-m
4fc23a8ffb Fix incorrect command for app storage status 2022-06-08 09:08:31 -05:00
Jose Diaz-Gonzalez
044027e31b Merge pull request #5206 from AxelTheGerman/patch-1
Added dokku-litestream
2022-06-05 22:08:39 -04:00
Jose Diaz-Gonzalez
e4be7e38ad Merge pull request #5204 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-218
chore(deps-dev): bump heroku/heroku-buildpack-php from 217 to 218 in /tests/apps/php
2022-06-05 22:07:06 -04:00
Axel Gustav
5a93e875a3 Added dokku-litestream
I recently created a plugin for SQLite replication via Litestream to S3. Been using it myself in production for a couple of weeks and was able to successfully restore a backed up DB so I guess it's ready for people to try and be added to this list.
2022-05-31 21:51:05 -07:00
M.Yasoob Ullah Khalid ☺
ddfbdbe6d3 Merge branch 'master' into new-website 2022-05-30 23:23:32 +05:00
dependabot[bot]
24fdc0a778 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 217 to 218.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v217...v218)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-30 13:14:40 +00:00
Jose Diaz-Gonzalez
3db3bfb150 feat: use pack as default builder for arm64 servers
Herokuish is not and will never be supported on arm servers, so attempting to use it will only fail builds.

Also fail when trying to default to herokuish on armhf instances. We can't default to pack as it's just not built for armhf/arm (only arm64).

Closes #5113
2022-05-29 16:41:42 -04:00
Dokku Bot
37036ec2fa Release 0.27.5
# History

## 0.27.5

Install/update via the bootstrap script:

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

### Bug Fixes

- #5183: @josegonzalez Filter apps when verifying app names
- #5199: @josegonzalez Revert "fix: Vector fails to start container due to --watch-config flag"
- #5197: @holamendi fix: Vector fails to start container due to --watch-config flag
- #5192: @josegonzalez Confirm installation of universe packages when installing on ubuntu
- #5193: @josegonzalez Force-set correct permissions on env files
- #5181: @josegonzalez Ensure we default SSH_NAME to NAME when filtering apps

### New Features

- #5196: @josegonzalez Disable herokuish usage on both armhf and arm64 platforms
- #5194: @josegonzalez Upgrade base Dockerfile image to phusion/baseimage:focal-1.2.0

### Other

- #5200: @dependabot[bot] chore(deps): bump rack from 2.2.3 to 2.2.3.1 in /tests/apps/ruby
- #5198: @dependabot[bot] chore(deps): bump grunt from 1.5.2 to 1.5.3 in /tests/apps/multi
- #5187: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 216 to 217 in /tests/apps/php
2022-05-29 19:12:03 +00:00
Jose Diaz-Gonzalez
4b94a37f72 Merge pull request #5183 from dokku/user-access-to-app
Filter apps when verifying app names
2022-05-29 12:50:44 -04:00
Yasoob Khalid
863eead7fd added asciicasts 2022-05-29 21:22:10 +05:00
Jose Diaz-Gonzalez
db4d8dba88 refactor: consolidate app name verification into golang binary
This change ensures we only have to change this logic once in order to get them to apply to both languages in the codebase.
2022-05-29 11:32:24 -04:00
Jose Diaz-Gonzalez
cc9d76aa11 fix: set globally 2022-05-29 00:00:26 -04:00
Jose Diaz-Gonzalez
97bbded5bb tests: set the PLUGIN_ENABLED_PATH for config tests 2022-05-28 23:23:25 -04:00
Jose Diaz-Gonzalez
a95e5d210d tests: test the command funcs to exercise app validation 2022-05-28 18:23:34 -04:00
Jose Diaz-Gonzalez
0f7b24fcc7 Merge pull request #5200 from dokku/dependabot/bundler/tests/apps/ruby/rack-2.2.3.1
chore(deps): bump rack from 2.2.3 to 2.2.3.1 in /tests/apps/ruby
2022-05-28 18:08:02 -04:00
dependabot[bot]
3a2e9973b6 chore(deps): bump rack from 2.2.3 to 2.2.3.1 in /tests/apps/ruby
Bumps [rack](https://github.com/rack/rack) from 2.2.3 to 2.2.3.1.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/2.2.3...2.2.3.1)

---
updated-dependencies:
- dependency-name: rack
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-28 16:22:59 +00:00
Jose Diaz-Gonzalez
5b5f6031b2 Merge pull request #5198 from dokku/dependabot/npm_and_yarn/tests/apps/multi/grunt-1.5.3
chore(deps): bump grunt from 1.5.2 to 1.5.3 in /tests/apps/multi
2022-05-28 12:22:26 -04:00
Jose Diaz-Gonzalez
96a2ec01f5 fix: ensure go tests have PLUGIN_ENABLED_PATH set 2022-05-28 12:22:11 -04:00
dependabot[bot]
9473ac5f38 chore(deps): bump grunt from 1.5.2 to 1.5.3 in /tests/apps/multi
Bumps [grunt](https://github.com/gruntjs/grunt) from 1.5.2 to 1.5.3.
- [Release notes](https://github.com/gruntjs/grunt/releases)
- [Changelog](https://github.com/gruntjs/grunt/blob/main/CHANGELOG)
- [Commits](https://github.com/gruntjs/grunt/compare/v1.5.2...v1.5.3)

---
updated-dependencies:
- dependency-name: grunt
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-28 03:59:34 +00:00
Jose Diaz-Gonzalez
d803dbb84a fix: drop extra unnecessary validation of app name
The app name is already validated when calling subcommands, so no need to validate it yet again here.
2022-05-27 23:44:46 -04:00
Jose Diaz-Gonzalez
5981ff8e9b refactor: split out config logic to remove need to check app name for function-based usage
This MR splits out the logic such that there is now a binary that handles function based calls without validating the app name. We should only every check the app name for the subcommands and not internally. Internal calls should have their arguments taken at face value.
2022-05-27 23:28:59 -04:00
Jose Diaz-Gonzalez
b3d7174a7a fix: filter apps when verifying app names
This ensures folks can't interact with apps that are hidden from them via the filtering performed in app listing.
2022-05-27 23:28:59 -04:00
Jose Diaz-Gonzalez
9ea888f62e Merge pull request #5199 from dokku/revert-5197-fix-vector-start-container
Revert "fix: Vector fails to start container due to --watch-config flag"
2022-05-26 10:22:54 -04:00
Jose Diaz-Gonzalez
2ba5c9df50 Revert "fix: Vector fails to start container due to --watch-config flag" 2022-05-26 10:22:32 -04:00
Jose Diaz-Gonzalez
d30fb7b85c Merge pull request #5197 from holamendi/fix-vector-start-container
fix: Vector fails to start container due to --watch-config flag
2022-05-25 10:52:18 -04:00
Pablo Orellana
0a895b2d11 remove --watch-config argument on startVectorContainer 2022-05-25 07:44:38 +02:00
Jose Diaz-Gonzalez
20ed65efdd Merge pull request #5196 from dokku/herokuish-arm64
Disable herokuish usage on both armhf and arm64 platforms
2022-05-23 12:21:46 -04:00
Jose Diaz-Gonzalez
27769f54b0 feat: disable herokuish usage on both armhf and arm64 platforms
We will not provide support for herokuish on either as herokuish is meant to be Heroku-compatible, and the Heroku stack does not support arm. Use 'pack' or Dockerfiles for app building instead.
2022-05-22 17:12:52 -04:00
Jose Diaz-Gonzalez
0748b3eec8 Merge pull request #5194 from dokku/josegonzalez-patch-1
Upgrade base Dockerfile image to phusion/baseimage:focal-1.2.0
2022-05-22 16:39:05 -04:00
Jose Diaz-Gonzalez
469156ac98 Merge pull request #5187 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-217
chore(deps-dev): bump heroku/heroku-buildpack-php from 216 to 217 in /tests/apps/php
2022-05-21 14:42:49 -04:00
Jose Diaz-Gonzalez
6f5f3fa908 feat: upgrade base Dockerfile image to phusion/baseimage:focal-1.2.0 2022-05-21 13:42:45 -04:00
Jose Diaz-Gonzalez
fe84ec08a8 Merge pull request #5192 from dokku/5191-jammy-bootstrap
Confirm installation of universe packages when installing on ubuntu
2022-05-21 13:37:13 -04:00
Jose Diaz-Gonzalez
f6cd3f5c89 Merge pull request #5193 from dokku/5190-env-perms
Force-set correct permissions on env files
2022-05-21 13:37:03 -04:00
Jose Diaz-Gonzalez
88c1abc608 fix: force-set correct permissions on env files
If an env file is written as a root user - for example, during plugin install - the permissions on the file may change to root. This forces those permissions back to what they should be so that the dokku user can edit the files later on.

Closes #5190
2022-05-21 03:45:05 -04:00
Jose Diaz-Gonzalez
a937e6de50 fix: confirm installation of universe packages when installing on ubuntu
This fixes installs stalling on Ubuntu 22.04 because of necessary confirmation of the addition.

Closes #5191
2022-05-21 02:47:06 -04:00
dependabot[bot]
5d36264dd2 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 216 to 217.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v216...v217)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-19 13:20:54 +00:00
Yasoob Khalid
2d5799625c added a small freelance tooltip :) 2022-05-17 10:47:13 +05:00
Yasoob Khalid
156da6c30a triggering the animation once images are loaded. Wasn't playing correctly on safari earlier 2022-05-17 10:42:05 +05:00
Yasoob Khalid
22fd5ea0f0 improved display on mobile 2022-05-17 10:34:59 +05:00
Yasoob Khalid
0fca7f5256 increased padding for larger screens 2022-05-17 10:26:59 +05:00
Yasoob Khalid
aeae7cea53 scale the svg based on screen size 2022-05-17 10:26:04 +05:00
Yasoob Khalid
cbe8376bdb added asciinema demo on homepage 2022-05-17 10:10:14 +05:00
Yasoob Khalid
8cbe7e66a3 updated copy on homepage 2022-05-17 05:49:59 +05:00
Yasoob Khalid
2994e724c2 moved SVG hover group to the left to balance out the page 2022-05-17 03:13:57 +05:00
Yasoob Khalid
9b76012f1c modified the quickstart commands 2022-05-17 03:04:23 +05:00
Yasoob Khalid
21ad711055 make use of versioned css 2022-05-17 02:57:08 +05:00
Yasoob Khalid
70217bcc13 apparently tooltips can not be initialized twice 2022-05-17 02:42:40 +05:00
Yasoob Khalid
53d1a21638 dropdown toggle should stay white when it is toggled 2022-05-17 02:30:08 +05:00
Yasoob Khalid
f26ca309e3 New website ✨ 2022-05-17 02:21:24 +05:00
Jose Diaz-Gonzalez
af88aabfb6 Merge pull request #5181 from dokku/fix-user-auth-app
Ensure we default SSH_NAME to NAME when filtering apps
2022-05-15 22:18:08 -04:00
Jose Diaz-Gonzalez
4491142a7b fix: ensure we default SSH_NAME to NAME when filtering apps
This mirrors how SSH_NAME is populated for the user-auth trigger.
2022-05-15 21:19:11 -04:00
Dokku Bot
5df4bd710a Release 0.27.4
# History

## 0.27.4

Install/update via the bootstrap script:

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

### Documentation

- #5180: @Bilal-io fixes rst-versions height
2022-05-15 23:44:34 +00:00
Jose Diaz-Gonzalez
a41cb46b77 Merge pull request #5180 from Bilal-io/master
fixes rst-versions height
2022-05-15 18:29:18 -04:00
BK
7477f6438a fixes rst-versions height 2022-05-15 15:27:50 -07:00
Dokku Bot
ed2c4493a4 Release 0.27.3
# History

## 0.27.3

Install/update via the bootstrap script:

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

### Bug Fixes

- #5178: @josegonzalez Fix app filtering for authenticated usage
- #5173: @bitjockey42 Add 22.04 to supported distro versions

### Documentation

- #5179: @Bilal-io Fixes to the Docs version switcher
- #5177: @josegonzalez docs: cleanup experimental warning in scheduler docs
- #5176: @josegonzalez Update installation requirements to mention arm64 and ubuntu 22.04
- #5174: @vladdoster Fix typos and phrasing in remote commands documentation
2022-05-15 21:52:19 +00:00
Jose Diaz-Gonzalez
2ed14fc81c Merge pull request #5179 from Bilal-io/master
Fixes to the Docs version switcher
2022-05-15 17:21:57 -04:00
BK
978e2fd702 Merge branch 'dokku:master' into master 2022-05-15 14:18:18 -07:00
BK
712954560a fixes version switcher height
The panel expands to a max-height of 600, and shrinks to 100vh - 100px on browsers with height smaller than 600px.
2022-05-15 14:17:25 -07:00
BK
5e648c29ed Fixes the overflow in the docs' version switcher
hides the scroll bar from the overflow switcher and displays a vertical scroll when the panel is expanded.
2022-05-15 14:13:54 -07:00
Jose Diaz-Gonzalez
ea84e4d5e4 Merge pull request #5178 from dokku/fix-app-filtering
Fix app filtering for authenticated usage
2022-05-15 17:11:34 -04:00
BK
f2a32ae0f6 Fix docs version switcher to display latest first
Changes the old sorting which displays master then the oldest to newest, so that it would display master followed by the newest version
2022-05-15 14:08:33 -07:00
Jose Diaz-Gonzalez
358b02ac39 fix: add missing app-list event 2022-05-15 15:52:30 -04:00
Jose Diaz-Gonzalez
268c318bc5 fix: ensure we do not filter apps for certain commands and triggers
Some things must pull *all* apps vs filtered apps (mostly things that write out config files or install triggers). Using an unflitered list is best.

Also, we default to filtering, which should be what most usage needs.
2022-05-15 15:47:13 -04:00
Jose Diaz-Gonzalez
f87cd22340 feat: allow returning an unfiltered list of users
This is useful for upgrades or commands that _must_ perform against all apps.
2022-05-15 15:33:19 -04:00
Jose Diaz-Gonzalez
b1223cd6cc Merge pull request #5177 from dokku/docs-experimental
docs: cleanup experimental warning in scheduler docs
2022-05-15 10:10:23 -04:00
Jose Diaz-Gonzalez
9fb4ce6cb4 docs: cleanup experimental warning in kubernetes docs 2022-05-15 10:10:16 -04:00
Jose Diaz-Gonzalez
d73eee201d docs: cleanup experimental warning in nomad docs 2022-05-15 10:09:39 -04:00
Jose Diaz-Gonzalez
dd900a3975 Merge pull request #5176 from dokku/josegonzalez-patch-1
Update installation requirements to mention arm64 and ubuntu 22.04
2022-05-15 10:06:42 -04:00
Jose Diaz-Gonzalez
9452699aaf docs: update installation requirements to mention arm64 and ubuntu 22.04 2022-05-15 10:05:54 -04:00
Jose Diaz-Gonzalez
f2081505eb Merge pull request #5174 from vladdoster/patch-1 2022-05-14 16:04:13 -04:00
vladislav doster
857724984e docs: fix typos & phrasing in remote-commands.md
- `interpretting` -> `interpreting`
- `overriden`      -> `overridden`
- correct article agreement
2022-05-14 14:29:45 -05:00
Jose Diaz-Gonzalez
4e36ab9361 Merge pull request #5173 from bitjockey42/add_2204_to_supported_distro_versions
Add 22.04 to supported distro versions
2022-05-14 03:26:03 -04:00
Bitjockey
b3ac4f36f7 Add 22.04 to supported distro versions 2022-05-14 03:13:29 -04:00
Dokku Bot
d4246fc8be Release 0.27.2
# History

## 0.27.2

Install/update via the bootstrap script:

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

### Bug Fixes

- #5166: @josegonzalez Ensure permissions for global VHOST file are set to the dokku user on install
- #5141: @josegonzalez fix: set correct version on scheduler plugin
- #5069: @josegonzalez Do not start intermediate container when calling dokku run after a failed build

### New Features

- #5168: @josegonzalez Add support for Ubuntu 22.04
- #5125: @abulava Start the vector logging container after Docker daemon restarts
- #5117: @josegonzalez Upgrade to golang 1.17.9

### Documentation

- #5167: @scottpashley Update client documentation to remove reference to unmaintained python client

### Other

- #5120: @dependabot[bot] chore(deps): bump github/codeql-action from 1 to 2
- #5145: @dependabot[bot] chore(deps): bump jinja2 from 3.1.1 to 3.1.2 in /tests/apps/python-flask
- #5157: @dependabot[bot] chore(deps): bump luizm/action-sh-checker from 0.3.0 to 0.4.0
- #5160: @dependabot[bot] chore(deps): bump docker/setup-buildx-action from 1 to 2
- #5161: @dependabot[bot] chore(deps): bump docker/login-action from 1 to 2
- #5162: @dependabot[bot] chore(deps): bump docker/setup-qemu-action from 1 to 2
- #5153: @dependabot[bot] chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/config
- #5152: @dependabot[bot] chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/nodejs-express-noappjson
- #5151: @dependabot[bot] chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/nodejs-express-noprocfile
- #5150: @dependabot[bot] chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/nodejs-express
- #5154: @dependabot[bot] chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/gitsubmodules
- #5155: @dependabot[bot] chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/.websocket.disabled
- #5163: @dependabot[bot] chore(deps): bump minimist from 1.2.5 to 1.2.6 in /tests/apps/multi
- #5149: @dependabot[bot] chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/dockerfile-dokku-scale
- #5148: @dependabot[bot] chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/dockerfile-procfile-bad
- #5147: @dependabot[bot] chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/dockerfile-procfile
- #5144: @dependabot[bot] chore(deps): bump flask from 2.1.1 to 2.1.2 in /tests/apps/python-flask
- #5143: @dependabot[bot] chore(deps): bump werkzeug from 2.1.1 to 2.1.2 in /tests/apps/python-flask
- #5142: @dependabot[bot] chore(deps): bump flask from 2.1.1 to 2.1.2 in /tests/apps/multi
- #5137: @dependabot[bot] chore(deps): bump grunt from 1.4.1 to 1.5.2 in /tests/apps/multi
- #5119: @dependabot[bot] chore(deps): bump socket.io from 4.4.1 to 4.5.0 in /tests/apps/.websocket.disabled
2022-05-12 22:52:08 +00:00
Jose Diaz-Gonzalez
efaf717443 Merge pull request #5120 from dokku/dependabot/github_actions/github/codeql-action-2
chore(deps): bump github/codeql-action from 1 to 2
2022-05-12 00:14:14 -04:00
Jose Diaz-Gonzalez
0adeca1c51 Merge pull request #5168 from dokku/5123-jammy
Add support for Ubuntu 22.04
2022-05-10 17:39:53 -04:00
Jose Diaz-Gonzalez
dfa5b21d71 feat: add support for Ubuntu 22.04
Closes #5123
2022-05-10 17:39:25 -04:00
Jose Diaz-Gonzalez
5106952799 Merge pull request #5166 from dokku/default-vhost-perms
Ensure permissions for global VHOST file are set to the dokku user on install
2022-05-10 17:29:17 -04:00
Jose Diaz-Gonzalez
a65412a019 Merge pull request #5167 from scottpashley/patch-1 2022-05-10 15:32:31 -04:00
Scott Pashley
0956b777cb Update clients.md
The Python library was last updated 8 years ago
2022-05-10 20:23:11 +01:00
Jose Diaz-Gonzalez
4edfb11150 Merge pull request #5125 from abulava/vector-container-up
Start the vector logging container after Docker daemon restarts
2022-05-10 12:54:28 -04:00
Jose Diaz-Gonzalez
c68ae008cc fix: ensure permissions for global VHOST file are set to the dokku user on install 2022-05-10 12:44:01 -04:00
Jose Diaz-Gonzalez
46d733ffe9 Merge pull request #5145 from dokku/dependabot/pip/tests/apps/python-flask/jinja2-3.1.2
chore(deps): bump jinja2 from 3.1.1 to 3.1.2 in /tests/apps/python-flask
2022-05-10 12:37:46 -04:00
Jose Diaz-Gonzalez
876e7cf6f7 Merge pull request #5157 from dokku/dependabot/github_actions/luizm/action-sh-checker-0.4.0
chore(deps): bump luizm/action-sh-checker from 0.3.0 to 0.4.0
2022-05-10 10:26:35 -04:00
Jose Diaz-Gonzalez
c589206b64 Merge pull request #5160 from dokku/dependabot/github_actions/docker/setup-buildx-action-2
chore(deps): bump docker/setup-buildx-action from 1 to 2
2022-05-10 10:26:20 -04:00
Jose Diaz-Gonzalez
ae8c093bc8 Merge pull request #5161 from dokku/dependabot/github_actions/docker/login-action-2
chore(deps): bump docker/login-action from 1 to 2
2022-05-10 10:25:57 -04:00
Jose Diaz-Gonzalez
5d5996cfd7 Merge pull request #5162 from dokku/dependabot/github_actions/docker/setup-qemu-action-2
chore(deps): bump docker/setup-qemu-action from 1 to 2
2022-05-10 10:25:39 -04:00
Jose Diaz-Gonzalez
228c8a3540 Merge pull request #5153 from dokku/dependabot/npm_and_yarn/tests/apps/config/express-4.18.1
chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/config
2022-05-10 10:25:08 -04:00
Jose Diaz-Gonzalez
e2a49311d2 Merge pull request #5152 from dokku/dependabot/npm_and_yarn/tests/apps/nodejs-express-noappjson/express-4.18.1
chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/nodejs-express-noappjson
2022-05-10 10:24:57 -04:00
Jose Diaz-Gonzalez
b67c8b7737 Merge pull request #5151 from dokku/dependabot/npm_and_yarn/tests/apps/nodejs-express-noprocfile/express-4.18.1
chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/nodejs-express-noprocfile
2022-05-10 10:24:52 -04:00
Jose Diaz-Gonzalez
04dd10abe4 Merge pull request #5150 from dokku/dependabot/npm_and_yarn/tests/apps/nodejs-express/express-4.18.1
chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/nodejs-express
2022-05-10 10:24:44 -04:00
Jose Diaz-Gonzalez
e427cccf9e Merge pull request #5154 from dokku/dependabot/npm_and_yarn/tests/apps/gitsubmodules/express-4.18.1
chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/gitsubmodules
2022-05-10 10:24:38 -04:00
Jose Diaz-Gonzalez
6adfaa973a Merge pull request #5155 from dokku/dependabot/npm_and_yarn/tests/apps/dot-websocket.disabled/express-4.18.1
chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/.websocket.disabled
2022-05-10 10:24:32 -04:00
Jose Diaz-Gonzalez
34e5b2e059 Merge pull request #5163 from dokku/dependabot/npm_and_yarn/tests/apps/multi/minimist-1.2.6
chore(deps): bump minimist from 1.2.5 to 1.2.6 in /tests/apps/multi
2022-05-10 10:24:11 -04:00
dependabot[bot]
8cf7d80414 chore(deps): bump express in /tests/apps/nodejs-express-noappjson
Bumps [express](https://github.com/expressjs/express) from 4.17.3 to 4.18.1.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.17.3...4.18.1)

---
updated-dependencies:
- dependency-name: express
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 14:21:58 +00:00
dependabot[bot]
bb6f7f7402 chore(deps): bump express in /tests/apps/.websocket.disabled
Bumps [express](https://github.com/expressjs/express) from 4.17.3 to 4.18.1.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.17.3...4.18.1)

---
updated-dependencies:
- dependency-name: express
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 14:21:54 +00:00
dependabot[bot]
4c84674872 chore(deps): bump express in /tests/apps/gitsubmodules
Bumps [express](https://github.com/expressjs/express) from 4.17.3 to 4.18.1.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.17.3...4.18.1)

---
updated-dependencies:
- dependency-name: express
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 14:21:50 +00:00
dependabot[bot]
e24ecd711f chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/config
Bumps [express](https://github.com/expressjs/express) from 4.17.3 to 4.18.1.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.17.3...4.18.1)

---
updated-dependencies:
- dependency-name: express
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 14:21:47 +00:00
dependabot[bot]
caa26a3519 chore(deps): bump express in /tests/apps/nodejs-express-noprocfile
Bumps [express](https://github.com/expressjs/express) from 4.17.3 to 4.18.1.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.17.3...4.18.1)

---
updated-dependencies:
- dependency-name: express
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 14:21:41 +00:00
dependabot[bot]
77793d8464 chore(deps): bump express in /tests/apps/nodejs-express
Bumps [express](https://github.com/expressjs/express) from 4.17.3 to 4.18.1.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.17.3...4.18.1)

---
updated-dependencies:
- dependency-name: express
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 14:21:27 +00:00
Jose Diaz-Gonzalez
6135c5be4c Merge pull request #5149 from dokku/dependabot/npm_and_yarn/tests/apps/dockerfile-dokku-scale/express-4.18.1
chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/dockerfile-dokku-scale
2022-05-10 10:21:08 -04:00
Jose Diaz-Gonzalez
d6966f8670 Merge pull request #5148 from dokku/dependabot/npm_and_yarn/tests/apps/dockerfile-procfile-bad/express-4.18.1
chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/dockerfile-procfile-bad
2022-05-10 10:21:04 -04:00
Jose Diaz-Gonzalez
89d83fb026 Merge pull request #5147 from dokku/dependabot/npm_and_yarn/tests/apps/dockerfile-procfile/express-4.18.1
chore(deps): bump express from 4.17.3 to 4.18.1 in /tests/apps/dockerfile-procfile
2022-05-10 10:20:39 -04:00
dependabot[bot]
e64749858e chore(deps): bump jinja2 from 3.1.1 to 3.1.2 in /tests/apps/python-flask
Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.1.1...3.1.2)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-10 14:20:00 +00:00
Jose Diaz-Gonzalez
2d75c8bcd9 Merge pull request #5144 from dokku/dependabot/pip/tests/apps/python-flask/flask-2.1.2
chore(deps): bump flask from 2.1.1 to 2.1.2 in /tests/apps/python-flask
2022-05-10 10:19:14 -04:00
dependabot[bot]
8ed81e70d5 chore(deps): bump flask from 2.1.1 to 2.1.2 in /tests/apps/python-flask
Bumps [flask](https://github.com/pallets/flask) from 2.1.1 to 2.1.2.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.1.1...2.1.2)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-06 20:41:20 +00:00
dependabot[bot]
9fd8c2f267 chore(deps): bump minimist from 1.2.5 to 1.2.6 in /tests/apps/multi
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-06 20:41:17 +00:00
Jose Diaz-Gonzalez
83b8321525 Merge pull request #5143 from dokku/dependabot/pip/tests/apps/python-flask/werkzeug-2.1.2
chore(deps): bump werkzeug from 2.1.1 to 2.1.2 in /tests/apps/python-flask
2022-05-06 16:40:58 -04:00
Jose Diaz-Gonzalez
6d77bbdd20 Merge pull request #5142 from dokku/dependabot/pip/tests/apps/multi/flask-2.1.2
chore(deps): bump flask from 2.1.1 to 2.1.2 in /tests/apps/multi
2022-05-06 16:40:48 -04:00
Jose Diaz-Gonzalez
bb3477169e Merge pull request #5137 from dokku/dependabot/npm_and_yarn/tests/apps/multi/grunt-1.5.2
chore(deps): bump grunt from 1.4.1 to 1.5.2 in /tests/apps/multi
2022-05-06 16:40:36 -04:00
dependabot[bot]
ecdb701685 chore(deps): bump docker/setup-qemu-action from 1 to 2
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 1 to 2.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-06 13:30:16 +00:00
dependabot[bot]
4dc49f9154 chore(deps): bump docker/login-action from 1 to 2
Bumps [docker/login-action](https://github.com/docker/login-action) from 1 to 2.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-06 13:30:13 +00:00
dependabot[bot]
0c7d15371f chore(deps): bump docker/setup-buildx-action from 1 to 2
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 1 to 2.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-06 13:30:10 +00:00
dependabot[bot]
380ee349e8 chore(deps): bump luizm/action-sh-checker from 0.3.0 to 0.4.0
Bumps [luizm/action-sh-checker](https://github.com/luizm/action-sh-checker) from 0.3.0 to 0.4.0.
- [Release notes](https://github.com/luizm/action-sh-checker/releases)
- [Commits](7f44869033...38985be9e8)

---
updated-dependencies:
- dependency-name: luizm/action-sh-checker
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-03 13:37:53 +00:00
dependabot[bot]
1c0a306a9b chore(deps): bump express in /tests/apps/dockerfile-dokku-scale
Bumps [express](https://github.com/expressjs/express) from 4.17.3 to 4.18.1.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.17.3...4.18.1)

---
updated-dependencies:
- dependency-name: express
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 13:13:21 +00:00
dependabot[bot]
f8eda4421f chore(deps): bump express in /tests/apps/dockerfile-procfile-bad
Bumps [express](https://github.com/expressjs/express) from 4.17.3 to 4.18.1.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.17.3...4.18.1)

---
updated-dependencies:
- dependency-name: express
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 13:13:20 +00:00
dependabot[bot]
e7b7a029ad chore(deps): bump express in /tests/apps/dockerfile-procfile
Bumps [express](https://github.com/expressjs/express) from 4.17.3 to 4.18.1.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.17.3...4.18.1)

---
updated-dependencies:
- dependency-name: express
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 13:13:19 +00:00
dependabot[bot]
df580ac151 chore(deps): bump werkzeug in /tests/apps/python-flask
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 2.1.1 to 2.1.2.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/2.1.1...2.1.2)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-29 13:11:05 +00:00
dependabot[bot]
5c2e953283 chore(deps): bump flask from 2.1.1 to 2.1.2 in /tests/apps/multi
Bumps [flask](https://github.com/pallets/flask) from 2.1.1 to 2.1.2.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.1.1...2.1.2)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-29 13:10:53 +00:00
Jose Diaz-Gonzalez
dc869603bf Merge pull request #5141 from dokku/josegonzalez-patch-1
fix: set correct version on scheduler plugin
2022-04-28 03:01:15 -04:00
Jose Diaz-Gonzalez
ea1046b96d fix: set correct version on scheduler plugin 2022-04-28 03:00:43 -04:00
dependabot[bot]
d16870ee21 chore(deps): bump grunt from 1.4.1 to 1.5.2 in /tests/apps/multi
Bumps [grunt](https://github.com/gruntjs/grunt) from 1.4.1 to 1.5.2.
- [Release notes](https://github.com/gruntjs/grunt/releases)
- [Changelog](https://github.com/gruntjs/grunt/blob/main/CHANGELOG)
- [Commits](https://github.com/gruntjs/grunt/compare/v1.4.1...v1.5.2)

---
updated-dependencies:
- dependency-name: grunt
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-27 10:50:54 +00:00
Andrey Bulava
8d640ac958 Set RestartPolicy:"unless-stopped" for the vector container. 2022-04-26 13:42:10 +03:00
Jose Diaz-Gonzalez
12656a111a Merge pull request #5119 from dokku/dependabot/npm_and_yarn/tests/apps/dot-websocket.disabled/socket.io-4.5.0
chore(deps): bump socket.io from 4.4.1 to 4.5.0 in /tests/apps/.websocket.disabled
2022-04-25 10:20:13 -04:00
dependabot[bot]
74e0583be2 chore(deps): bump github/codeql-action from 1 to 2
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 1 to 2.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-25 13:44:33 +00:00
dependabot[bot]
8540006372 chore(deps): bump socket.io in /tests/apps/.websocket.disabled
Bumps [socket.io](https://github.com/socketio/socket.io) from 4.4.1 to 4.5.0.
- [Release notes](https://github.com/socketio/socket.io/releases)
- [Changelog](https://github.com/socketio/socket.io/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io/compare/4.4.1...4.5.0)

---
updated-dependencies:
- dependency-name: socket.io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-25 13:12:05 +00:00
Jose Diaz-Gonzalez
d0d56f9472 Merge pull request #5117 from dokku/upgrade-golang
Upgrade to golang 1.17.9
2022-04-23 14:13:54 -04:00
Jose Diaz-Gonzalez
05c4ac6460 chore: run 'go mod tidy' on all plugins 2022-04-23 01:51:42 -04:00
Jose Diaz-Gonzalez
92d5bd8584 feat: upgrade to golang 1.17.9 2022-04-23 01:02:18 -04:00
Jose Diaz-Gonzalez
d38a873423 Merge pull request #5069 from dokku/5065-enter-run-fix
Do not start intermediate container when calling dokku run after a failed build
2022-04-21 01:17:03 -04:00
Jose Diaz-Gonzalez
73b75970df fix: remove extra whitespace 2022-04-20 23:27:55 -04:00
Jose Diaz-Gonzalez
86985ad2c9 fix: properly build args so they expand 2022-04-20 23:18:11 -04:00
Jose Diaz-Gonzalez
3daf33d5c2 fix: correct shfmt issue 2022-04-20 20:09:16 -04:00
Jose Diaz-Gonzalez
880dae3f21 fix: add image-stage tag to herokuish builder 2022-04-20 20:09:16 -04:00
Jose Diaz-Gonzalez
334e15fbb5 fix: do not attempt to start a container based on a non-release image
Closes #5065
2022-04-20 20:09:16 -04:00
Jose Diaz-Gonzalez
8b6e88000a feat: ensure we handle build failures correctly
Always exit properly and ensure we cleanup the intermediate tar container.
2022-04-20 20:09:16 -04:00
Jose Diaz-Gonzalez
157297ab87 feat: ensure the image tag is correct if a build fails
Either retag the original image or remove the tag completely.
2022-04-20 20:09:16 -04:00
Jose Diaz-Gonzalez
92ecc76000 chore: always use long-form for image removal 2022-04-20 20:09:16 -04:00
Jose Diaz-Gonzalez
d9659b8cf2 fix: use array for arguments to container creation 2022-04-20 20:09:16 -04:00
Jose Diaz-Gonzalez
01b9f6f730 chore: drop commented out code 2022-04-20 20:09:16 -04:00
Jose Diaz-Gonzalez
53f7c89e46 fix: do not call procfile-get-command if there is no command specified 2022-04-20 20:09:16 -04:00
Jose Diaz-Gonzalez
63d7d28036 fix: correct a few shellcheck issues 2022-04-20 20:09:16 -04:00
Jose Diaz-Gonzalez
d3eb1f24cf fix: add missing image-stage label to dockerfile builder 2022-04-20 20:09:15 -04:00
Dokku Bot
72c18da687 Release 0.27.1
# History

## 0.27.1

Install/update via the bootstrap script:

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

### Bug Fixes

- #5095: @josegonzalez Ensure we properly clone and rename common properties
- #5094: @josegonzalez Handle case when apps:clone is run in a directory the dokku user does not have access to
- #5093: @josegonzalez Fix deploy branch setting
- #5068: @josegonzalez Properly set cron-id from flag

### New Features

- #5092: @josegonzalez Warn and exit non-zero when attempting to rebuild from a non-existent branch
- #5103: @naveensrinivasan Included githubactions in the dependabot config

### Documentation

- #5090: @josegonzalez Clarify the exact command that is run once a day by cron tasks
- #5085: @josegonzalez Use issue template form functionality on github
- #5076: @stamp-cmd Lint Markdown, Remove unused links
- #5070: @josegonzalez Add discord as support channel

### Other

- #5107: @dependabot[bot] chore(deps): bump actions/checkout from 2 to 3
- #5105: @dependabot[bot] chore(deps): bump ibiqlik/action-yamllint from 3.0.4 to 3.1
- #5109: @dependabot[bot] chore(deps): bump actions/upload-artifact from 2 to 3
- #5108: @dependabot[bot] chore(deps): bump hadolint/hadolint-action from 1.6.0 to 2.1.0
- #5110: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 215 to 216 in /tests/apps/php
- #5104: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 214 to 215 in /tests/apps/php
- #5097: @dependabot[bot] chore(deps): bump werkzeug from 2.1.0 to 2.1.1 in /tests/apps/python-flask
- #5098: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 213 to 214 in /tests/apps/php
- #5096: @dependabot[bot] chore(deps): bump jetty-servlet from 11.0.8 to 11.0.9 in /tests/apps/java
- #5091: @josegonzalez Update all dependencies for multi test app
- #5089: @dependabot[bot] chore(deps): bump minimist from 1.2.5 to 1.2.6 in /tests/apps/multi
- #5081: @dependabot[bot] chore(deps): bump jinja2 from 3.0.3 to 3.1.1 in /tests/apps/python-flask
- #5071: @dependabot[bot] chore(deps): bump monolog/monolog from 1.26.1 to 1.27.0 in /tests/apps/php
- #5075: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 212 to 213 in /tests/apps/php
- #5082: @dependabot[bot] chore(deps): bump werkzeug from 2.0.3 to 2.1.0 in /tests/apps/python-flask
- #5086: @dependabot[bot] chore(deps): bump flask from 2.0.3 to 2.1.1 in /tests/apps/multi
- #5087: @dependabot[bot] chore(deps): bump flask from 2.0.3 to 2.1.1 in /tests/apps/python-flask
- #5067: @dependabot[bot] chore(deps): bump maven-dependency-plugin from 3.2.0 to 3.3.0 in /tests/apps/java
2022-04-21 00:00:37 +00:00
Jose Diaz-Gonzalez
64e5cfd43c Merge pull request #5107 from dokku/dependabot/github_actions/actions/checkout-3
chore(deps): bump actions/checkout from 2 to 3
2022-04-16 18:14:55 -04:00
Jose Diaz-Gonzalez
229dfc8906 Merge pull request #5092 from dokku/4898-git-warnings
Warn and exit non-zero when attempting to rebuild from a non-existent branch
2022-04-16 18:14:42 -04:00
dependabot[bot]
c0ab69c209 chore(deps): bump actions/checkout from 2 to 3
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-16 06:47:38 +00:00
Jose Diaz-Gonzalez
83dc326318 Merge pull request #5105 from dokku/dependabot/github_actions/ibiqlik/action-yamllint-3.1
chore(deps): bump ibiqlik/action-yamllint from 3.0.4 to 3.1
2022-04-16 02:47:11 -04:00
Jose Diaz-Gonzalez
d64a4ed339 Merge pull request #5109 from dokku/dependabot/github_actions/actions/upload-artifact-3
chore(deps): bump actions/upload-artifact from 2 to 3
2022-04-16 02:46:59 -04:00
Jose Diaz-Gonzalez
83bf2faf06 Merge pull request #5108 from dokku/dependabot/github_actions/hadolint/hadolint-action-2.1.0
chore(deps): bump hadolint/hadolint-action from 1.6.0 to 2.1.0
2022-04-16 02:46:50 -04:00
Jose Diaz-Gonzalez
49d08a8fb6 fix: pass along failed build status when building from image 2022-04-16 02:44:51 -04:00
Jose Diaz-Gonzalez
ba7c685e11 fix: pass failed exit codes around as necessary 2022-04-16 02:25:48 -04:00
Jose Diaz-Gonzalez
eec49878a5 fix: skip rebuild during clone/rename if there is no code 2022-04-16 01:40:22 -04:00
Jose Diaz-Gonzalez
1b6861cdbb feat: add plugin trigger for checking if an app has code
This will allow us to short-circuit build processes that would otherwise be triggered due to various commands in Dokku.
2022-04-16 01:40:22 -04:00
Jose Diaz-Gonzalez
68c0d7e964 feat: warn and exit non-zero when attempting to rebuild from a non-existent branch
Closes #4898
2022-04-16 01:40:22 -04:00
Jose Diaz-Gonzalez
5fc738f001 Merge pull request #5110 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-216
chore(deps-dev): bump heroku/heroku-buildpack-php from 215 to 216 in /tests/apps/php
2022-04-16 01:37:39 -04:00
dependabot[bot]
4f08a62411 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 215 to 216.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v215...v216)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-15 13:10:56 +00:00
dependabot[bot]
5ba4c71ac2 chore(deps): bump actions/upload-artifact from 2 to 3
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 2 to 3.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-14 15:32:24 +00:00
dependabot[bot]
776cdcbbe1 chore(deps): bump hadolint/hadolint-action from 1.6.0 to 2.1.0
Bumps [hadolint/hadolint-action](https://github.com/hadolint/hadolint-action) from 1.6.0 to 2.1.0.
- [Release notes](https://github.com/hadolint/hadolint-action/releases)
- [Changelog](https://github.com/hadolint/hadolint-action/blob/master/.releaserc)
- [Commits](d7b3858233...f988afea3d)

---
updated-dependencies:
- dependency-name: hadolint/hadolint-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-14 15:32:20 +00:00
dependabot[bot]
2eb94c6522 chore(deps): bump ibiqlik/action-yamllint from 3.0.4 to 3.1
Bumps [ibiqlik/action-yamllint](https://github.com/ibiqlik/action-yamllint) from 3.0.4 to 3.1.
- [Release notes](https://github.com/ibiqlik/action-yamllint/releases)
- [Commits](ed2b6e9115...81e214fd48)

---
updated-dependencies:
- dependency-name: ibiqlik/action-yamllint
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-14 15:32:09 +00:00
Jose Diaz-Gonzalez
b4e9c0d004 Merge pull request #5104 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-215
chore(deps-dev): bump heroku/heroku-buildpack-php from 214 to 215 in /tests/apps/php
2022-04-14 11:31:33 -04:00
Jose Diaz-Gonzalez
f348df87a5 Merge pull request #5103 from turrisxyz/naveen/feat/dependabot
Included githubactions in the dependabot config
2022-04-14 11:31:24 -04:00
dependabot[bot]
b5782def2f chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 214 to 215.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v214...v215)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 13:36:15 +00:00
Naveen
d6287755de Included githubactions in the dependabot config
This should help with keeping the GitHub actions updated on new releases. This will also help with keeping it secure.

Dependabot helps in keeping the supply chain secure https://docs.github.com/en/code-security/dependabot

GitHub actions up to date https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot

https://github.com/ossf/scorecard/blob/main/docs/checks.md#dependency-update-tool
2022-04-10 17:39:46 -05:00
Jose Diaz-Gonzalez
01e16e1265 Merge pull request #5097 from dokku/dependabot/pip/tests/apps/python-flask/werkzeug-2.1.1
chore(deps): bump werkzeug from 2.1.0 to 2.1.1 in /tests/apps/python-flask
2022-04-04 18:11:24 -04:00
dependabot[bot]
d927b3ac18 chore(deps): bump werkzeug in /tests/apps/python-flask
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 2.1.0 to 2.1.1.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/2.1.0...2.1.1)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-04 19:54:59 +00:00
Jose Diaz-Gonzalez
b277bec988 Merge pull request #5098 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-214
chore(deps-dev): bump heroku/heroku-buildpack-php from 213 to 214 in /tests/apps/php
2022-04-04 15:54:26 -04:00
Jose Diaz-Gonzalez
5df570daa0 Merge pull request #5096 from dokku/dependabot/maven/tests/apps/java/org.eclipse.jetty-jetty-servlet-11.0.9
chore(deps): bump jetty-servlet from 11.0.8 to 11.0.9 in /tests/apps/java
2022-04-04 15:54:00 -04:00
Jose Diaz-Gonzalez
0078cc0ea9 Merge pull request #5095 from dokku/clone-rename-common-properties
Ensure we properly clone and rename common properties
2022-04-04 15:53:42 -04:00
Jose Diaz-Gonzalez
a0199e9a44 Merge pull request #5094 from dokku/fix-clone-as-root
Handle case when apps:clone is run in a directory the dokku user does not have access to
2022-04-04 15:53:25 -04:00
dependabot[bot]
11317c1197 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 213 to 214.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v213...v214)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-04 13:13:22 +00:00
dependabot[bot]
1c3c317e1f chore(deps): bump jetty-servlet in /tests/apps/java
Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.8 to 11.0.9.
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.8...jetty-11.0.9)

---
updated-dependencies:
- dependency-name: org.eclipse.jetty:jetty-servlet
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-04 13:12:54 +00:00
Jose Diaz-Gonzalez
66e7a84b8a Merge pull request #5093 from dokku/fix-deploy-branch-setting
Fix deploy branch setting
2022-04-03 14:34:54 -04:00
Jose Diaz-Gonzalez
1c79b60952 fix: ensure we properly clone and rename common properties 2022-04-03 14:34:14 -04:00
Jose Diaz-Gonzalez
29bf40fa60 fix: handle case when apps:clone is run in a directory the dokku user does not have access to 2022-04-03 14:13:26 -04:00
Jose Diaz-Gonzalez
548bb6eae2 chore: always use DOKKU_ROOT env var instead of /home/dokku 2022-04-03 13:14:52 -04:00
Jose Diaz-Gonzalez
98e38bd70d chore: update log output for deploy-branch setting
The code was referencing an env var that is no longer used in favor of a git plugin setting.
2022-04-03 13:14:27 -04:00
Jose Diaz-Gonzalez
e197aa62d1 fix: use correct env var for app name when setting initial DOKKU_DEPLOY_BRANCH propery 2022-04-03 13:11:52 -04:00
Jose Diaz-Gonzalez
68aa14292e Merge pull request #5091 from dokku/update-multi-deps
Update all dependencies for multi test app
2022-04-02 04:21:10 -04:00
Jose Diaz-Gonzalez
9b118cdfe3 chore: drop trailing whitespace 2022-04-02 02:17:43 -04:00
Jose Diaz-Gonzalez
045dfb45d1 chore: update all dependencies for multi test app 2022-04-02 02:02:56 -04:00
Jose Diaz-Gonzalez
7a72afe880 Merge pull request #5089 from dokku/dependabot/npm_and_yarn/tests/apps/multi/minimist-1.2.6
chore(deps): bump minimist from 1.2.5 to 1.2.6 in /tests/apps/multi
2022-04-02 01:45:32 -04:00
Jose Diaz-Gonzalez
5c3921e457 Merge pull request #5090 from dokku/5078-clarify-docs
Clarify the exact command that is run once a day by cron tasks
2022-04-02 00:55:23 -04:00
Jose Diaz-Gonzalez
a2fc3443d2 docs: clarify the exact command that is run once a day by cron tasks
Refs #5078
2022-04-02 00:55:10 -04:00
Jose Diaz-Gonzalez
a6eb7bbdfe Merge pull request #5081 from dokku/dependabot/pip/tests/apps/python-flask/jinja2-3.1.1
chore(deps): bump jinja2 from 3.0.3 to 3.1.1 in /tests/apps/python-flask
2022-04-01 23:58:21 -04:00
Jose Diaz-Gonzalez
456e70c1e2 Merge pull request #5071 from dokku/dependabot/composer/tests/apps/php/monolog/monolog-1.27.0
chore(deps): bump monolog/monolog from 1.26.1 to 1.27.0 in /tests/apps/php
2022-04-01 23:58:07 -04:00
Jose Diaz-Gonzalez
3bbb5bf160 Update feature_request.yaml 2022-04-01 19:39:05 -04:00
Jose Diaz-Gonzalez
d5cfa529c5 Update bug_report.yaml 2022-04-01 19:38:16 -04:00
Jose Diaz-Gonzalez
155ffc3cc9 Merge pull request #5085 from dokku/josegonzalez-patch-1
Use issue template form functionality on github
2022-04-01 19:34:47 -04:00
Jose Diaz-Gonzalez
699e6f3be6 Create feature_request.yaml 2022-04-01 19:32:41 -04:00
Jose Diaz-Gonzalez
2b4c3d4df1 Create buildpack_issue.yaml 2022-04-01 19:32:26 -04:00
Jose Diaz-Gonzalez
a6cc44d507 Update bug_report.yaml 2022-04-01 19:32:00 -04:00
dependabot[bot]
8539edfdeb chore(deps): bump monolog/monolog in /tests/apps/php
Bumps [monolog/monolog](https://github.com/Seldaek/monolog) from 1.26.1 to 1.27.0.
- [Release notes](https://github.com/Seldaek/monolog/releases)
- [Changelog](https://github.com/Seldaek/monolog/blob/1.27.0/CHANGELOG.md)
- [Commits](https://github.com/Seldaek/monolog/compare/1.26.1...1.27.0)

---
updated-dependencies:
- dependency-name: monolog/monolog
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-01 23:05:46 +00:00
dependabot[bot]
9bc424f858 chore(deps): bump jinja2 from 3.0.3 to 3.1.1 in /tests/apps/python-flask
Bumps [jinja2](https://github.com/pallets/jinja) from 3.0.3 to 3.1.1.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.0.3...3.1.1)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-01 23:04:54 +00:00
Jose Diaz-Gonzalez
053959b0dc Merge pull request #5075 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-213
chore(deps-dev): bump heroku/heroku-buildpack-php from 212 to 213 in /tests/apps/php
2022-04-01 19:04:43 -04:00
dependabot[bot]
ba4aa5f4d6 chore(deps): bump minimist from 1.2.5 to 1.2.6 in /tests/apps/multi
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-01 23:04:22 +00:00
Jose Diaz-Gonzalez
51bd36c1a1 Merge pull request #5082 from dokku/dependabot/pip/tests/apps/python-flask/werkzeug-2.1.0
chore(deps): bump werkzeug from 2.0.3 to 2.1.0 in /tests/apps/python-flask
2022-04-01 19:04:13 -04:00
Jose Diaz-Gonzalez
2d002c53a8 Merge pull request #5086 from dokku/dependabot/pip/tests/apps/multi/flask-2.1.1
chore(deps): bump flask from 2.0.3 to 2.1.1 in /tests/apps/multi
2022-04-01 19:04:04 -04:00
Jose Diaz-Gonzalez
da787b1cfa Merge pull request #5087 from dokku/dependabot/pip/tests/apps/python-flask/flask-2.1.1
chore(deps): bump flask from 2.0.3 to 2.1.1 in /tests/apps/python-flask
2022-04-01 19:03:55 -04:00
Jose Diaz-Gonzalez
59439c3907 Merge pull request #5076 from stamp-cmd/lint-markdown
Lint Markdown, Remove unused links
2022-04-01 19:02:55 -04:00
dependabot[bot]
35ebc8060b chore(deps): bump flask from 2.0.3 to 2.1.1 in /tests/apps/python-flask
Bumps [flask](https://github.com/pallets/flask) from 2.0.3 to 2.1.1.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.0.3...2.1.1)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-31 13:13:17 +00:00
dependabot[bot]
02427a66dc chore(deps): bump flask from 2.0.3 to 2.1.1 in /tests/apps/multi
Bumps [flask](https://github.com/pallets/flask) from 2.0.3 to 2.1.1.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.0.3...2.1.1)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-31 13:13:16 +00:00
Jose Diaz-Gonzalez
6d437f7d3e feat: create issue template for project 2022-03-30 14:32:14 -04:00
dependabot[bot]
19768460b0 chore(deps): bump werkzeug in /tests/apps/python-flask
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 2.0.3 to 2.1.0.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/2.0.3...2.1.0)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-29 13:10:59 +00:00
Kantanat Stamp
6af03ee5c7 Lint Markdown, Remove unused links 2022-03-20 13:39:24 +07:00
dependabot[bot]
bff9ee8729 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 212 to 213.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v212...v213)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-18 13:19:17 +00:00
Jose Diaz-Gonzalez
ae0374fc01 docs: use correct invite link 2022-03-13 18:32:11 -04:00
Jose Diaz-Gonzalez
aa2f66f74d Merge pull request #5070 from dokku/discord
Add discord as support channel
2022-03-13 18:25:18 -04:00
Jose Diaz-Gonzalez
4031b35af6 docs: add discord as support channel 2022-03-13 18:24:59 -04:00
Jose Diaz-Gonzalez
9daaf13a4d Merge pull request #5067 from dokku/dependabot/maven/tests/apps/java/org.apache.maven.plugins-maven-dependency-plugin-3.3.0
chore(deps): bump maven-dependency-plugin from 3.2.0 to 3.3.0 in /tests/apps/java
2022-03-12 19:44:40 -05:00
dependabot[bot]
8b938f0094 chore(deps): bump maven-dependency-plugin in /tests/apps/java
Bumps [maven-dependency-plugin](https://github.com/apache/maven-dependency-plugin) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/apache/maven-dependency-plugin/releases)
- [Commits](https://github.com/apache/maven-dependency-plugin/compare/maven-dependency-plugin-3.2.0...maven-dependency-plugin-3.3.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-dependency-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-12 11:22:08 +00:00
Jose Diaz-Gonzalez
b3d3b0be98 Merge pull request #5068 from dokku/fix-cron-id
Properly set cron-id from flag
2022-03-12 06:21:29 -05:00
Jose Diaz-Gonzalez
ab13477865 fix: properly set cron-id from flag 2022-03-12 02:25:43 -05:00
Dokku Bot
f35a430c8c Release 0.27.0
# History

## 0.27.0

Install/update via the bootstrap script:

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

See the [0.27.0 migration guide](/docs/appendices/0.27.0-migration-guide.md) for more information on migrating to 0.27.0.

### Bug Fixes

- #5063: @josegonzalez Fix buildx support for releases
- #5061: @josegonzalez Use correct token when publish unit test results
- #5057: @josegonzalez Ensure we use the correct variable for WAIT
- #5052: @josegonzalez Run crontab under sudo to support rhel systems
- #5051: @josegonzalez Ensure vector component sources have valid names
- #5035: @nerg4l Fix help flag for logs command
- #5019: @josegonzalez Only rename app domains associated with a global domain

### New Features

- #5064: @josegonzalez Upgrade docker image to ubuntu focal
- #5058: @josegonzalez Add .shellcheckrc
- #5055: @josegonzalez Release dokku for 32-bit Raspbian Bullseye
- #5050: @josegonzalez Set the default memory unit type to megabytes
- #5017: @josegonzalez Add command to clear all proxy configs

### Refactors

- #4921: @josegonzalez Add ability to filter returnable apps

### Documentation

- #5056: @miku86 Fix typo in port management docs
- #5018: @josegonzalez Add warning for setting PORT environment variable

### Other

- #5062: @dependabot[bot] chore(deps): bump django from 3.1.13 to 3.1.14 in /tests/apps/dockerfile-release
- #5053: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 211 to 212 in /tests/apps/php
- #5038: @dependabot[bot] chore(deps): bump flask from 2.0.2 to 2.0.3 in /tests/apps/multi
- #5048: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 210 to 211 in /tests/apps/php
- #5039: @dependabot[bot] chore(deps): bump sinatra from 2.1.0 to 2.2.0 in /tests/apps/ruby
- #5037: @dependabot[bot] chore(deps): bump flask from 2.0.2 to 2.0.3 in /tests/apps/python-flask
- #5036: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 207 to 210 in /tests/apps/php
- #5025: @dependabot[bot] chore(deps): bump jetty-servlet from 11.0.7 to 11.0.8 in /tests/apps/java
- #5026: @dependabot[bot] chore(deps): bump werkzeug from 2.0.2 to 2.0.3 in /tests/apps/python-flask
- #5027: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 206 to 207 in /tests/apps/php
- #5021: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 205 to 206 in /tests/apps/php
- #4975: @tcurdt add arm64 to the build
2022-03-08 16:40:53 +00:00
Jose Diaz-Gonzalez
a7e03fae5d Merge pull request #5063 from dokku/buildx
Fix buildx support for releases
2022-03-08 02:54:52 -05:00
Jose Diaz-Gonzalez
c134912d6a chore: ignore lintian errors 2022-03-08 01:31:59 -05:00
Jose Diaz-Gonzalez
198664ac58 fix: use correct epo 2022-03-08 01:31:47 -05:00
Jose Diaz-Gonzalez
334e85273e fix: use correct platforms for buildx 2022-03-08 01:31:26 -05:00
Jose Diaz-Gonzalez
19cdc00345 chore: remove quiet flags from apt calls for debugging 2022-03-08 01:31:25 -05:00
Jose Diaz-Gonzalez
d4eaa1dc15 fix: move files into correct place when installing via make 2022-03-08 01:31:25 -05:00
Jose Diaz-Gonzalez
9e10fbf808 fix: reference correct urls for amd64 tarballs 2022-03-08 01:31:25 -05:00
Jose Diaz-Gonzalez
e0090d9bf6 fix: use generic architecture version of sshcommand 2022-03-08 01:31:25 -05:00
Jose Diaz-Gonzalez
af8327e76b chore: update build/test dependency versions 2022-03-08 01:31:25 -05:00
Jose Diaz-Gonzalez
669c232562 feat: test building the docker image when building a non-release 2022-03-08 01:31:25 -05:00
Jose Diaz-Gonzalez
c3ee7ce886 fix: ensure buildx is available during the release process
Without this, we cannot build the docker image during a release.
2022-03-08 01:31:25 -05:00
Jose Diaz-Gonzalez
7c9bb238b9 Merge pull request #5064 from dokku/josegonzalez-patch-1
Upgrade docker image to ubuntu focal
2022-03-08 01:31:09 -05:00
Jose Diaz-Gonzalez
bc9e1bfe6c fix: use newer image that contains arm version 2022-03-08 00:48:54 -05:00
Jose Diaz-Gonzalez
dd8e76890c feat: upgrade docker image to ubuntu focal 2022-03-08 00:06:04 -05:00
Jose Diaz-Gonzalez
01bb930e97 Merge pull request #5062 from dokku/dependabot/pip/tests/apps/dockerfile-release/django-3.1.14
chore(deps): bump django from 3.1.13 to 3.1.14 in /tests/apps/dockerfile-release
2022-03-07 03:26:30 -05:00
dependabot[bot]
48adda4f53 chore(deps): bump django in /tests/apps/dockerfile-release
Bumps [django](https://github.com/django/django) from 3.1.13 to 3.1.14.
- [Release notes](https://github.com/django/django/releases)
- [Commits](https://github.com/django/django/compare/3.1.13...3.1.14)

---
updated-dependencies:
- dependency-name: django
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-07 07:40:03 +00:00
Jose Diaz-Gonzalez
add08321aa Merge pull request #5061 from dokku/josegonzalez-patch-1
Use correct token when publish unit test results
2022-03-06 18:39:40 -05:00
Jose Diaz-Gonzalez
30ab9ebb58 fix: use correct token when publish unit test results 2022-03-06 16:52:17 -05:00
Jose Diaz-Gonzalez
ee89c743bf Merge pull request #5057 from dokku/fix-wait
Ensure we use the correct variable for WAIT
2022-03-02 02:37:54 -05:00
Jose Diaz-Gonzalez
c665525e1b Merge pull request #5058 from dokku/shellcheckrc
Add .shellcheckrc
2022-03-02 02:10:25 -05:00
Jose Diaz-Gonzalez
3f6ccc34a0 feat: add .shellcheckrc
dquote>
dquote> This is a minimal config that can be used in conjunction with text editors to run linting during development. The initial rules are a subset of those we ignore across the codebase. A future update will add further rules as needed and cleanup the codebase.
2022-03-02 01:20:26 -05:00
Jose Diaz-Gonzalez
f0095fec2f fix: ensure we use the correct variable for WAIT
A previous refactor ended up disabling waits completely, potentially causing app downtime during deploys.
2022-03-02 01:18:41 -05:00
Jose Diaz-Gonzalez
d7baf8e014 Merge pull request #5056 from miku86/patch-1
Fix typo in port management docs
2022-03-01 10:49:50 -05:00
miku86
6b377fd80f Fix typo 2022-03-01 16:44:01 +01:00
Jose Diaz-Gonzalez
8f32e1b1a2 Merge pull request #5052 from dokku/5020-sudo-crontab
Run crontab under sudo to support rhel systems
2022-02-28 22:51:21 -05:00
Jose Diaz-Gonzalez
9eca7457ff Merge pull request #5055 from dokku/5054-raspbian-bullseye
Release dokku for 32-bit Raspbian Bullseye
2022-02-28 22:50:57 -05:00
Jose Diaz-Gonzalez
5ba274b605 feat: release dokku for 32-bit Raspbian Bullseye
Refs #5054
2022-02-28 17:12:58 -05:00
Jose Diaz-Gonzalez
0856b8d4af fix: correct the prefix check 2022-02-28 16:24:39 -05:00
Jose Diaz-Gonzalez
9e8bfa03d0 Merge pull request #5053 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-212
chore(deps-dev): bump heroku/heroku-buildpack-php from 211 to 212 in /tests/apps/php
2022-02-28 15:54:45 -05:00
dependabot[bot]
116add09ba chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 211 to 212.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v211...v212)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-28 13:14:52 +00:00
Jose Diaz-Gonzalez
39aa42440b Merge pull request #5051 from dokku/5044-sluggify-vector
Ensure vector component sources have valid names
2022-02-27 19:18:15 -05:00
Jose Diaz-Gonzalez
257baa1d46 refactor: run crontab under sudo to support rhel systems
RHEL blocks users from executing crontab as themselves Because Of Reasons so we need to use sudo instead.

Also refactors file writing to properly support writing the permissions on sudoers files going forward.

Closes #5020
2022-02-27 19:17:04 -05:00
Jose Diaz-Gonzalez
2e1df2578c fix: set correct permissions on sudoers files
RHEL validates 0600, while Debian systems expect 0440.
2022-02-27 19:10:33 -05:00
Jose Diaz-Gonzalez
2a02aa0b9b fix: ensure vector component sources have valid names
The dot (.) character is invalid.

Closes #5044
2022-02-27 18:20:44 -05:00
Jose Diaz-Gonzalez
860f4f458c Merge pull request #4921 from dokku/apps-filter
Add ability to filter returnable apps
2022-02-27 17:33:14 -05:00
Jose Diaz-Gonzalez
ea5431b088 chore: cleanup go.mod files again 2022-02-26 03:45:34 -05:00
Jose Diaz-Gonzalez
d5a3527059 test: set a dummy path for PLUGIN_ENABLED_PATH
Ideally we could use this to mock out different plugin paths with test implementations of user-auth-app, but for now setting something that won't generally fail is good enough.
2022-02-26 03:19:03 -05:00
Jose Diaz-Gonzalez
ac58b502c5 refactor: move app listing back to common
Without this, we'd need to duplicate some logic or make it more complex via a plugin trigger.
2022-02-26 02:55:34 -05:00
Jose Diaz-Gonzalez
90eb5462f7 chore: update two more calls to fetch all apps 2022-02-26 02:41:21 -05:00
Jose Diaz-Gonzalez
5eced46f22 fix: allow check to work for any trigger 2022-02-26 00:37:54 -05:00
Jose Diaz-Gonzalez
1a052969dc feat: app filtering to commands listing or iterating over apps
This increases the time to list apps from .05s to .2s~.3s on the simplest check, but the increased time is worth it for actually verifyng access to an app (should that need arise).

We'll also want to add the same to app existence checks.
2022-02-26 00:37:54 -05:00
Jose Diaz-Gonzalez
62a3eff5bb refactor: move apps listing from common plugin to apps plugin
This helps centralize app-related listing fetching.
2022-02-26 00:37:51 -05:00
Jose Diaz-Gonzalez
9d8de8a9db fix: add missing B suffix to list 2022-02-26 00:11:53 -05:00
Jose Diaz-Gonzalez
df811d7c02 Merge pull request #5050 from dokku/default-memory-units
Set the default memory unit type to megabytes
2022-02-26 00:09:26 -05:00
Jose Diaz-Gonzalez
16ff0328cd fix: also support KB, MB, GB, and B as valid suffixes 2022-02-25 23:23:59 -05:00
Jose Diaz-Gonzalez
068b3c9adb feat: set the default memory unit type to megabytes
This makes it easier to support all schedulers out of the box - all other schedulers assume megabytes when no unit is specified.
2022-02-25 22:20:59 -05:00
Jose Diaz-Gonzalez
2a11723496 Merge pull request #5038 from dokku/dependabot/pip/tests/apps/multi/flask-2.0.3
chore(deps): bump flask from 2.0.2 to 2.0.3 in /tests/apps/multi
2022-02-25 22:14:48 -05:00
Jose Diaz-Gonzalez
4a54d4097a Merge pull request #5048 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-211
chore(deps-dev): bump heroku/heroku-buildpack-php from 210 to 211 in /tests/apps/php
2022-02-25 22:14:38 -05:00
dependabot[bot]
b975beb3b9 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 210 to 211.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v210...v211)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-23 13:10:27 +00:00
dependabot[bot]
e1c5f3e545 chore(deps): bump flask from 2.0.2 to 2.0.3 in /tests/apps/multi
Bumps [flask](https://github.com/pallets/flask) from 2.0.2 to 2.0.3.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.0.2...2.0.3)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-22 20:25:20 +00:00
Jose Diaz-Gonzalez
335fe0dcfd Merge pull request #5039 from dokku/dependabot/bundler/tests/apps/ruby/sinatra-2.2.0
chore(deps): bump sinatra from 2.1.0 to 2.2.0 in /tests/apps/ruby
2022-02-22 15:23:32 -05:00
Jose Diaz-Gonzalez
f72e05ff09 Merge pull request #5037 from dokku/dependabot/pip/tests/apps/python-flask/flask-2.0.3
chore(deps): bump flask from 2.0.2 to 2.0.3 in /tests/apps/python-flask
2022-02-22 15:23:03 -05:00
Jose Diaz-Gonzalez
572d67d5e9 Merge pull request #5036 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-210
chore(deps-dev): bump heroku/heroku-buildpack-php from 207 to 210 in /tests/apps/php
2022-02-22 15:22:45 -05:00
Jose Diaz-Gonzalez
0baf7da87b Merge pull request #5035 from nerg4l/fix/log-help-flag
Fix help flag for logs command
2022-02-22 15:22:30 -05:00
dependabot[bot]
2d65e5fe1b chore(deps): bump sinatra from 2.1.0 to 2.2.0 in /tests/apps/ruby
Bumps [sinatra](https://github.com/sinatra/sinatra) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v2.1.0...v2.2.0)

---
updated-dependencies:
- dependency-name: sinatra
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-16 13:04:14 +00:00
dependabot[bot]
eb032c6c81 chore(deps): bump flask from 2.0.2 to 2.0.3 in /tests/apps/python-flask
Bumps [flask](https://github.com/pallets/flask) from 2.0.2 to 2.0.3.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.0.2...2.0.3)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-15 13:11:47 +00:00
dependabot[bot]
b484abdb2f chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 207 to 210.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v207...v210)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-14 13:11:02 +00:00
László Görög
bc6130af4d fix: help flag 2022-02-14 11:04:09 +01:00
Jose Diaz-Gonzalez
2de86e7013 Merge pull request #5025 from dokku/dependabot/maven/tests/apps/java/org.eclipse.jetty-jetty-servlet-11.0.8
chore(deps): bump jetty-servlet from 11.0.7 to 11.0.8 in /tests/apps/java
2022-02-08 11:41:30 -05:00
Jose Diaz-Gonzalez
c34f2a6f9c Merge pull request #5026 from dokku/dependabot/pip/tests/apps/python-flask/werkzeug-2.0.3
chore(deps): bump werkzeug from 2.0.2 to 2.0.3 in /tests/apps/python-flask
2022-02-08 11:41:19 -05:00
Jose Diaz-Gonzalez
6285f576a4 Merge pull request #5027 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-207
chore(deps-dev): bump heroku/heroku-buildpack-php from 206 to 207 in /tests/apps/php
2022-02-08 11:41:08 -05:00
dependabot[bot]
92718565be chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 206 to 207.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v206...v207)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-08 13:12:15 +00:00
dependabot[bot]
6711dda41a chore(deps): bump werkzeug in /tests/apps/python-flask
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 2.0.2 to 2.0.3.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/2.0.2...2.0.3)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-08 13:11:53 +00:00
dependabot[bot]
8da1632fcb chore(deps): bump jetty-servlet in /tests/apps/java
Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.7 to 11.0.8.
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.7...jetty-11.0.8)

---
updated-dependencies:
- dependency-name: org.eclipse.jetty:jetty-servlet
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-08 13:11:51 +00:00
Jose Diaz-Gonzalez
2db9a53288 Merge pull request #5021 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-206
chore(deps-dev): bump heroku/heroku-buildpack-php from 205 to 206 in /tests/apps/php
2022-02-05 03:52:41 -05:00
dependabot[bot]
d65713a8cb chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 205 to 206.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v205...v206)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-02 13:12:30 +00:00
Jose Diaz-Gonzalez
9d3f4ff508 Merge pull request #5019 from dokku/4965-global-domain-renames
Only rename app domains associated with a global domain
2022-01-29 07:24:36 -05:00
Jose Diaz-Gonzalez
7e45cbccc7 Merge pull request #5017 from dokku/5002-proxy-clear-config
Add command to clear all proxy configs
2022-01-29 05:31:25 -05:00
Jose Diaz-Gonzalez
21ecf4b299 fix: run shfmt 2022-01-29 05:31:10 -05:00
Jose Diaz-Gonzalez
26e7a16fd7 fix: only rename app domains associated with a global domain
Closes #4965
2022-01-28 22:38:24 -05:00
Jose Diaz-Gonzalez
00d11b8440 docs: document proxy:clear-config 2022-01-28 21:32:58 -05:00
Jose Diaz-Gonzalez
4e5ae25d5f fix: generate clear-config subcommand 2022-01-28 21:31:13 -05:00
Jose Diaz-Gonzalez
ecea1488e1 fix: ignore errors clearing proxy configs
If one fails to rebuild for whatever reason, just continue onward.
2022-01-28 20:58:31 -05:00
Jose Diaz-Gonzalez
7136da1aa5 feat: add a command to clear all proxy configs
Closes #5002
2022-01-28 20:58:31 -05:00
Jose Diaz-Gonzalez
3b0bf4d8f2 feat: use --all flag for clearing proxy config during ps:restore
Without this, we might end up with one or more apps that still have a proxy config.
2022-01-28 20:58:31 -05:00
Jose Diaz-Gonzalez
c75149fb9f feat: add support for clearing all nginx proxy entries in a single go 2022-01-28 20:58:31 -05:00
Jose Diaz-Gonzalez
9bde10cdef Merge pull request #5018 from dokku/4799-port-warn
Add warning for setting PORT environment variable
2022-01-28 20:40:34 -05:00
Jose Diaz-Gonzalez
1c681d23eb docs: add warning for setting PORT
Closes #4799
2022-01-28 20:40:05 -05:00
Jose Diaz-Gonzalez
647c4578e2 Merge pull request #4975 from tcurdt/master
add arm64 to the build
2022-01-28 19:26:41 -05:00
Jose Diaz-Gonzalez
110aa1f4d9 fix: run shfmt 2022-01-28 18:31:42 -05:00
Jose Diaz-Gonzalez
7a7f44614d fix: build correct image as multi-platform image 2022-01-28 18:25:18 -05:00
Jose Diaz-Gonzalez
4fede344fc refactor: build docker image for all architectures 2022-01-28 17:55:46 -05:00
Dokku Bot
705fb16d70 Release 0.26.8
# History

## 0.26.8

Install/update via the bootstrap script:

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

### Bug Fixes

- #5016: @josegonzalez Properly support the --global flag when detecting the scheduler
- #5015: @josegonzalez Avoid popd errors when dokku is run as root

### New Features

- #5006: @josegonzalez Better go mod support in VSCode Dev Containers

### Documentation

- #5014: @josegonzalez Clarify that all run containers are removed at the end of process execution
- #5010: @josegonzalez Add documentation for ps:restore
- #5009: @josegonzalez Clarify installation documentation
2022-01-28 16:35:25 +00:00
Jose Diaz-Gonzalez
2d8c3cd247 Merge pull request #5016 from dokku/global-scheduler-detection
Properly support the --global flag when detecting the scheduler
2022-01-28 11:34:30 -05:00
Jose Diaz-Gonzalez
c42916c027 Merge pull request #5015 from dokku/5012-clone-fixes
Avoid popd errors when dokku is run as root
2022-01-28 11:34:16 -05:00
Jose Diaz-Gonzalez
02927b3866 fix: properly support the --global flag when detecting the scheduler
Previously this caused errors when fetching the global scheduler.
2022-01-27 22:16:22 -05:00
Jose Diaz-Gonzalez
b0faf2e1f2 fix: avoid popd errors when dokku is run as root
When running the dokku command in a directory that the dokku user does not have access to - such as /root - popd will fail loudly (starting in Ubuntu 16.04). This change ignores those errors and changes the working dir in the bin to /tmp.

Refs #5012
2022-01-27 22:14:14 -05:00
Jose Diaz-Gonzalez
faf204c03a Merge pull request #5014 from dokku/4701-remove-containers
Clarify that all run containers are removed at the end of process execution
2022-01-27 21:09:05 -05:00
Jose Diaz-Gonzalez
b706b6f579 docs: clarify that all run containers are removed at the end of process execution 2022-01-27 21:08:34 -05:00
Jose Diaz-Gonzalez
51fe0836dc Merge pull request #5010 from dokku/4966-restore-docs
Add documentation for ps:restore
2022-01-24 01:38:21 -05:00
Jose Diaz-Gonzalez
8cbec57bf5 docs: add documentation for ps:restore
Also document dokku-event-listener usage.

Closes #4966
2022-01-24 01:37:59 -05:00
Jose Diaz-Gonzalez
c034f509e7 docs: drop extra words 2022-01-23 22:38:04 -05:00
Jose Diaz-Gonzalez
4f4cb88a81 Merge pull request #5009 from dokku/4947-update-install-docs
Clarify installation documentation
2022-01-23 22:28:40 -05:00
Jose Diaz-Gonzalez
30cd670a16 docs: clarify installation documentation
- Simplify first-install instructions
- Move advanced docs around
- Drop references to web installer

Closes #4947
2022-01-23 22:28:17 -05:00
Jose Diaz-Gonzalez
0a2ea6786d Merge pull request #5006 from dokku/devcontainer-go-mod-support
Better go mod support in VSCode Dev Containers
2022-01-22 04:46:00 -05:00
Jose Diaz-Gonzalez
2bd5794ab9 chore: run go mod download/tidy for all plugins
This cleans up the development environment for each module.
2022-01-22 02:56:27 -05:00
Jose Diaz-Gonzalez
d3b01ffb2f refactor: use vscode workspace to better support go modules in devcontainer
This allows gopls to handle autocompletion by setting multiple workspace roots it can traverse for dependencies.
2022-01-22 02:52:08 -05:00
Dokku Bot
3bb8812e33 Release 0.26.7
# History

## 0.26.7

Install/update via the bootstrap script:

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

### Bug Fixes

- #5003: @josegonzalez Respect pre-existing .env files when preparing the herokuish buildenv
- #4950: @emdienn Use exported environment vars during pack build
- #4999: @elhu Purge cache for all apps when calling buildpacks:set-property with --global flag
- #4988: @fomojola Conditionally restart NGINX
- #4922: @josegonzalez Gitignore more built plugin triggers in apps plugin

### New Features

- #4964: @josegonzalez Add log message when running state is false
- #4970: @josegonzalez Log the string error and not bytes when there is an issue updating the cron schedule
- #4924: @josegonzalez Update devcontainer to include aliased go packages
- #4920: @josegonzalez Ensure related go source and vscode plugins are installed in devcontainer

### Documentation

- #4949: @IlyaSemenov docs: update herokuish upgrade instructions
- #4992: @anthonyshew Typo for deploying using image SHA
- #4976: @josegonzalez Update link in header to dokku pro
- #4972: @Dam-Buty Clarify cron:report command
- #4943: @Stormheg Fix typo in registry management documentation
- #4935: @josegonzalez Reword note about env vars in nginx config templates

### Other

- #4995: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 203 to 205 in /tests/apps/php
- #4978: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 201 to 203 in /tests/apps/php
- #4936: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 200 to 201 in /tests/apps/php
- #4937: @dependabot[bot] chore(deps): bump socket.io from 4.3.2 to 4.4.0 in /tests/apps/.websocket.disabled
2022-01-18 09:35:34 +00:00
Jose Diaz-Gonzalez
230a1dbcc4 Merge pull request #5003 from dokku/4894-dotenv
Respect pre-existing .env files when preparing the herokuish buildenv
2022-01-18 04:06:52 -05:00
Jose Diaz-Gonzalez
07f2ef1411 fix: respect pre-existing .env files when preparing the herokuish buildenv
Closes #4894
2022-01-18 02:21:12 -05:00
Jose Diaz-Gonzalez
3c68114ad3 Merge pull request #4950 from emdienn/bugfix/env-at-build-time
Use exported environment vars during pack build
2022-01-16 18:23:56 -05:00
Jose Diaz-Gonzalez
4f870512f4 fix: correct lint error 2022-01-15 08:44:02 -05:00
Jose Diaz-Gonzalez
5b7464f525 refactor: use new name for pack format 2022-01-15 08:39:53 -05:00
Jose Diaz-Gonzalez
64d6c28e30 Merge pull request #4999 from elhu/4990-set-stack-global-cache
Purge cache for all apps when calling buildpacks:set-property with --global flag
2022-01-15 08:37:43 -05:00
Jose Diaz-Gonzalez
6f55b89149 refactor: simplify env var passing by using a new config:export format
Also add a test for env vars during build time for pack-built applications.
2022-01-15 08:34:02 -05:00
TheDoctor
7f213beefa Mirror env behaviour from herokuish builder, adapt to pack
Docker accepts its flags as --env=FOO but pack requires --env FOO, which is why ENV_ARGS_VALUES is iterated into ENV_ARGS, then pack run through eval
2022-01-15 06:54:03 -05:00
TheDoctor
bc1aba6c7a Use exported environment vars during pack build
Config was exported, but the result never used.
2022-01-15 06:54:03 -05:00
Jose Diaz-Gonzalez
861dc9fe95 Merge pull request #4949 from IlyaSemenov/fix/herokuish_update
docs: update herokuish upgrade instructions
2022-01-15 06:46:44 -05:00
Jose Diaz-Gonzalez
0a7994b67f Merge pull request #4964 from dokku/josegonzalez-patch-1
Add log message when running state is false
2022-01-15 06:44:06 -05:00
Jose Diaz-Gonzalez
a5441ff03e Merge pull request #4970 from dokku/4969-log-err
Log the string error and not bytes when there is an issue updating the cron schedule
2022-01-15 06:42:18 -05:00
Jose Diaz-Gonzalez
dd7ae8c617 Merge pull request #4995 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-205
chore(deps-dev): bump heroku/heroku-buildpack-php from 203 to 205 in /tests/apps/php
2022-01-15 06:41:41 -05:00
Vincent Boisard
cf4eed2de0 Add test for buildpacks:set-property --global 2022-01-13 23:21:57 +01:00
Vincent Boisard
d7dfc5d30b Purge cache for all apps when calling buildpacks:set-property with --global flag 2022-01-13 19:42:11 +01:00
dependabot[bot]
27cda5dd31 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 203 to 205.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v203...v205)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-10 13:11:38 +00:00
Jose Diaz-Gonzalez
cbacdb7e2c Merge pull request #4992 from anthonyshew/patch-1
Typo for deploying using image SHA
2022-01-07 14:34:16 -05:00
Anthony Shew
0fbb92f3ad Typo for deploying using image SHA
The command for using an image doesn't include a colon before the `@sha`. Just wanted to help out others because this was tripping me up for like an hour!
2022-01-07 12:31:44 -07:00
Jose Diaz-Gonzalez
7e857b3846 Merge pull request #4988 from fomojola/patch-4
Conditionally restart NGINX
2021-12-31 11:43:12 -05:00
Femi Omojola
c75fe998e2 shfmt fixes 2021-12-31 00:48:47 -05:00
fomojola
55d8e2db81 Formatting fixes 2021-12-30 22:56:47 -05:00
fomojola
c209787de8 Conditionally restart NGINX
Before restarting nginx, check if the current app is using a proxy and if the selected proxy is in fact NGINX. Only then should we bother invoking the nginx reload.

Fixes https://github.com/dokku/dokku/issues/4987
2021-12-30 22:49:57 -05:00
Jose Diaz-Gonzalez
c4ce25415b Merge pull request #4978 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-203
chore(deps-dev): bump heroku/heroku-buildpack-php from 201 to 203 in /tests/apps/php
2021-12-26 15:40:16 -05:00
dependabot[bot]
423493ac8d chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 201 to 203.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v201...v203)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-20 13:12:26 +00:00
Jose Diaz-Gonzalez
7818c82075 Merge pull request #4976 from dokku/dokku-pro-link
Update link in header to dokku pro
2021-12-15 02:33:51 -05:00
Jose Diaz-Gonzalez
84b9988330 Merge pull request #4972 from Dam-Buty/patch-1
Clarify cron:report command
2021-12-15 02:33:35 -05:00
Jose Diaz-Gonzalez
ddf6755d0c chore: update header link to dokku pro 2021-12-15 02:32:41 -05:00
Jose Diaz-Gonzalez
850a7d55d9 docs: update link in header to dokku pro 2021-12-15 02:31:52 -05:00
Torsten Curdt
e2403c8d94 chain the builders to build up all the builds in one dir 2021-12-14 22:07:32 +01:00
Torsten Curdt
46c9d0e33f copy the right binaries 2021-12-14 21:32:32 +01:00
Torsten Curdt
a89cc87a43 removed commented out lines 2021-12-14 21:31:28 +01:00
Torsten Curdt
4a86650a49 removed empty lines 2021-12-14 21:25:31 +01:00
Torsten Curdt
9f981328d2 also release arm64 package 2021-12-14 20:20:35 +01:00
Torsten Curdt
848f60eae1 also build for arm64 2021-12-14 20:13:00 +01:00
Damien BUTY
f6a819351f Update scheduled-cron-tasks.md 2021-12-10 11:05:34 +01:00
Jose Diaz-Gonzalez
c6f4e4bc14 fix: log the string error and not bytes
Refs #4969
2021-12-07 09:27:07 -05:00
Jose Diaz-Gonzalez
e24a3603ac feat: add log message when running state is false
Without this, its not clear why we are releasing an app when calling `ps:start` or `ps:restore`.
2021-12-02 11:53:13 -05:00
Ilya Semenov
1186f3fccf docs: update herokuish upgrade instructions
Closes #4944
2021-11-24 18:40:53 +07:00
Jose Diaz-Gonzalez
e0c2e7846a Merge pull request #4943 from Stormheg/patch-1
Fix typo in registry management documentation
2021-11-21 12:57:36 -05:00
Storm Heg
416b25d6ae Fix typo in registry-management.md 2021-11-21 14:54:12 +01:00
Jose Diaz-Gonzalez
9075b7b175 Merge pull request #4936 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-201
chore(deps-dev): bump heroku/heroku-buildpack-php from 200 to 201 in /tests/apps/php
2021-11-19 10:31:51 -05:00
Jose Diaz-Gonzalez
780cb5a2e7 Merge pull request #4937 from dokku/dependabot/npm_and_yarn/tests/apps/dot-websocket.disabled/socket.io-4.4.0
chore(deps): bump socket.io from 4.3.2 to 4.4.0 in /tests/apps/.websocket.disabled
2021-11-19 10:31:40 -05:00
dependabot[bot]
27521bf5d6 chore(deps): bump socket.io in /tests/apps/.websocket.disabled
Bumps [socket.io](https://github.com/socketio/socket.io) from 4.3.2 to 4.4.0.
- [Release notes](https://github.com/socketio/socket.io/releases)
- [Changelog](https://github.com/socketio/socket.io/blob/master/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io/compare/4.3.2...4.4.0)

---
updated-dependencies:
- dependency-name: socket.io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-19 13:11:27 +00:00
dependabot[bot]
5d255301b4 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 200 to 201.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v200...v201)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-19 13:11:13 +00:00
Jose Diaz-Gonzalez
2d2d4247a1 Merge pull request #4935 from dokku/josegonzalez-patch-1
Reword note about env vars in nginx config templates
2021-11-18 13:42:52 -05:00
Jose Diaz-Gonzalez
496488cb3e docs: reword note about env vars in nginx config templates
Refs #3686
2021-11-18 13:42:38 -05:00
Jose Diaz-Gonzalez
dacbb0f2dc Merge pull request #4924 from dokku/josegonzalez-patch-1
Update devcontainer to include aliased go packages
2021-11-13 22:08:12 -05:00
Jose Diaz-Gonzalez
36c0f7c160 chore: update devcontainer to include aliased go packages
These don't get installed by the go list hack for various reasons. While it would be best to download the _exact_ versions in use, installing the "latest" is better than nothing for local development.
2021-11-13 22:07:00 -05:00
Jose Diaz-Gonzalez
78a984b52f Merge pull request #4920 from dokku/full-devcontainer-env
Ensure related go source and vscode plugins are installed in devcontainer
2021-11-12 17:02:48 -05:00
Jose Diaz-Gonzalez
bc7a3de68d Merge pull request #4922 from dokku/josegonzalez-patch-1
Gitignore more built plugin triggers in apps plugin
2021-11-12 16:45:13 -05:00
Jose Diaz-Gonzalez
53f963f028 fix: gitignore more built plugin triggers in apps plugin 2021-11-12 16:42:35 -05:00
Jose Diaz-Gonzalez
02b3b8e7e6 feat: ensure related go source and vscode plugins are installed in devcontainer 2021-11-12 16:41:52 -05:00
Dokku Bot
c45b61d402 Release 0.26.6
# History

## 0.26.6

Install/update via the bootstrap script:

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

### Bug Fixes

- #4919: @nerg4l fix: do not validate global flag as an app name
- #4918: @josegonzalez Use netrc binary to properly release dokku client homebrew formula
2021-11-12 15:09:05 +00:00
Jose Diaz-Gonzalez
f1b0be30e0 Merge pull request #4919 from nerg4l/fix-network-global
fix: do not validate global flag as an app name
2021-11-12 10:08:26 -05:00
László Görög
1222b9fdb4 fix: do not validate global flag as an app name 2021-11-12 10:37:15 +01:00
Jose Diaz-Gonzalez
bb54231233 Merge pull request #4918 from dokku/formula-release-with-creds
Use netrc binary to properly release dokku client homebrew formula
2021-11-11 19:29:58 -05:00
Jose Diaz-Gonzalez
4306178966 fix: use netrc binary to properly release dokku client homebrew formula 2021-11-11 18:59:03 -05:00
Dokku Bot
dde29c5d77 Release 0.26.5
# History

## 0.26.5

Install/update via the bootstrap script:

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

### Bug Fixes

- #4917: @josegonzalez Update golang to fix golang tests
- #4915: @josegonzalez Add support for --global flag to network:set command

### Documentation

- #4911: @josegonzalez Add initial dokku-pro documentation
- #4910: @josegonzalez Fix typo on persistent storage docs

### Tests

- #4916: @josegonzalez Ignore new SC2295 shellcheck warning
- #4906: @josegonzalez Upgrade ci linters

### Other

- #4914: @dependabot[bot] chore(deps): bump jinja2 from 3.0.2 to 3.0.3 in /tests/apps/python-flask
2021-11-11 23:46:03 +00:00
Jose Diaz-Gonzalez
4cd9feae7b Merge pull request #4917 from dokku/upgrade-golang
Update golang to fix golang tests
2021-11-11 18:04:04 -05:00
Jose Diaz-Gonzalez
9a403aa1ce fix: update golang to fix golang tests
Also ensure we're running the same version of golang in our test apps.
2021-11-11 16:51:48 -05:00
Jose Diaz-Gonzalez
daf574188a Merge pull request #4916 from dokku/josegonzalez-patch-1
Ignore new SC2295 shellcheck warning
2021-11-11 16:49:17 -05:00
Jose Diaz-Gonzalez
5cf3dfa451 Merge pull request #4915 from dokku/add-missing-global-network-flag
Add support for --global flag to network:set command
2021-11-11 16:44:08 -05:00
Jose Diaz-Gonzalez
c607af658e Update lint.yml 2021-11-11 16:05:31 -05:00
Jose Diaz-Gonzalez
58f96a6068 fix: ignore new SC2295 error 2021-11-11 15:38:57 -05:00
Jose Diaz-Gonzalez
1a1673095e Merge pull request #4914 from dokku/dependabot/pip/tests/apps/python-flask/jinja2-3.0.3
chore(deps): bump jinja2 from 3.0.2 to 3.0.3 in /tests/apps/python-flask
2021-11-11 15:37:58 -05:00
Jose Diaz-Gonzalez
509cd3e95f fix: add support for --global flag to network:set command 2021-11-11 15:35:51 -05:00
dependabot[bot]
0347748c50 chore(deps): bump jinja2 from 3.0.2 to 3.0.3 in /tests/apps/python-flask
Bumps [jinja2](https://github.com/pallets/jinja) from 3.0.2 to 3.0.3.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.0.2...3.0.3)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-10 13:09:17 +00:00
Jose Diaz-Gonzalez
6fab646a61 docs: update dokku pro purchase link 2021-11-09 14:50:29 -05:00
Jose Diaz-Gonzalez
5a9405a315 docs: add script tag for dokku pro 2021-11-09 12:51:44 -05:00
Jose Diaz-Gonzalez
24c7adb346 chore: drop script tag as github strips it 2021-11-09 12:50:46 -05:00
Jose Diaz-Gonzalez
bad9649200 docs: fix script tag 2021-11-09 11:07:44 -05:00
Jose Diaz-Gonzalez
12e5cbb297 Merge pull request #4911 from dokku/dokku-pro
Add initial dokku-pro documentation
2021-11-09 11:06:24 -05:00
Jose Diaz-Gonzalez
5d54866e52 docs: add initial dokku-pro documentation 2021-11-09 11:04:34 -05:00
Jose Diaz-Gonzalez
f39d8d93ab Merge pull request #4910 from dokku/4909-typo
Fix typo on persistent storage docs
2021-11-08 10:17:50 -05:00
Jose Diaz-Gonzalez
f8b1b02df5 docs: fix typo on persistent storage docs
Closes #4909
2021-11-08 10:17:29 -05:00
Jose Diaz-Gonzalez
74ba52b883 Merge pull request #4906 from dokku/update-linters
Upgrade ci linters
2021-11-05 12:13:16 -04:00
Jose Diaz-Gonzalez
5d4a65a3cb feat: upgrade linters 2021-11-05 01:24:50 -04:00
Dokku Bot
a5c4543282 Release 0.26.4
# History

## 0.26.4

Install/update via the bootstrap script:

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

### Bug Fixes

- #4899: @josegonzalez Ensure we respect quotes and dollar signs in config vars
- #4890: @josegonzalez Drop which in favor of command -v

### Other

- #4897: @josegonzalez Silence errors when verifying the ssl certificate
- #4891: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 199 to 200 in /tests/apps/php
2021-11-03 22:44:31 +00:00
Jose Diaz-Gonzalez
0b34544125 Merge pull request #4899 from dokku/4895-fix-env-vars
Ensure we respect quotes and dollar signs in config vars
2021-11-03 16:15:49 -04:00
Jose Diaz-Gonzalez
cd33ec2f02 fix: remove trace mode 2021-11-03 14:40:21 -04:00
Jose Diaz-Gonzalez
57fc5ec333 Merge pull request #4897 from dokku/josegonzalez-patch-1
Silence errors when verifying the ssl certificate
2021-11-03 12:17:28 -04:00
Jose Diaz-Gonzalez
a756786f93 fix: ensure we respect quotes and dollar signs in config vars
Due to various changes in how containers are started, these keys were set incorrectly for apps. Since we can use the short-hand --env=ENV format for setting env vars on docker containers, lets do so.

Closes #4895
Closes #4896
2021-11-03 12:13:52 -04:00
Jose Diaz-Gonzalez
daddabc7b1 feat: silence errors when verifying the ssl certificate 2021-11-03 10:49:34 -04:00
Jose Diaz-Gonzalez
6014b7208f Merge pull request #4891 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-200
chore(deps-dev): bump heroku/heroku-buildpack-php from 199 to 200 in /tests/apps/php
2021-10-29 10:06:03 -04:00
dependabot[bot]
527b076732 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 199 to 200.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v199...v200)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-29 13:08:29 +00:00
Jose Diaz-Gonzalez
de67bd19b2 Merge pull request #4890 from dokku/drop-which
Drop which in favor of command -v
2021-10-28 19:10:34 -04:00
Jose Diaz-Gonzalez
6c709f2386 fix: drop which in favor of command -v 2021-10-28 18:22:20 -04:00
Dokku Bot
d26c12e6eb Release 0.26.3
# History

## 0.26.3

Install/update via the bootstrap script:

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

### Bug Fixes

- #4889: @josegonzalez Skip herokuish version in report output and disable the herokuish builder on armhf architectures
2021-10-28 14:49:09 +00:00
Jose Diaz-Gonzalez
74d230c11c Merge pull request #4889 from dokku/arm-detect
Skip herokuish version in report output and disable the herokuish builder on armhf architectures
2021-10-28 10:35:18 -04:00
Jose Diaz-Gonzalez
b146483940 fix: skip herokuish version in report output and disable the herokuish builder on armhf architectures
We don't skip pack as in theory they may be able to support arm in the future. Dockerfile builds should work fine, as long as all images in the FROM directives have arm versions.
Finally, the null builder _should_ always work, but of course YMMV :D
2021-10-28 10:07:18 -04:00
Dokku Bot
9e2c79c5ed Release 0.26.2
# History

## 0.26.2

Install/update via the bootstrap script:

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

### Bug Fixes

- #4888: @josegonzalez Ensure installations treat raspbian as similar to debian buster as possible
- #4887: @josegonzalez Ensure we do not add two debian folders in a single armhf package

### New Features

- #4886: @josegonzalez Add created-at time to apps:report output
2021-10-28 07:41:04 +00:00
Jose Diaz-Gonzalez
a0cece197f Merge pull request #4888 from dokku/proper-raspbian-install
Ensure installations treat raspbian as similar to debian buster as possible
2021-10-28 02:42:02 -04:00
Jose Diaz-Gonzalez
57858c1788 fix: ensure installations treat raspbian as similar to debian buster as possible 2021-10-28 02:41:10 -04:00
Jose Diaz-Gonzalez
88736c1000 Merge pull request #4887 from dokku/fix-armhf-package
Ensure we do not add two debian folders in a single armhf package
2021-10-28 01:13:50 -04:00
Jose Diaz-Gonzalez
48357adac1 fix: ensure we do not add two debian folders in a single package 2021-10-28 01:13:28 -04:00
Jose Diaz-Gonzalez
3b4d101a42 Merge pull request #4886 from dokku/apps-created-at
Add created-at time to apps:report output
2021-10-27 22:25:51 -04:00
Jose Diaz-Gonzalez
c3871e7da9 feat: add created-at time to apps:report output 2021-10-27 21:03:04 -04:00
Dokku Bot
7a4ead4db4 Release 0.26.1
# History

## 0.26.1

Install/update via the bootstrap script:

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

### Bug Fixes

- #4884: @josegonzalez Correct recommends entry for bash-completion

### New Features

- #4885: @josegonzalez Add experimental support for arm devices
2021-10-27 23:28:04 +00:00
Jose Diaz-Gonzalez
c32d0cc791 Merge pull request #4885 from dokku/arm-support
Add support for arm devices
2021-10-27 19:26:51 -04:00
Jose Diaz-Gonzalez
b3c732e487 debug: show the packages being installed 2021-10-27 12:39:31 -04:00
Jose Diaz-Gonzalez
ae14b02cbd fix: pull manpage from amd64 stage 2021-10-27 12:07:35 -04:00
Jose Diaz-Gonzalez
1532590b50 fix: ensure we pass the correct args to both derived builder stages 2021-10-26 11:30:58 -04:00
Jose Diaz-Gonzalez
d3cbb730ac feat: add support for arm devices
This specifically targets Raspbian Buster, though releases may work on other debian-based operating systems.

Note that this does _not_ port buildpacks - either herokuish or pack - to Raspbian, and it is likely that users will need to use pack for buildpack support (if/when it is supported on ARM) or Dockerfile for image building.
2021-10-26 00:16:00 -04:00
Jose Diaz-Gonzalez
ffd5c896ed Merge pull request #4884 from dokku/josegonzalez-patch-1
Correct recommends entry for bash-completion
2021-10-26 00:10:03 -04:00
Jose Diaz-Gonzalez
6bc960e10c fix: correct recommends entry for bash-completion 2021-10-26 00:08:56 -04:00
Dokku Bot
2e237041ec Release 0.26.0
# History

## 0.26.0

Install/update via the bootstrap script:

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

See the [0.26.0 migration guide](/docs/appendices/0.26.0-migration-guide.md) for more information on migrating to 0.26.0.

### Bug Fixes

- #4882: @josegonzalez Add missing setup/teardown of builder plugin properties
- #4880: @josegonzalez Ensure the null scheduler reports the app as running when in use
- #4871: @josegonzalez Do not error when default Procfile path does not exist when using a custom procfile-path
- #4861: @josegonzalez Add missing clone/rename code for plugins

### New Features

- #4864: @josegonzalez Switch to unauthenticated tap for formula bumping
- #4860: @josegonzalez Add ability to increase the max parallelism when deploying a given process type

### Documentation

- #4883: @josegonzalez Enable vertical scrolling on the version selector
- #4879: @josegonzalez Clarify that the docker-based dokku installation is ready when a certain message appears
- #4863: @josegonzalez Clarify what is necessary for implementing a scheduler plugin

### Other

- #4874: @josegonzalez Upgrade vector log integration to 0.17.x
- #4881: @josegonzalez Drop bindutils as alternative dependency to bind-utils
- #4869: @dependabot[bot] chore(deps): bump socket.io from 4.2.0 to 4.3.0 in /tests/apps/.websocket.disabled
- #4868: @dependabot[bot] chore(deps): bump jetty-servlet from 11.0.6 to 11.0.7 in /tests/apps/java
- #4866: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 198 to 199 in /tests/apps/php
- #4862: @josegonzalez Set deploy-source and metadata at deploy time
- #4853: @josegonzalez Remove dangling images
- #4765: @josegonzalez Allow specifying a single process type to restart
- #4859: @josegonzalez Remove deprecated tar plugin
- #4858: @josegonzalez Remove deprecated tags plugin
- #4857: @josegonzalez Implement scheduler management plugin
2021-10-26 00:39:53 +00:00
Jose Diaz-Gonzalez
23798b575b Merge pull request #4874 from dokku/josegonzalez-patch-1
Upgrade vector log integration to 0.17.x
2021-10-24 21:29:37 -04:00
Jose Diaz-Gonzalez
b690d9d18d Merge pull request #4883 from dokku/scroll-versions
Enable vertical scrolling on the version selector
2021-10-24 20:37:49 -04:00
Jose Diaz-Gonzalez
cd030f4fa0 docs: enable vertical scrolling on the version selector
We now have too many versions for it to show up on a modern-ish laptop screen, so enabling scrolling will allow folks to choose older versions more easily.
2021-10-24 20:37:24 -04:00
Jose Diaz-Gonzalez
6db82861e6 Merge pull request #4882 from dokku/setup-config
Add missing setup/teardown of builder plugin properties
2021-10-24 20:21:33 -04:00
Jose Diaz-Gonzalez
a637ffc848 tests: skip test when in remote vscode container and also ensure the docker daemon config is valid 2021-10-24 20:21:03 -04:00
Jose Diaz-Gonzalez
760be655e9 fix: handle both stderr and stdout when tailing container logs
Previously, stderr was ignored when tailing container log output in golang. This change ensures we capture it and also use the correct helper for that output method.
2021-10-24 20:20:35 -04:00
Jose Diaz-Gonzalez
01e317259b refactor: use default sink variable
This allows us to update the sink at the same time as updating the vector integration.
2021-10-24 15:14:37 -04:00
Jose Diaz-Gonzalez
c74c542b1f feat: upgrade vector and set default sink variable 2021-10-24 15:14:37 -04:00
Jose Diaz-Gonzalez
c4ad455aad Merge pull request #4880 from dokku/null-app-status
Ensure the null scheduler reports the app as running when in use
2021-10-24 15:13:27 -04:00
Jose Diaz-Gonzalez
8c43542f2e Merge pull request #4881 from dokku/4852-bindutils-dep-removal
Drop bindutils as alternative dependency to bind-utils
2021-10-24 15:13:09 -04:00
Jose Diaz-Gonzalez
61f8590553 fix: add missing setup/teardown of builder plugin properties 2021-10-24 15:12:16 -04:00
Jose Diaz-Gonzalez
d84c17d9e2 fix: drop bindutils as alternative dependency to bind-utils
Unfortunately, this breaks CentOS compatibility as they use an older version of yum in CentOS 7. Rather than inconvenience the larger user base, Photon users may wish to provide their own `bind-utils` metapackage that depends on `bindutils`.

Closes #4852
2021-10-23 13:50:28 -04:00
Jose Diaz-Gonzalez
c9d10b8a2b fix: ensure the null scheduler reports the app as running when in use 2021-10-23 13:32:02 -04:00
Jose Diaz-Gonzalez
b43cec2d6b Merge pull request #4879 from dokku/josegonzalez-patch-2
Clarify that the docker-based dokku installation is ready when a certain message appears
2021-10-23 12:21:22 -04:00
Jose Diaz-Gonzalez
e1d5228796 docs: clarify that the docker-based dokku installation is ready when a certain message appears
Closes #4878
2021-10-23 12:20:58 -04:00
Jose Diaz-Gonzalez
fd77f9c7a0 chore: use updated github access token variable 2021-10-22 06:43:03 -04:00
Jose Diaz-Gonzalez
f6b03dd55f Merge pull request #4871 from dokku/4870-fix-procfile-remove
Do not error when default Procfile path does not exist when using a custom procfile-path
2021-10-17 15:10:49 -04:00
Jose Diaz-Gonzalez
43631e8847 fix: do not error when default Procfile path does not exist when using a custom procfile-path
Closes #4870
2021-10-16 16:34:34 -04:00
Jose Diaz-Gonzalez
afea3b54a8 Merge pull request #4869 from dokku/dependabot/npm_and_yarn/tests/apps/dot-websocket.disabled/socket.io-4.3.0
chore(deps): bump socket.io from 4.2.0 to 4.3.0 in /tests/apps/.websocket.disabled
2021-10-14 09:58:52 -04:00
dependabot[bot]
17a2b333f3 chore(deps): bump socket.io in /tests/apps/.websocket.disabled
Bumps [socket.io](https://github.com/socketio/socket.io) from 4.2.0 to 4.3.0.
- [Release notes](https://github.com/socketio/socket.io/releases)
- [Changelog](https://github.com/socketio/socket.io/blob/master/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io/compare/4.2.0...4.3.0)

---
updated-dependencies:
- dependency-name: socket.io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-14 13:09:09 +00:00
Jose Diaz-Gonzalez
06e63c8f95 Merge pull request #4868 from dokku/dependabot/maven/tests/apps/java/org.eclipse.jetty-jetty-servlet-11.0.7
chore(deps): bump jetty-servlet from 11.0.6 to 11.0.7 in /tests/apps/java
2021-10-13 10:59:56 -04:00
dependabot[bot]
1bc8bb2a24 chore(deps): bump jetty-servlet in /tests/apps/java
Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.6 to 11.0.7.
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.6...jetty-11.0.7)

---
updated-dependencies:
- dependency-name: org.eclipse.jetty:jetty-servlet
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-13 13:10:45 +00:00
Jose Diaz-Gonzalez
1bf8493cd1 Merge pull request #4866 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-199
chore(deps-dev): bump heroku/heroku-buildpack-php from 198 to 199 in /tests/apps/php
2021-10-11 10:29:33 -04:00
dependabot[bot]
e705d4eed8 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 198 to 199.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v198...v199)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-11 13:11:16 +00:00
Jose Diaz-Gonzalez
6e46bacf92 Merge pull request #4861 from dokku/fix-clone
Add missing clone/rename code for plugins
2021-10-10 02:38:59 -04:00
Jose Diaz-Gonzalez
69bb8e3077 Merge pull request #4864 from dokku/josegonzalez-patch-1
Switch to unauthenticated tap for formula bumping
2021-10-10 02:20:03 -04:00
Jose Diaz-Gonzalez
3aa7d39358 chore: switch to unauthenticated tap for formula bumping 2021-10-10 02:19:49 -04:00
Jose Diaz-Gonzalez
867403f589 Merge pull request #4863 from dokku/scheduler-docs
Clarify what is necessary for implementing a scheduler plugin
2021-10-10 02:07:29 -04:00
Jose Diaz-Gonzalez
cce7c5cb97 Merge pull request #4862 from dokku/4464-deploy-source
Set deploy-source and metadata at deploy time
2021-10-10 02:07:16 -04:00
Jose Diaz-Gonzalez
6ad8aa7988 docs: clarify what is necessary for implementing a scheduler plugin
Also split out kubernetes and nomad scheduler docs into their own pages.
2021-10-10 02:06:36 -04:00
Jose Diaz-Gonzalez
36294e09a3 fix: add missing clone/rename setup to builder plugins 2021-10-09 23:57:48 -04:00
Jose Diaz-Gonzalez
fddf130abd fix: add missing clone/rename setup code for golang plugins 2021-10-09 23:49:46 -04:00
Jose Diaz-Gonzalez
c0b6942392 refactor: set deploy-source and metadata at deploy time
This ensures the value is correct, where previously it was computed based on a file - and therefore did not distinguish between git:from-archive and git:from-image.

Closes #4464
2021-10-09 23:37:53 -04:00
Jose Diaz-Gonzalez
f949fe2a49 Merge pull request #4860 from dokku/parallel-process-deploys
Add ability to increase the max parallelism when deploying a given process type
2021-10-09 23:35:54 -04:00
Jose Diaz-Gonzalez
55554ce9bd feat: add ability to increase the max parallelism when deploying a given process type 2021-10-09 22:44:03 -04:00
Jose Diaz-Gonzalez
904894722f fix: add missing event for scheduler-detect 2021-10-09 21:12:56 -04:00
Jose Diaz-Gonzalez
a8a167f87f chore: fix documentation in migration guide 2021-10-09 21:12:56 -04:00
Jose Diaz-Gonzalez
cd7b8afccb Merge pull request #4853 from dokku/4825-dangling-images
Remove dangling images
2021-10-09 21:12:53 -04:00
Jose Diaz-Gonzalez
6c6e72ca04 Merge pull request #4765 from dokku/2184-process-type-restarts
Allow specifying a single process type to restart
2021-10-09 21:11:01 -04:00
Jose Diaz-Gonzalez
9616473c3a fix: ensure we retire any alternate tags
Dokku currently injects an alternate tag into the image. Without this change, deploying new image tags (via push with a Dockerfile or git:from-image) would result in the old images lying around forever. This change ensures they are registered for removal.

Closes #4825
2021-10-09 18:46:48 -04:00
Jose Diaz-Gonzalez
e53e8bb59f fix: register all containers for retirement on app stop
This ensures that unused docker images are _also_ removed. While this will mean a `ps:start` requires a rebuild in the case of a force-stop, it ensures we don't have unused images when destroying apps.
2021-10-09 18:46:48 -04:00
Jose Diaz-Gonzalez
5cfe7610b2 refactor: inject labels in builder-dockerfile using dockerfile
While this is slower, it ensures we have a proper image parent and can track images for retirement correctly.
2021-10-09 18:46:47 -04:00
Jose Diaz-Gonzalez
6b50ba66a9 fix: properly set label args on dockerfile and herokuish-built images 2021-10-09 18:46:47 -04:00
Jose Diaz-Gonzalez
685ef90018 fix: use release-and-deploy to ensure env vars get re-injected after config changes 2021-10-09 18:46:19 -04:00
Jose Diaz-Gonzalez
b48b79f5ca feat: allow specifying a single process type to restart
This changes restarts to drop the 'release' part that currently gets triggered, which also helps reduce the possibility that a new image layer will be added due to predeploy deploy triggers.

Note that the old method essentially halfway-rebuilt the app (which was what added the extra layer). This refactor removes that, which is a bc-break.

Additionally, scaling processes will result in deploying _only_ restarting the processes being scaled.

Closes #2184
2021-10-09 18:46:17 -04:00
Jose Diaz-Gonzalez
8f7f03a7d8 Merge pull request #4859 from dokku/remove-tar-plugin
Remove deprecated tar plugin
2021-10-09 18:44:19 -04:00
Jose Diaz-Gonzalez
d1a16717b3 chore: remove deprecated tar plugin
This plugin was deprecated in 0.24.0 in favor of git:from-archive. Users should migrate to the new command.
2021-10-09 18:43:53 -04:00
Jose Diaz-Gonzalez
aa77638ca7 Merge pull request #4858 from dokku/remove-tags-plugin
Remove deprecated tags plugin
2021-10-09 18:40:23 -04:00
Jose Diaz-Gonzalez
e893ac2aaa chore: remove deprecated tags plugin
This plugin was deprecated in 0.24.0 in favor of git:from-image. Users should migrate to the new command.
2021-10-09 18:34:01 -04:00
Jose Diaz-Gonzalez
1f8c5509cf Merge pull request #4857 from dokku/4739-scheduler-plugin
Implement scheduler management plugin
2021-10-09 18:32:20 -04:00
Jose Diaz-Gonzalez
3c6396fbca feat: implement the scheduler plugin
This also performs a one-time migration of the DOKKU_SCHEDULER values the scheduler plugin properties.

Closes #4739
2021-10-09 18:31:59 -04:00
Jose Diaz-Gonzalez
8984b748c5 docs: document the null builder 2021-10-09 18:31:42 -04:00
Dokku Bot
9fc7c49da5 Release 0.25.7
# History

## 0.25.7

Install/update via the bootstrap script:

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

### Bug Fixes

- #4855: @josegonzalez Output remote client help when there is no remote host

### New Features

- #4854: @josegonzalez Fix parallel usage for scheduler-docker-local

### Documentation

- #4856: @josegonzalez Add a note to the migration guide regarding using a Procfile for Dockerfile deploys
- #4843: @schmijos Clarify that docker-options are not passed to the launched process but instead to the docker run command

### Other

- #4844: @dependabot[bot] chore(deps): bump werkzeug from 2.0.1 to 2.0.2 in /tests/apps/python-flask
2021-10-09 21:53:56 +00:00
Jose Diaz-Gonzalez
650eb57e91 Merge pull request #4855 from dokku/4793-remote-help
Output remote client help when there is no remote host
2021-10-09 17:48:36 -04:00
Jose Diaz-Gonzalez
33a6c29517 Merge pull request #4854 from dokku/parallel-fixes
Fix parallel usage for scheduler-docker-local
2021-10-09 17:48:25 -04:00
Jose Diaz-Gonzalez
ba2126c57a Merge pull request #4856 from dokku/josegonzalez-patch-1
Add a note to the migration guide regarding using a Procfile for Dockerfile deploys
2021-10-09 16:33:18 -04:00
Jose Diaz-Gonzalez
00bb9fad9f docs: add a note to the migration guide regarding using a Procfile for Dockerfile deploys
Closes #4769
2021-10-09 16:32:59 -04:00
Jose Diaz-Gonzalez
396ba7b1ab fix: output remote client help when there is no remote host
Closes #4793
2021-10-09 16:16:45 -04:00
Jose Diaz-Gonzalez
6fb306eb03 feat: ignore will-cite message in the output
Dokku's users will basically never publish any papers about how we deploy code, so this is safe.
2021-10-09 16:12:06 -04:00
Jose Diaz-Gonzalez
d12c9d7362 fix: add missing parallel binary to Vagrant environment 2021-10-09 15:59:31 -04:00
Jose Diaz-Gonzalez
363039fe34 Merge pull request #4843 from schmijos/patch-1
Clarify that docker-options are not passed to the launched process but instead to the docker run command
2021-10-06 12:44:19 -04:00
Jose Diaz-Gonzalez
ef4eeab029 docs: clarify container option usage 2021-10-06 12:41:35 -04:00
Jose Diaz-Gonzalez
9ffd262801 Merge pull request #4844 from dokku/dependabot/pip/tests/apps/python-flask/werkzeug-2.0.2
chore(deps): bump werkzeug from 2.0.1 to 2.0.2 in /tests/apps/python-flask
2021-10-06 11:09:16 -04:00
dependabot[bot]
a4318ecdbd chore(deps): bump werkzeug in /tests/apps/python-flask
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 2.0.1 to 2.0.2.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/2.0.1...2.0.2)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-06 13:10:57 +00:00
Josua Schmid
c335eb9ad6 Update docker-options.md 2021-10-06 15:04:31 +02:00
Dokku Bot
9d883f53c7 Release 0.25.6
# History

## 0.25.6

Install/update via the bootstrap script:

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

### Bug Fixes

- #4841: @josegonzalez Ensure pack is run as root user when building apps in docker
- #4836: @josegonzalez Fix custom dockerfile path detection
- #4839: @josegonzalez Choose the correct app when a named remote is specified in the remote ssh client

### New Features

- #4829: @josegonzalez Add ability to schedule process types in parallel
- #4837: @josegonzalez Filter --link and --volume flags during Dockerfile builds

### Documentation

- #4840: @josegonzalez Explain sha256 image digest alternative when reusing docker image tags for git:from-image deployments

### Tests

- #4842: @josegonzalez Set default process list in test cnb buildpacks

### Other

- #4832: @dependabot[bot] chore(deps): bump flask from 2.0.1 to 2.0.2 in /tests/apps/python-flask
- #4833: @dependabot[bot] chore(deps): bump jinja2 from 3.0.1 to 3.0.2 in /tests/apps/python-flask
- #4831: @dependabot[bot] chore(deps): bump flask from 2.0.1 to 2.0.2 in /tests/apps/multi
2021-10-06 08:58:30 +00:00
Jose Diaz-Gonzalez
a25071f02f Merge pull request #4842 from dokku/fix-pack-tests
Set default process list in test cnb buildpacks
2021-10-06 03:59:28 -04:00
Jose Diaz-Gonzalez
5f5efe2563 Merge pull request #4829 from dokku/parallel-container-scheduling
Add ability to schedule process types in parallel
2021-10-06 03:51:26 -04:00
Jose Diaz-Gonzalez
fa1f3d0a08 Merge pull request #4841 from dokku/pack-in-docker
Ensure pack is run as root user when building apps in docker
2021-10-06 03:50:47 -04:00
Jose Diaz-Gonzalez
0720c3ef66 Merge pull request #4836 from dokku/4830-fix-dockerfile-detection
Fix custom dockerfile path detection
2021-10-06 03:30:05 -04:00
Jose Diaz-Gonzalez
ea86a9f2ca fix: ensure pack is run as root user when building apps in docker
Without this, using the pack builder fails since it cannot communicate with a root-mounted docker socket.
2021-10-06 03:07:40 -04:00
Jose Diaz-Gonzalez
4cf717baf8 fix: set default process list in test buildpacks
Also include the packeto-buildpacks/procfile buildpack to ensure the Procfile is interpolated for a process list.
2021-10-06 03:06:54 -04:00
Jose Diaz-Gonzalez
bab3e714f7 feat: require parallel package 2021-10-06 02:04:22 -04:00
Jose Diaz-Gonzalez
74b2961f8d fix: correct shfmt issues 2021-10-06 02:04:22 -04:00
Jose Diaz-Gonzalez
76201aed64 feat: add ability to deploy process types in parallel 2021-10-06 02:04:21 -04:00
Jose Diaz-Gonzalez
9e27b07772 refactor: split out docker-local scheduler deploys into separate binaries
This will allow those binaries to run in parallel.
2021-10-06 02:04:21 -04:00
Jose Diaz-Gonzalez
51c5c58354 fix: do not attempt to move the Dockerfile if it is the default path
Also drop the unnecessary rm call
2021-10-06 02:03:39 -04:00
Jose Diaz-Gonzalez
2d1b93c354 Merge pull request #4837 from dokku/filter-link
Filter --link and --volume flags during Dockerfile builds
2021-10-06 02:00:23 -04:00
Jose Diaz-Gonzalez
f945696d15 Merge pull request #4839 from dokku/4838-client-remote
Choose the correct app when a named remote is specified in the remote ssh client
2021-10-06 02:00:08 -04:00
Jose Diaz-Gonzalez
4687b96003 Merge pull request #4840 from dokku/josegonzalez-patch-1
Explain sha256 image digest alternative when reusing docker image tags for git:from-image deployments
2021-10-05 13:48:37 -04:00
Jose Diaz-Gonzalez
92524c2da0 docs: explain sha256 image digest alternative when reusing docker image tags for git:from-image deployments 2021-10-05 13:48:12 -04:00
Jose Diaz-Gonzalez
a5ea0ba896 Merge pull request #4832 from dokku/dependabot/pip/tests/apps/python-flask/flask-2.0.2
chore(deps): bump flask from 2.0.1 to 2.0.2 in /tests/apps/python-flask
2021-10-05 13:35:28 -04:00
Jose Diaz-Gonzalez
b7c7155852 fix: choose the correct app when a named remote is specified in the remote ssh client
Closes #4838
2021-10-05 13:18:19 -04:00
Jose Diaz-Gonzalez
fd28bf53de fix: move custom dockerfiles into place during the core-post-extract phase
Closes #4830
2021-10-05 12:21:29 -04:00
Jose Diaz-Gonzalez
52d9cb6188 fix: filter link and volume flags for dockerfile builds
The link flag was previously not filtered _after_ fetching build args for dockerfile builds, which meant if a plugin exposed that in it's own docker-args-build trigger, it would break deploys.

Additionally, allow for whitespaces between link and volume flags.
2021-10-05 12:20:34 -04:00
dependabot[bot]
5dcdce8b62 chore(deps): bump flask from 2.0.1 to 2.0.2 in /tests/apps/python-flask
Bumps [flask](https://github.com/pallets/flask) from 2.0.1 to 2.0.2.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.0.1...2.0.2)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-05 15:28:41 +00:00
Jose Diaz-Gonzalez
b41b5c0a68 Merge pull request #4833 from dokku/dependabot/pip/tests/apps/python-flask/jinja2-3.0.2
chore(deps): bump jinja2 from 3.0.1 to 3.0.2 in /tests/apps/python-flask
2021-10-05 11:28:10 -04:00
Jose Diaz-Gonzalez
a9f820bfaa Merge pull request #4831 from dokku/dependabot/pip/tests/apps/multi/flask-2.0.2
chore(deps): bump flask from 2.0.1 to 2.0.2 in /tests/apps/multi
2021-10-05 11:27:27 -04:00
dependabot[bot]
a2e40de597 chore(deps): bump jinja2 from 3.0.1 to 3.0.2 in /tests/apps/python-flask
Bumps [jinja2](https://github.com/pallets/jinja) from 3.0.1 to 3.0.2.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.0.1...3.0.2)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-05 13:09:34 +00:00
dependabot[bot]
2fa7baa035 chore(deps): bump flask from 2.0.1 to 2.0.2 in /tests/apps/multi
Bumps [flask](https://github.com/pallets/flask) from 2.0.1 to 2.0.2.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.0.1...2.0.2)

---
updated-dependencies:
- dependency-name: flask
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-05 13:09:24 +00:00
Dokku Bot
177f0be21c Release 0.25.5
# History

## 0.25.5

Install/update via the bootstrap script:

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

### Bug Fixes

- #4787: @josegonzalez Do not require double quotes when issuing dokku run commands
- #4816: @josegonzalez Set the DOKKU_HOST_ROOT on docker container start
- #4810: @josegonzalez Handle udp ports when fetching network config
- #4812: @josegonzalez Silence stderr when fetching a command from the Procfile
- #4800: @josegonzalez Add help2man os package for copyfiles make target to devcontainer
- #4796: @josegonzalez Remove the --restart flag from pre-deploy chown containers

### New Features

- #4809: @josegonzalez Implement storage:ensure-directory command
- #4801: @josegonzalez Expose git-from-archive and git-from-image plugin triggers
- #4785: @josegonzalez Add support for VSCode Dev Containers

### Documentation

- #4819: @stephenheron Fixed typo in tar documentation
- #4824: @dy3l Fix GitLab case
- #4822: @josegonzalez Add a note about using the registry:login command for private image deployments
- #4808: @francipvb Added a comment about Dockerfile deployment
- #4807: @FinnWoelm Docs: Fix instructions for enabling Docker Buildkit
- #4786: @josegonzalez Add missing argument from trigger documentation
- #4780: @adam12 Update source for `dokku-update`

### Tests

- #4828: @josegonzalez Update golang in test apps to latest version
- #4815: @josegonzalez tests: use python3 shebang for shellcheck-to-junit script
- #4814: @josegonzalez Add wget to devcontainer to fix shfmt installation
- #4791: @josegonzalez Fix test running in devcontainer

### Other

- #4813: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 197 to 198 in /tests/apps/php
- #4802: @dependabot[bot] chore(deps): bump django from 3.1.12 to 3.1.13 in /tests/apps/dockerfile-release
- #4784: @josegonzalez Upgrade vector image to 0.16.x
2021-10-05 01:42:35 +00:00
Jose Diaz-Gonzalez
c29def79f3 Merge pull request #4828 from dokku/update-golang
Update golang in test apps to latest version
2021-10-04 01:30:09 -04:00
Jose Diaz-Gonzalez
8fb50bbf68 tests: update golang in test apps to latest version 2021-10-04 00:46:45 -04:00
Jose Diaz-Gonzalez
ed9d356f60 Merge pull request #4787 from dokku/fix-run-quoting
Do not require double quotes when issuing dokku run commands
2021-10-03 23:35:24 -04:00
Jose Diaz-Gonzalez
a4be3a06f9 fix: properly quote arguments so that they preserve whitespace 2021-10-03 22:56:25 -04:00
Jose Diaz-Gonzalez
e636609fa8 fix: declare RUN_COMMAND after all other argument parsing has been performed
If it is declared sooner, the transformation of the command to the Procfile entry will be ignored.
2021-10-03 22:42:06 -04:00
Jose Diaz-Gonzalez
1d1cf56692 fix: run shfmt 2021-10-03 22:31:05 -04:00
Jose Diaz-Gonzalez
82778a0aad Merge pull request #4816 from dokku/josegonzalez-patch-2
Set the DOKKU_HOST_ROOT on docker container start
2021-10-03 22:30:13 -04:00
Jose Diaz-Gonzalez
3d239344fe refactor: use eval set hack to preserve whitespace 2021-10-03 20:09:16 -04:00
Jose Diaz-Gonzalez
c266d8c41e chore: ignore shellcheck issues 2021-10-03 20:08:56 -04:00
Jose Diaz-Gonzalez
6f2c218f29 chore: fix shfmt issue 2021-10-03 19:47:54 -04:00
Jose Diaz-Gonzalez
abfb0d3977 fix: do not require double quotes when issuing dokku run commands
This was broken in the #4736.
2021-10-03 19:46:42 -04:00
Jose Diaz-Gonzalez
9a1a97d56f docs: document DOKKU_HOST_ROOT 2021-10-03 19:45:06 -04:00
Jose Diaz-Gonzalez
44caf44ce6 fix: set the DOKKU_HOST_ROOT on docker container start
Without this change, cache doesn't work when running in a docker container.
2021-10-03 19:44:44 -04:00
Jose Diaz-Gonzalez
e800b8a9a7 Merge pull request #4815 from dokku/josegonzalez-patch-1
tests: use python3 shebang for shellcheck-to-junit script
2021-10-03 19:43:26 -04:00
Jose Diaz-Gonzalez
4d0ff4a834 Merge pull request #4810 from dokku/4804-skip-udp-port
Handle udp ports when fetching network config
2021-10-03 17:59:48 -04:00
Jose Diaz-Gonzalez
ce4fe7850b Merge pull request #4819 from stephenheron/patch-1
Fixed typo in tar documentation
2021-10-03 17:58:46 -04:00
Jose Diaz-Gonzalez
869a6ce553 Merge pull request #4824 from dy3l/fix-gitlab-case
Fix GitLab case
2021-10-01 16:21:20 -04:00
dy3l
43b90f1ae8 Fix GitLab case 2021-10-01 21:16:58 +01:00
Jose Diaz-Gonzalez
3e694926c9 Merge pull request #4822 from dokku/josegonzalez-patch-3
Add a note about using the registry:login command for private image deployments
2021-10-01 12:39:36 -04:00
Jose Diaz-Gonzalez
1c277a99cb docs: add a note about using the registry:login command for private image deployments 2021-10-01 12:39:10 -04:00
Stephen Heron
071416ef11 Fixed tar.md typo
Small typo: arhive  to archive
2021-09-30 15:57:13 +01:00
Jose Diaz-Gonzalez
5502a61452 Merge pull request #4809 from dokku/4805-ensure-directory
Implement storage:ensure-directory command
2021-09-30 01:25:33 -04:00
Jose Diaz-Gonzalez
96924e54c4 fix: decode bytes to a string 2021-09-30 01:25:05 -04:00
Jose Diaz-Gonzalez
8cff88dea0 tests: use python3 shebang for shellcheck-to-junit script 2021-09-29 12:21:58 -04:00
Jose Diaz-Gonzalez
fbff08a580 Merge pull request #4814 from dokku/josegonzalez-patch-1
Add wget to devcontainer to fix shfmt installation
2021-09-29 11:38:38 -04:00
Jose Diaz-Gonzalez
9b45aed6f0 dev: add wget to devcontainer to fix shfmt installation 2021-09-29 11:38:16 -04:00
Jose Diaz-Gonzalez
d9eea74f18 feat: implement storage:ensure-directory command
Closes #4805
2021-09-29 11:36:02 -04:00
Jose Diaz-Gonzalez
301d5a19b0 Merge pull request #4812 from dokku/silence-procfile-get-errors
Silence stderr when fetching a command from the Procfile
2021-09-29 11:32:11 -04:00
Jose Diaz-Gonzalez
8cb4bb74fa Merge pull request #4813 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-198
chore(deps-dev): bump heroku/heroku-buildpack-php from 197 to 198 in /tests/apps/php
2021-09-29 11:31:58 -04:00
dependabot[bot]
61447f9ffd chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 197 to 198.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v197...v198)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-29 13:11:48 +00:00
Jose Diaz-Gonzalez
06742cfcc4 fix: silence stderr when fetching a command from the Procfile
When deploying, if the procfile-get-command fails for a given process, this causes an error to output to stderr. We instead silence this as the error isn't important.
2021-09-29 00:48:26 -04:00
Jose Diaz-Gonzalez
82dfcc01e2 fix: handle udp ports when fetching network config
When an app only has UDP ports exposed, deploys will fail as we expect there to be a single TCP port.

While we _should_ support both, the easier fix is to ignore things and move on. Users can manually expose UDP ports as necessary via the -p flag (or by not specifying the port as a UDP port).

One quirk discovered during tests is that disabling zero-downtime deploys results in odd output, but also a deploy can succeed even if one of the processes that skipped zero-downtime fails. We should fix this in another PR, but this is documented in tests for now.

Closes #4804
2021-09-29 00:37:38 -04:00
Jose Diaz-Gonzalez
892391a7fd Merge pull request #4808 from francipvb/patch-1
Added a comment about Dockerfile deployment
2021-09-28 22:34:06 -04:00
Jose Diaz-Gonzalez
44a43cb130 docs: update note to clarify how port mapping works for Dockerfile apps 2021-09-28 22:25:52 -04:00
Francisco R. Del Roio
e00c98546f A comment about Dockerfile deployment.
I found issues while trying to deploy an app from a dockerfile and I found that the expose instruction causes problems with the dokku proxy.
2021-09-28 21:19:12 -03:00
Jose Diaz-Gonzalez
27e2f7ab3d Merge pull request #4807 from FinnWoelm/patch-1
Docs: Fix instructions for enabling Docker Buildkit
2021-09-28 15:14:04 -04:00
Finn Woelm
eadf9f1f8e Docs: Fix instructions for enabling Docker Buildkit
Docker Buildkit must be enabled via `/etc/default/dokku`. It cannot be enabled via `dokku config` because those variables are not made available during the `build` phase of Docker containers for security reasons (see https://dokku.com/docs/deployment/builders/dockerfiles/#build-time-configuration-variables).

See: https://github.com/dokku/dokku/pull/4723#issuecomment-927381185
2021-09-28 21:11:09 +02:00
Jose Diaz-Gonzalez
597fb7d219 Merge pull request #4801 from dokku/4778-git-hooks
Expose git-from-archive and git-from-image plugin triggers
2021-09-27 15:01:40 -04:00
Jose Diaz-Gonzalez
e27d19a346 Merge pull request #4802 from dokku/dependabot/pip/tests/apps/dockerfile-release/django-3.1.13
chore(deps): bump django from 3.1.12 to 3.1.13 in /tests/apps/dockerfile-release
2021-09-27 15:01:26 -04:00
dependabot[bot]
15bf4a8386 chore(deps): bump django in /tests/apps/dockerfile-release
Bumps [django](https://github.com/django/django) from 3.1.12 to 3.1.13.
- [Release notes](https://github.com/django/django/releases)
- [Commits](https://github.com/django/django/compare/3.1.12...3.1.13)

---
updated-dependencies:
- dependency-name: django
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-26 21:53:29 +00:00
Jose Diaz-Gonzalez
003ed01e30 Merge pull request #4784 from dokku/upgrade-vector
feat: upgrade vector image to 0.16.x
2021-09-26 17:50:02 -04:00
Jose Diaz-Gonzalez
db239debf1 feat: expose git-from-archive and git-from-image plugin triggers
This will allow other plugins to create apps on the fly by specifying either an archive url or a docker image.

Closes #4778
2021-09-22 12:32:17 -04:00
Jose Diaz-Gonzalez
fccd4e1a20 fix: add missing event hook 2021-09-22 12:31:35 -04:00
Jose Diaz-Gonzalez
0c8c093cf7 Merge pull request #4800 from dokku/help2man-devcontainer
Add help2man os package for copyfiles make target to devcontainer
2021-09-22 00:26:00 -04:00
Jose Diaz-Gonzalez
f74b702c5e fix: add os package for copyfiles make target to devcontainer
This ensures 'make copyfiles' can run appropriately within a devcontainer.
2021-09-22 00:25:16 -04:00
Jose Diaz-Gonzalez
75309bf3a0 Merge pull request #4791 from dokku/tests-in-devcontainer
Fix test running in devcontainer
2021-09-22 00:13:41 -04:00
Jose Diaz-Gonzalez
dc310c4ce4 Merge pull request #4796 from dokku/4783-drop-restart
Remove the --restart flag from pre-deploy chown containers
2021-09-22 00:13:11 -04:00
Jose Diaz-Gonzalez
0aa3c3fa53 fix: remove the --restart flag from pre-deploy chown containers
Closes #4783
2021-09-18 18:54:30 -04:00
Jose Diaz-Gonzalez
2d180f5e0f tests: remove extra call to list apps 2021-09-16 00:26:11 -04:00
Jose Diaz-Gonzalez
d83471bd46 fix: do not delete devcontainers when running tests in a docker container 2021-09-16 00:26:11 -04:00
Jose Diaz-Gonzalez
974f601fa9 dev: speed up devcontainer building by only copying the tests.mk file as Makefile first 2021-09-16 00:26:11 -04:00
Jose Diaz-Gonzalez
4a8ed5cd06 feat: add uuid-runtime to fix random id generation in tests 2021-09-16 00:26:11 -04:00
Jose Diaz-Gonzalez
709d8d411c fix: mount correct path for DOKKU_HOST_ROOT 2021-09-16 00:26:11 -04:00
Jose Diaz-Gonzalez
e79b750b6d Merge pull request #4786 from dokku/ps-restore-docs
Add missing argument from trigger documentation
2021-09-14 02:25:33 -04:00
Jose Diaz-Gonzalez
bb4a2da52e docs: add missing argument from trigger documentation 2021-09-14 02:25:08 -04:00
Jose Diaz-Gonzalez
79bb5cb9a7 fix: add make change for devcontainer support 2021-09-14 02:24:16 -04:00
Jose Diaz-Gonzalez
70877e351c Merge pull request #4785 from dokku/devcontainer-support
Add support for VSCode Dev Containers
2021-09-14 02:23:31 -04:00
Jose Diaz-Gonzalez
8877abb83f feat: add support for VSCode Dev Containers
This cannot be used in codespaces due to the extra mount, but it does allow for local development.
2021-09-14 02:22:52 -04:00
Jose Diaz-Gonzalez
cdc5eb9909 feat: upgrade vector image to 0.16.x 2021-09-14 02:19:49 -04:00
Jose Diaz-Gonzalez
e1482df157 Merge pull request #4780 from adam12/adam12-patch-1
Update source for `dokku-update`
2021-09-13 20:54:00 -04:00
Adam Daniels
b45b2db8e7 Update source for dokku-update
The `dokku-update` tool has been extracted into it's own repository, and is
no longer available inside the `dokku` source.
2021-09-13 20:42:41 -04:00
Dokku Bot
d21efd90b4 Release 0.25.4
# History

## 0.25.4

Install/update via the bootstrap script:

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

### Bug Fixes

- #4775: @josegonzalez Add support for url-encoded vector-sink config values …
- #4777: @josegonzalez Set correct version for registry plugin

### Documentation

- #4776: @josegonzalez Clarify valid values for container-type when entering containers

### Other

- #4774: @dependabot[bot] chore(deps): bump sqlparse from 0.4.1 to 0.4.2 in /tests/apps/dockerfile-release
2021-09-11 08:09:10 +00:00
Jose Diaz-Gonzalez
d82a259bab Merge pull request #4775 from dokku/vector-escaped-uri-support
Add support for url-encoded vector-sink config values …
2021-09-11 01:32:15 -04:00
Jose Diaz-Gonzalez
6f64a59f49 Merge pull request #4777 from dokku/josegonzalez-patch-1
Set correct version for registry plugin
2021-09-11 01:32:06 -04:00
Jose Diaz-Gonzalez
d67aa94709 fix: set correct version for registry plugin 2021-09-11 01:31:53 -04:00
Jose Diaz-Gonzalez
f8376c8845 Merge pull request #4776 from dokku/4768-document-enter
Clarify valid values for container-type when entering containers
2021-09-10 23:22:03 -04:00
Jose Diaz-Gonzalez
52f3cf2af0 docs: clarify valid values for container-type when entering containers
Refs #4768
2021-09-10 23:20:16 -04:00
Jose Diaz-Gonzalez
0997fd3347 fix: add support for url-encoded vector-sink config values
We additionally force-replace \u0026 with an ampersand to ensure we properly support & in config values (such as for URIs).
2021-09-10 23:04:41 -04:00
Jose Diaz-Gonzalez
2c4fec77bb refactor: force-set the type and inputs for a vector sink
Previously, a user could inadvertently override the type or the inputs value by specifying those in their config. Instead, we force-set these so that users do not have potentially invalid config.
2021-09-10 23:03:29 -04:00
Jose Diaz-Gonzalez
2a04ed70b6 fix: do not attempt to sprintf properties
Previously, any properties with a % would be formatted using sprintf, causing issues when consuming those values later on.
2021-09-10 23:02:21 -04:00
Jose Diaz-Gonzalez
1ea821a6c3 docs: document the vector-logs command 2021-09-10 23:01:33 -04:00
Jose Diaz-Gonzalez
3358254212 Merge pull request #4774 from dokku/dependabot/pip/tests/apps/dockerfile-release/sqlparse-0.4.2
chore(deps): bump sqlparse from 0.4.1 to 0.4.2 in /tests/apps/dockerfile-release
2021-09-10 19:22:27 -04:00
dependabot[bot]
dbde0b2719 chore(deps): bump sqlparse in /tests/apps/dockerfile-release
Bumps [sqlparse](https://github.com/andialbrecht/sqlparse) from 0.4.1 to 0.4.2.
- [Release notes](https://github.com/andialbrecht/sqlparse/releases)
- [Changelog](https://github.com/andialbrecht/sqlparse/blob/master/CHANGELOG)
- [Commits](https://github.com/andialbrecht/sqlparse/compare/0.4.1...0.4.2)

---
updated-dependencies:
- dependency-name: sqlparse
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-10 18:45:52 +00:00
Dokku Bot
9ead92a490 Release 0.25.3
# History

## 0.25.3

Install/update via the bootstrap script:

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

### Bug Fixes

- #4767: @josegonzalez Output logs when container rename fails and continue on
- #4764: @josegonzalez Reference correct plugin when setting up app-json plugin

### Refactors

- #4741: @josegonzalez Use a Dockerfile to speed up env var injection for herokuish app builds

### Documentation

- #4763: @josegonzalez Remove install doc references to removed web installer

### Other

- #4766: @josegonzalez Capitalize certain log messages for aesthetic reasons
2021-09-06 18:04:19 +00:00
Jose Diaz-Gonzalez
feb6f2fed6 Merge pull request #4767 from dokku/3900-log-on-rename-fail
Output logs when container rename fails and continue on
2021-09-05 02:31:16 -04:00
Jose Diaz-Gonzalez
128c442b17 Merge pull request #4741 from dokku/faster-builds
Use a Dockerfile to speed up env var injection for herokuish app builds
2021-09-05 02:13:34 -04:00
Jose Diaz-Gonzalez
162db40370 Merge pull request #4766 from dokku/nicer-log-output
Capitalize certain log messages for aesthetic reasons
2021-09-05 02:06:59 -04:00
Jose Diaz-Gonzalez
5855fd069f fix: use RANDOM in upcoming name
This fixes issues where a previous deploy may have failed, consuming that other slot.
2021-09-05 01:15:38 -04:00
Jose Diaz-Gonzalez
c045b1ca6b chore: capitalize certain log messages for aesthetic reasons 2021-09-05 00:36:58 -04:00
Jose Diaz-Gonzalez
d1319977d6 fix: add log message when rename fails and continue
This allows folks to later investigate why the rename failed (probably an app bug) and helpfully posts the container logs.

If multiple containers fail, they may have a ton of output, but this is better than not knowing what is going on.

Closes #3900
2021-09-05 00:35:57 -04:00
Jose Diaz-Gonzalez
9c073364f5 feat: set initial container name for docker-local deploys
This makes it easier to track a Dokku container vs an intermediate container or something created external to Dokku.

The container is properly renamed later on, so the `upcoming` part is just an indicator that the container has potentially not yet passed healthchecks.
2021-09-05 00:35:03 -04:00
Jose Diaz-Gonzalez
e9554447d6 Merge pull request #4764 from dokku/josegonzalez-patch-1
Reference correct plugin when setting up app-json plugin
2021-09-04 23:26:25 -04:00
Jose Diaz-Gonzalez
f3f9d37d59 fix: reference correct plugin when setting up app-json plugin 2021-09-04 22:43:10 -04:00
Jose Diaz-Gonzalez
0454f3bc8f Merge pull request #4763 from dokku/4762-installer-docs
Remove install doc references to removed web installer
2021-09-04 16:31:37 -04:00
Jose Diaz-Gonzalez
aa81bc0589 docs: remove web installer from homepage 2021-09-04 16:31:28 -04:00
Jose Diaz-Gonzalez
3f70ee3e54 Update README.md 2021-09-04 16:27:27 -04:00
Dokku Bot
e922615cc7 Release 0.25.2
# History

## 0.25.2

Install/update via the bootstrap script:

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

### Bug Fixes

- #4760: @josegonzalez Add missing rsync to OS dependency list for git:sync command

### New Features

- #4761: @josegonzalez Correct permissions for userns support
- #4742: @ashkulz bootstrap: add support for Debian 11 (bullseye)

### Documentation

- #4747: @erickedji Fix process management references to formation key in app.json

### Other

- #4753: @dependabot[bot] chore(deps): bump socket.io from 4.1.3 to 4.2.0 in /tests/apps/.websocket.disabled
- #4750: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 196 to 197 in /tests/apps/php
- #4758: @ltalirz Fix typo in network docs
- #4748: @trival Remove spare backtick in 0.25.0-migration-guide.md
2021-09-04 20:13:55 +00:00
Jose Diaz-Gonzalez
d6a70c7e7b Merge pull request #4761 from dokku/4746-userns-support
Correct permissions for userns support
2021-09-04 14:10:41 -04:00
Jose Diaz-Gonzalez
c725506d63 fix: correct permissions for userns support
Closes #4746
2021-09-04 02:38:31 -04:00
Jose Diaz-Gonzalez
cafcf5cb7c Merge pull request #4753 from dokku/dependabot/npm_and_yarn/tests/apps/dot-websocket.disabled/socket.io-4.2.0
chore(deps): bump socket.io from 4.1.3 to 4.2.0 in /tests/apps/.websocket.disabled
2021-09-04 00:26:00 -04:00
Jose Diaz-Gonzalez
54e6dd59f1 Merge pull request #4750 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-197
chore(deps-dev): bump heroku/heroku-buildpack-php from 196 to 197 in /tests/apps/php
2021-09-04 00:25:53 -04:00
Jose Diaz-Gonzalez
bd89c31cb7 Merge pull request #4760 from dokku/4754-install-rsync
Add missing rsync to OS dependency list for git:sync command
2021-09-04 00:25:42 -04:00
Jose Diaz-Gonzalez
4136c2682f Merge pull request #4742 from ashkulz/debian_bullseye
bootstrap: add support for Debian 11 (bullseye)
2021-09-03 21:59:49 -04:00
Jose Diaz-Gonzalez
5b8c93fd29 fix: install rsync
Closes #4754
2021-09-03 21:55:27 -04:00
Jose Diaz-Gonzalez
0337a21f66 Merge pull request #4758 from ltalirz/patch-3
Fix typo in network docs
2021-09-03 11:33:49 -04:00
Leopold Talirz
407c54757d Update network.md 2021-09-03 15:00:27 +02:00
Leopold Talirz
5dbefcbd9c docs: fix typo 2021-09-03 14:58:20 +02:00
dependabot[bot]
70e552535b chore(deps): bump socket.io in /tests/apps/.websocket.disabled
Bumps [socket.io](https://github.com/socketio/socket.io) from 4.1.3 to 4.2.0.
- [Release notes](https://github.com/socketio/socket.io/releases)
- [Changelog](https://github.com/socketio/socket.io/blob/master/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io/compare/4.1.3...4.2.0)

---
updated-dependencies:
- dependency-name: socket.io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-30 13:13:42 +00:00
dependabot[bot]
8e6b19c36e chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 196 to 197.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v196...v197)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-27 13:08:48 +00:00
Jose Diaz-Gonzalez
c379b3e477 Merge pull request #4748 from trival/patch-1
Remove spare backtick in 0.25.0-migration-guide.md
2021-08-25 10:14:20 -04:00
Thomas Gorny
2271c476e9 Remove spare backtick in 0.25.0-migration-guide.md 2021-08-25 11:44:59 +02:00
Ashish Kulkarni
c70be7a386 bootstrap: add support for Debian 11 (bullseye)
fixes #4740
2021-08-24 13:26:18 +05:30
Jose Diaz-Gonzalez
6c7217b873 Merge pull request #4747 from erickedji/patch-1
Fix process management references to formation key in app.json
2021-08-23 10:57:14 -04:00
Komlan Akpédjé KEDJI
aa276f0b18 Fix process management: s/formations/formation/ (app.json)
app.json expects a "formation" (singular) key, not a "formations" (plural) key
2021-08-23 01:39:44 +02:00
Jose Diaz-Gonzalez
c43149f4c9 fix: lint 2021-08-18 03:23:28 -04:00
Jose Diaz-Gonzalez
3d4252f43c refactor: use a Dockerfile to speed up env var injection for herokuish app builds
Herokuish app builds currently spin up a temporary container and then commit that container. The new approach uses a Dockerfile to perform those same actions, avoiding the need for the temporary container.
2021-08-18 03:16:11 -04:00
Dokku Bot
d0219ced67 Release 0.25.1
# History

## 0.25.1

Install/update via the bootstrap script:

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

### Bug Fixes

- #4736: @josegonzalez Ensure herokuish deploys respects the env vars during the release process

### Documentation

- #4734: @josegonzalez docs: add github sponsorship link to contributing docs
2021-08-14 06:35:43 +00:00
Jose Diaz-Gonzalez
2bc7b7e2cc Merge pull request #4736 from dokku/josegonzalez-patch-1
Ensure herokuish deploys respects the env vars during the release process
2021-08-14 02:34:59 -04:00
Jose Diaz-Gonzalez
8c42e85fcc fix: move pre-deploy trigger to before image retagging 2021-08-14 01:58:35 -04:00
Jose Diaz-Gonzalez
257abfaee8 refactor: move pre-deploy call to post-release-builder
Some of the hooks should happen before we push images out...
2021-08-14 01:58:35 -04:00
Jose Diaz-Gonzalez
faf53aa479 fix: install pack for run tests 2021-08-12 22:59:33 -04:00
Jose Diaz-Gonzalez
d9204083f7 fix: install pack
Also move the installation into a helper method.
2021-08-12 22:07:53 -04:00
Jose Diaz-Gonzalez
775e78bd08 fix: disable some shellcheck rules 2021-08-12 21:15:15 -04:00
Jose Diaz-Gonzalez
997cc4f466 tests: shore up test checks 2021-08-12 21:12:15 -04:00
Jose Diaz-Gonzalez
a825e2678c fix: ensure env vars are injected for all run containers
CNB containers would otherwise not have them injected.
2021-08-12 21:12:01 -04:00
Jose Diaz-Gonzalez
6c6e26712d refactor: move helper function to internal-functions 2021-08-12 21:11:11 -04:00
Jose Diaz-Gonzalez
c4985bca67 fix: inject global env vars into cnb containers 2021-08-12 19:44:49 -04:00
Jose Diaz-Gonzalez
620a36be82 tests: enhance release tests to check global secrets 2021-08-12 17:36:01 -04:00
Jose Diaz-Gonzalez
7bf61b401f fix: call pre-deploy before deploy but after release
The dokku_release command adds more "stuff" by virtue of calling builder-release (the herokuish builder injects env vars).

This more closely matches previous order of operations.

Closes #4737
2021-08-12 17:35:54 -04:00
Jose Diaz-Gonzalez
10f6d00e04 tests: add test to ensure herokuish respects the env vars during the release process 2021-08-12 16:16:08 -04:00
Jose Diaz-Gonzalez
dfae840ace Merge pull request #4734 from dokku/josegonzalez-patch-1
docs: add github sponsorship link to contributing docs
2021-08-11 15:57:55 -04:00
Jose Diaz-Gonzalez
f6ec744a1f docs: add github sponsorship link to contributing docs 2021-08-11 15:57:44 -04:00
Dokku Bot
8f1b142949 Release 0.25.0
# History

## 0.25.0

Install/update via the bootstrap script:

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

See the [0.25.0 migration guide](/docs/appendices/0.25.0-migration-guide.md) for more information on migrating to 0.25.0.

### Bug Fixes

- #4733: @josegonzalez Force grep to run in quiet mode in domains:add call
- #4732: @josegonzalez Ensure image cleanup does not impact the stack image and refactor container/image cleanup
- #4731: @josegonzalez Respect debconf selections where possible
- #4729: @josegonzalez Correct count check for user-auth trigger
- #4721: @josegonzalez Recursively sync submodules
- #4717: @josegonzalez Silence stderr when checking for ufw on debian systems
- #4716: @josegonzalez Suppress dos2unix stderr output during Dockerfile builds
- #4686: @josegonzalez Ensure repository is bare when calling git:sync
- #4684: @josegonzalez Install gpg-agent in bootstrap script
- #4683: @josegonzalez Strip published port flags when triggering deploy tasks
- #4651: @josegonzalez Do not attempt to retire when there was no pre-existing container
- #4639: @josegonzalez Correct path for azure-vm releases

### New Features

- #4730: @josegonzalez Execute motd at the end of the install
- #4719: @josegonzalez Add support for routing an app to a specified host:port
- #4715: @josegonzalez Switch from xip.io to sslip.io
- #4460: @josegonzalez Implement registry plugin
- #4711: @josegonzalez Enable installing on RPM systems where bind-utils is bindutils
- #4687: @josegonzalez Output message explaining how to remove a deploy lock when a lock is encountered
- #4682: @josegonzalez Properly space report output
- #4502: @josegonzalez Add monorepo support
- #4509: @josegonzalez Add ability to specify initial network
- #4641: @dbazile Add initial support for installing onto Fedora

### Refactors

- #4508: @josegonzalez Add support for the formation key in app.json
- #4507: @josegonzalez Drop support for Ubuntu 16.04

### Documentation

- #4723: @josegonzalez Clarify buildkit instructions
- #4718: @josegonzalez Update link to azure installation on homepage
- #4714: @josegonzalez Swap from freenode to libera.chat
- #4712: @josegonzalez Clarify the shape of the command that should be entered in app.json for a cron task
- #4709: @josegonzalez Add migration note for deprecation of ubuntu 16.04
- #4697: @josegonzalez Specify that run containers use the same image
- #4688: @josegonzalez Add a note on recovering networks
- #4689: @josegonzalez Add a note about wildcards in the installation doc page
- #4680: @josegonzalez Cleanup markdown lint errors
- #4679: @josegonzalez Cleanup markdown lint errors
- #4678: @josegonzalez Cleanup markdown lint errors
- #4677: @josegonzalez Cleanup markdown lint errors
- #4672: @bjab Fix typo in pack builder docs
- #4668: @RealOrangeOne Make example gitlab-ci script a list
- #4673: @eltociear Fix comment typo in dokku binary
- #4661: @dy3l Fix case style
- #4647: @AngCosmin Fixed unable to find version `v1` for official Github Action

### Tests

- #4693: @josegonzalez Add package.lock for test app
- #4685: @josegonzalez Remove ci skip note in PULL_REQUEST_TEMPLATE.md
- #4681: @josegonzalez Ignore duplication warnings in codacy
- #4644: @josegonzalez Update unit test publisher to latest

### Other

- #4726: @josegonzalez Drop web installer in favor of setup via cli
- #4713: @josegonzalez Make heroku-20/focal the default stack for herokuish builds
- #4707: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 195 to 196 in /tests/apps/php
- #4701: @josegonzalez Revamp dokku run command
- #4671: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 193 to 195 in /tests/apps/php
- #4674: @dependabot[bot] chore(deps): bump jetty-servlet from 11.0.5 to 11.0.6 in /tests/apps/java
- #4652: @dependabot[bot] chore(deps): bump jetty-servlet from 11.0.4 to 11.0.5 in /tests/apps/java
- #4653: @dependabot[bot] chore(deps): bump maven-dependency-plugin from 3.1.2 to 3.2.0 in /tests/apps/java
- #4648: @dependabot[bot] chore(deps): bump django from 3.1.9 to 3.1.12 in /tests/apps/dockerfile-release
- #4645: @dependabot[bot] chore(deps): bump jetty-servlet from 11.0.3 to 11.0.4 in /tests/apps/java
- #4642: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 192 to 193 in /tests/apps/php
2021-08-10 17:02:39 +00:00
Jose Diaz-Gonzalez
94c298a1e3 Merge pull request #4733 from dokku/quiet-grep
Force grep to run in quiet mode in domains:add call
2021-08-08 14:52:10 -04:00
Jose Diaz-Gonzalez
6e7e69b19d fix: force grep to run in quiet mode in domains:add call 2021-08-08 14:50:44 -04:00
Jose Diaz-Gonzalez
e34e36c390 Merge pull request #4732 from dokku/cleanup-common
Ensure image cleanup does not impact the stack image and refactor container/image cleanup
2021-08-08 04:15:34 -04:00
Jose Diaz-Gonzalez
5103ee21aa chore: drop redundant if guard 2021-08-08 03:40:08 -04:00
Jose Diaz-Gonzalez
c58cb02689 fix: add flag to list 2021-08-08 03:31:53 -04:00
Jose Diaz-Gonzalez
72eb61d1fc feat: call scheduler-retire when destroying an app
This helps ensure we don't keep around old containers related to a given app.
2021-08-08 03:04:50 -04:00
Jose Diaz-Gonzalez
9e18736475 feat: add ability to scope retire call to a single app
Also cleanup the log output a bit for the ps:retire command.
2021-08-08 03:04:25 -04:00
Jose Diaz-Gonzalez
7a564f3185 fix: do not retire the original image
By removing the image cleanup registration, we avoid cases where we delete gliderlabs/herokuish, which may cause issues for users in airgapped installations (where the image may not be pullable from a registry).
2021-08-08 02:24:27 -04:00
Jose Diaz-Gonzalez
e8d9982330 chore: drop unnecessary scheduler-docker-cleanup hook
All the logic was already called from docker-cleanup, so this just lengthened the cleanup time.
2021-08-08 01:57:44 -04:00
Jose Diaz-Gonzalez
e1f1531d42 refactor: call golang version of docker cleanup from shell
This ensures there is only a single implementation.
2021-08-08 01:56:43 -04:00
Jose Diaz-Gonzalez
5e6b27a63f Merge pull request #4731 from dokku/4065-respect-debconf
Respect debconf selections where possible
2021-08-07 20:45:33 -04:00
Jose Diaz-Gonzalez
9f326b3f28 fix: respect debconf selections where possible
This will continue to not override anyone's global domain preferences, but will at least ensure we set the domain prior to the default injected in 00_dokku-standard#install.

Closes #4065
2021-08-07 19:25:01 -04:00
Jose Diaz-Gonzalez
66bded4910 Merge pull request #4730 from dokku/execute-motd
Execute motd at the end of the install
2021-08-07 19:18:53 -04:00
Jose Diaz-Gonzalez
9c96394369 Merge pull request #4729 from dokku/user-auth-count-check
Correct count check for user-auth trigger
2021-08-07 18:44:38 -04:00
Jose Diaz-Gonzalez
df02a1c1cc feat: execute motd at the end of the install
This should prompt users to complete the install as normal.
2021-08-07 18:34:19 -04:00
Jose Diaz-Gonzalez
f0ca3fef54 fix: correct count check for user-auth trigger
There are cases where the user-auth plugin exists but the events plugin is not enabled, and this accounts for that.
2021-08-07 17:55:56 -04:00
Jose Diaz-Gonzalez
ca680c3aeb Merge pull request #4726 from dokku/2247-remove-web-installer
Drop web installer in favor of setup via cli
2021-08-07 17:13:58 -04:00
Jose Diaz-Gonzalez
a1c768b9b3 refactor: drop web installer in favor of setup via cli
This makes the installation a bit more secure by ensuring a user does not accidentally expose a way for unauthorized users to add new ssh keys to the system.

Additionally, this removes the extra HOSTNAME file to make the initial install process easier (that file was not modifiable by any dokku commands.

Closes #2247
2021-08-07 16:36:41 -04:00
Jose Diaz-Gonzalez
857850b4c6 Merge pull request #4723 from dokku/josegonzalez-patch-1
Clarify buildkit instructions
2021-08-06 13:40:45 -04:00
Jose Diaz-Gonzalez
da92be3030 docs: clarify buildkit instructions
There is no need for a reboot
2021-08-06 13:40:34 -04:00
Jose Diaz-Gonzalez
e290965acf Merge pull request #4693 from dokku/add-package-lock
Add package.lock for test app
2021-08-06 13:17:13 -04:00
Jose Diaz-Gonzalez
d1b67f1fff Merge pull request #4721 from dokku/4624-git-submodule-sync
Recursively sync submodules
2021-08-06 12:43:50 -04:00
Jose Diaz-Gonzalez
7c4381bfd5 chore: add package.lock for test app 2021-08-06 12:41:10 -04:00
Jose Diaz-Gonzalez
bc410b4111 fix: recursively sync submodules
Closes #4624
2021-08-06 11:40:28 -04:00
Jose Diaz-Gonzalez
534a5f0898 Merge pull request #4719 from dokku/4665-route-internal
Add support for routing an app to a specified host:port
2021-08-06 11:11:41 -04:00
Jose Diaz-Gonzalez
1a2153585e Merge pull request #4717 from dokku/4710-silence-installer
Silence stderr when checking for ufw on debian systems
2021-08-06 03:13:48 -04:00
Jose Diaz-Gonzalez
547c14d18e Merge pull request #4713 from dokku/4621-default-focal
Make heroku-20/focal the default stack for herokuish builds
2021-08-06 03:06:23 -04:00
Jose Diaz-Gonzalez
d0c0543659 Merge pull request #4716 from dokku/suppress-dos2unix
Suppress dos2unix stderr output during Dockerfile builds
2021-08-06 02:16:17 -04:00
Jose Diaz-Gonzalez
e0a513650e Merge pull request #4715 from dokku/2574-use-sslip
Switch from xip.io to sslip.io
2021-08-06 02:15:53 -04:00
Jose Diaz-Gonzalez
9ecfa843f0 feat: add support for routing an app to a specified host:port
This is useful when there is a service not managed by Dokku but should be exposed via the Dokku routing layer. As an example, some binaries (consul, nomad, vault) expose web uis, and are traditionally run on the host directly vs in a container.

Closes #4665
2021-08-06 01:29:25 -04:00
Jose Diaz-Gonzalez
afd64c3e04 Merge pull request #4718 from dokku/docs-azure-link-update
Update link to azure installation on homepage
2021-08-05 23:52:57 -04:00
Jose Diaz-Gonzalez
9b3ed8d614 docs: update link to azure installation on homepage 2021-08-05 23:52:37 -04:00
Jose Diaz-Gonzalez
79f181cd55 fix: silence stderr when checking for ufw on debian systems
Closes #4710
2021-08-05 23:49:37 -04:00
Jose Diaz-Gonzalez
d5b14769dd feat: make heroku-20/focal the default stack for herokuish builds
Closes #4621
2021-08-05 23:43:07 -04:00
Jose Diaz-Gonzalez
bdc89e5907 Merge pull request #4460 from dokku/4219-registry-plugin
Implement registry plugin
2021-08-05 23:42:28 -04:00
Jose Diaz-Gonzalez
a68234bdf4 chore: suppress dos2unix stderr output during Dockerfile builds 2021-08-05 23:41:03 -04:00
Jose Diaz-Gonzalez
3f2079b4ea Merge pull request #4711 from dokku/4706-bind-utils
Enable installing on RPM systems where bind-utils is bindutils
2021-08-05 23:40:17 -04:00
Jose Diaz-Gonzalez
ecb8a02356 feat: switch from xip.io to sslip.io
xip.io appears to be unsupported after an exodus at basecamp. Switching to sslip.io seems like a decent move.

Refs #2574
2021-08-05 23:30:58 -04:00
Jose Diaz-Gonzalez
39d8465938 Merge pull request #4714 from dokku/libera-chat
Swap from freenode to libera.chat
2021-08-05 23:04:12 -04:00
Jose Diaz-Gonzalez
b15244e672 docs: swap from freenode to libera.chat
Freenode is basically offline at this point and we've had a libera.chat for a while, so we should point to that.

Also default all real-time communication to Slack.

Finally, remove prominent links to IRC. While libera is still available, the lack of monitoring makes it not a great way to provide support to users.
2021-08-05 23:01:35 -04:00
Jose Diaz-Gonzalez
a9905d3508 Merge pull request #4712 from dokku/4695-cron-docs
Clarify the shape of the command that should be entered in app.json for a cron task
2021-08-05 20:28:30 -04:00
Jose Diaz-Gonzalez
77340011bd docs: clarify the shape of the command that should be entered in app.json for a cron task 2021-08-05 20:27:58 -04:00
Jose Diaz-Gonzalez
5c1d99a04c feat: enable installing on RPM systems where bind-utils is bindutils
Closes #4706
2021-08-05 20:24:52 -04:00
Jose Diaz-Gonzalez
b02f8ba88b docs: fix deprecation warning 2021-08-05 20:14:30 -04:00
Jose Diaz-Gonzalez
f973239379 docs: link to registry management docs 2021-08-05 20:14:20 -04:00
Jose Diaz-Gonzalez
f0a125f070 fix: remove the test-app:2 image
The dokku-retire call needs two passes because a later image was a child image of test-app:2.
2021-08-05 18:58:33 -04:00
Jose Diaz-Gonzalez
5a19cebfd7 fix: do not mark images dead when they still have tags 2021-08-05 17:48:09 -04:00
Jose Diaz-Gonzalez
d5697b9399 tests: inject docker credentials for tests 2021-08-05 16:48:22 -04:00
Jose Diaz-Gonzalez
8f98bbc66f fix: do not append trailing slash on empty server values 2021-08-05 15:17:32 -04:00
Jose Diaz-Gonzalez
d4ec8d3ab5 tests: add tests for registry plugin 2021-08-05 04:20:22 -04:00
Jose Diaz-Gonzalez
0a08911800 fix: do not aggressively clean up when using the docker-local scheduler 2021-08-05 04:17:37 -04:00
Jose Diaz-Gonzalez
30a15aaa7a fix: respect pre-deploy task image manipulation
This requires a bc-incompatible break in terms of what triggers the pre-deploy hook (dokku internals vs schedulers).
2021-08-05 04:17:21 -04:00
Jose Diaz-Gonzalez
d727dd76ce fix: ensure we push and cleanup the correct images 2021-08-05 01:13:36 -04:00
Jose Diaz-Gonzalez
39af6359be feat: add a Start() helper function 2021-08-05 01:12:40 -04:00
Jose Diaz-Gonzalez
d1728a4653 fix: avoid returning a numbered image tag if push is not enabled 2021-08-05 01:12:30 -04:00
Jose Diaz-Gonzalez
13608df0ef fix: properly pass in password to docker login command 2021-08-05 01:12:10 -04:00
Jose Diaz-Gonzalez
c07b3161fc fix: build all registry triggers 2021-08-05 01:11:59 -04:00
Jose Diaz-Gonzalez
1f2e2ba61d docs: update registry docs for clarity 2021-08-05 01:11:50 -04:00
Jose Diaz-Gonzalez
93bd3cd9e3 fix: add godoc 2021-08-04 21:49:40 -04:00
Jose Diaz-Gonzalez
9930c0493d docs: update docs for new features 2021-08-04 21:49:38 -04:00
Jose Diaz-Gonzalez
455a80e09d chore: drop unimplemented code 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
9a845664e1 feat: implement image cleanup 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
36c96be091 fix: add missing event hook 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
1a99271fa8 feat: push tag 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
dc04ab912d feat: tag image 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
93f819609e feat: filled in more of pushToRegistry 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
6480957c4f feat: add computed image-repo 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
b33cd266e7 chore: drop unused code 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
88cbae2a6d feat: implement more of the registry plugin 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
3848b467a2 fix: add missing return 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
e68c04b9a6 fix: handle lint issues 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
5d8340d305 feat: stub out a bunch of code 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
336e901c1e fix: add some simple validation 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
a6e4949264 refactor: drop property 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
1b325435b8 docs: add initial registry docs 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
f8edf6b07a docs: move schedulers to live under deployment 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
9e6091e665 feat: add a new hook for global builder-release 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
a755f69e92 feat: first pass at registry plugin 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
518337812f chore: fix comment 2021-08-04 21:49:14 -04:00
Jose Diaz-Gonzalez
324e1ad1b5 Merge pull request #4709 from dokku/deprecation-note
Add migration note for deprecation of ubuntu 16.04
2021-08-04 13:51:41 -04:00
Jose Diaz-Gonzalez
e95384f76b docs: add migration note for deprecation of ubuntu 16.04 2021-08-04 13:45:49 -04:00
Jose Diaz-Gonzalez
111d5c68bf Merge pull request #4707 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-196
chore(deps-dev): bump heroku/heroku-buildpack-php from 195 to 196 in /tests/apps/php
2021-08-03 15:21:48 -04:00
dependabot[bot]
25ecbcdbbd chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 195 to 196.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v195...v196)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-02 13:08:38 +00:00
Jose Diaz-Gonzalez
ca75d4162d Merge pull request #4508 from dokku/4500-formation-scale
Add support for the formation key in app.json
2021-08-02 00:27:35 -04:00
Jose Diaz-Gonzalez
a8a43812a0 chore: make deprecation notice more readable 2021-08-01 23:15:01 -04:00
Jose Diaz-Gonzalez
7058989941 chore: delete this file on import 2021-08-01 22:34:42 -04:00
Jose Diaz-Gonzalez
0decb386d5 fix: correct issues in parsing and writing an updated app.json 2021-08-01 21:52:05 -04:00
Jose Diaz-Gonzalez
4967cc1d1c fix: do not manually create an app during tests
This will cause weird things to happen due to not initializing the app correctly.
2021-08-01 20:13:50 -04:00
Jose Diaz-Gonzalez
06cb7a0d55 fix: properly update formations 2021-08-01 19:06:33 -04:00
Jose Diaz-Gonzalez
fcd16e849d fix: set correct initial formation 2021-08-01 19:06:25 -04:00
Jose Diaz-Gonzalez
eb55ba5dd0 fix: correct guard 2021-08-01 18:46:41 -04:00
Jose Diaz-Gonzalez
a7593db0c3 refactor: allow specifying clearExisting when calling ps-set-scale 2021-08-01 17:54:12 -04:00
Jose Diaz-Gonzalez
7502cbd13d fix: actually build triggers 2021-08-01 17:53:34 -04:00
Jose Diaz-Gonzalez
823629d332 docs: document ps-can-scale 2021-08-01 17:53:25 -04:00
Jose Diaz-Gonzalez
401683a305 refactor: write DOKKU_SCALE contents to scale property
- remove extraction of DOKKU_SCALE
- migrate to property system
- rewrite internals to use a FormationSlice instead of a map
2021-08-01 17:47:04 -04:00
Jose Diaz-Gonzalez
8fc0cb67ec chore: drop unnecessary line stripping
Since this comes out of ps-current-scale, we can ensure the contents are always valid.
2021-08-01 16:33:42 -04:00
Jose Diaz-Gonzalez
a1dcc2c173 refactor: move ParseScaleOutput to common.go so that it can be used by all plugins 2021-08-01 16:29:50 -04:00
Jose Diaz-Gonzalez
bd4621070c feat: implement ps-can-scale 2021-08-01 16:27:13 -04:00
Jose Diaz-Gonzalez
70eb751868 fix: correct ps-can-scale guard 2021-08-01 16:26:29 -04:00
Jose Diaz-Gonzalez
ef262c26e8 feat: override all existing scale parameters when calling ps-set-scale 2021-08-01 16:20:19 -04:00
Jose Diaz-Gonzalez
5ad5a29a00 docs: add godoc 2021-08-01 16:14:12 -04:00
Jose Diaz-Gonzalez
46d333df4b feat: implement ps-set-scale trigger 2021-08-01 16:13:03 -04:00
Jose Diaz-Gonzalez
247698fea6 refactor: move can-scale check out to command
If the internals call ps-set-scale, we should always respect it.
2021-08-01 16:07:55 -04:00
Jose Diaz-Gonzalez
302537efd2 refactor: skip image fetching when deploys are skipped 2021-08-01 16:07:26 -04:00
Jose Diaz-Gonzalez
a62f04fa7e docs: add godoc 2021-08-01 15:47:55 -04:00
Jose Diaz-Gonzalez
1c98b48e5d fix: add trigger to gitignore 2021-08-01 15:32:08 -04:00
Jose Diaz-Gonzalez
33bf6f59b3 fix: do not output extra newlines 2021-08-01 15:31:59 -04:00
Jose Diaz-Gonzalez
550a0bd07b fix: properly parse input from ps-current-scale 2021-08-01 01:53:46 -04:00
Jose Diaz-Gonzalez
213f7d224c refactor: use ps-current-scale instead of parsing DOKKU_SCALE file when iterating over deployed processes 2021-08-01 01:43:35 -04:00
Jose Diaz-Gonzalez
c62bff3002 refactor: hide dokku scale file parsing inside ps plugin 2021-08-01 01:21:46 -04:00
Jose Diaz-Gonzalez
31f3c429ab docs: fix DOKKU_SCALE reference 2021-08-01 00:33:36 -04:00
Jose Diaz-Gonzalez
fee6773ef3 docs: add deprecation note to migration guide
Also add documentation for formations key.
2021-08-01 00:31:28 -04:00
Jose Diaz-Gonzalez
bc49a2e124 fix: ignore DOKKU_SCALE file if app.json has formations key 2021-08-01 00:30:31 -04:00
Jose Diaz-Gonzalez
3fe10efd09 fix: correct issue with assignment to nil map 2021-07-31 23:00:37 -04:00
Jose Diaz-Gonzalez
772e4286f2 fix: variable reference 2021-07-31 22:44:05 -04:00
Jose Diaz-Gonzalez
b9e30e7e19 fix: remove redundant if check 2021-07-31 22:23:19 -04:00
Jose Diaz-Gonzalez
67317f88df fix: do not force fetching of the DOKKU_SCALE file 2021-07-31 20:54:14 -04:00
Jose Diaz-Gonzalez
c6d99722eb fix: correct stickler errors 2021-07-31 20:54:14 -04:00
Jose Diaz-Gonzalez
bd2aa1bd43 feat: migrate the DOKKU_SCALE property during pre-deploy to app.json 2021-07-31 20:54:14 -04:00
Jose Diaz-Gonzalez
6d9520e599 feat: add support for formation key in app.json file
Still needs triggers for ps-can-scale and ps-scale-set.

Refs #4500
2021-07-31 20:54:14 -04:00
Jose Diaz-Gonzalez
9d0bc930a6 fix: handle empty lines and comments in DOKKU_SCALE file 2021-07-31 20:54:14 -04:00
Jose Diaz-Gonzalez
f63c2d18a3 Merge pull request #4701 from dokku/4699-run-list
Revamp dokku run command
2021-07-27 14:42:56 -04:00
Jose Diaz-Gonzalez
1bdedf1e28 tests: fix for instant run container removal 2021-07-27 13:26:37 -04:00
Jose Diaz-Gonzalez
14b511d673 fix: correct lint error 2021-07-27 13:16:33 -04:00
Jose Diaz-Gonzalez
86a2b7d2e3 docs: clarify when the cli changes were made 2021-07-27 03:03:18 -04:00
Jose Diaz-Gonzalez
a91a0f8abb docs: application => app 2021-07-27 02:59:33 -04:00
Jose Diaz-Gonzalez
5a1a30efeb feat: add ability to list one-off dynos 2021-07-27 02:58:45 -04:00
Jose Diaz-Gonzalez
3d913d89f6 docs: add run:detached to documentation 2021-07-27 02:58:45 -04:00
Jose Diaz-Gonzalez
e0453dbc15 refactor: use cron as the dyno type for one-off commands when running cron tasks 2021-07-27 02:58:45 -04:00
Jose Diaz-Gonzalez
1c6f847c55 docs: update help output 2021-07-27 02:58:45 -04:00
Jose Diaz-Gonzalez
61d4b478ce feat: add --no-tty flag to run and run:detached commands 2021-07-27 02:58:45 -04:00
Jose Diaz-Gonzalez
350a84d253 refactor: deprecate the --detach flag in favor of run:detached 2021-07-27 02:58:44 -04:00
Jose Diaz-Gonzalez
618158a0f3 refactor: deprecate the --rm and --rm-container flags
These flags are not commonly invoked by users, causing issues when cleaning up old containers. Rather than instruct users to use some random flag, just change the default to what is likely to be more common.
2021-07-27 02:58:19 -04:00
Jose Diaz-Gonzalez
dbc3d82017 refactor: move run command to it's own plugin 2021-07-27 02:56:39 -04:00
Jose Diaz-Gonzalez
bd3f753d85 Merge pull request #4697 from dokku/josegonzalez-patch-1
Specify that run containers use the same image
2021-07-27 02:56:34 -04:00
Jose Diaz-Gonzalez
864562221d docs: specify that run containers use the same image 2021-07-24 13:41:03 -04:00
Jose Diaz-Gonzalez
52f2ce35f6 Merge pull request #4686 from dokku/4636-git-sync-bare
Ensure repository is bare when calling git:sync
2021-07-12 00:52:06 -04:00
Jose Diaz-Gonzalez
623aa737e0 fix: set correct variable for git repo root 2021-07-12 00:01:01 -04:00
Jose Diaz-Gonzalez
e8c3472581 Merge pull request #4684 from dokku/4659-add-gpg-agent
Install gpg-agent in bootstrap script
2021-07-11 22:31:12 -04:00
Jose Diaz-Gonzalez
730af2e552 Merge pull request #4687 from dokku/4649-apps-unlock-note
Output message explaining how to remove a deploy lock when a lock is encountered
2021-07-11 22:20:50 -04:00
Jose Diaz-Gonzalez
04ee7a7020 Merge pull request #4683 from dokku/4664-strip-port-publishing
Strip published port flags when triggering deploy tasks
2021-07-11 22:20:02 -04:00
Jose Diaz-Gonzalez
8612f1a926 Merge pull request #4688 from dokku/4633-network-recovery
Add a note on recovering networks
2021-07-11 22:19:21 -04:00
Jose Diaz-Gonzalez
69135ff37e Merge pull request #4689 from dokku/4257-wildcard-note
Add a note about wildcards in the installation doc page
2021-07-11 22:19:11 -04:00
Jose Diaz-Gonzalez
0edb027a53 docs: add a note about wildcards in the installation doc page
Closes #4257
2021-07-11 22:03:56 -04:00
Jose Diaz-Gonzalez
18b0c90d0e docs: add a note on recovering networks
Closes #4633
2021-07-11 21:45:14 -04:00
Jose Diaz-Gonzalez
26a3a8fd0a feat: output message explaining how to remove a deploy lock when a lock is encountered 2021-07-11 21:33:32 -04:00
Jose Diaz-Gonzalez
97b0aa3eb8 fix: ensure repository is bare when calling git:sync
Closes #4636
2021-07-11 21:26:14 -04:00
Jose Diaz-Gonzalez
745473322a Merge pull request #4685 from dokku/josegonzalez-patch-1
tests: Remove ci skip note in PULL_REQUEST_TEMPLATE.md
2021-07-11 21:00:13 -04:00
Jose Diaz-Gonzalez
0066de604e tests: delete PULL_REQUEST_TEMPLATE.md
Tests are no longer skippable.
2021-07-11 20:59:24 -04:00
Jose Diaz-Gonzalez
6797dc7df1 fix: install gpg-agent in bootstrap script
Closes #4659
2021-07-11 20:58:26 -04:00
Jose Diaz-Gonzalez
f9247a9c42 fix: strip published port flags when triggering deploy tasks
Closes #4664
2021-07-11 20:55:12 -04:00
Jose Diaz-Gonzalez
20f9fae613 Merge pull request #4682 from dokku/better-report-output
Properly space report output
2021-07-10 18:01:10 -04:00
Jose Diaz-Gonzalez
84b34b2221 feat: properly space report output 2021-07-10 17:57:01 -04:00
Jose Diaz-Gonzalez
69ec927fd7 Merge pull request #4502 from dokku/4501-monorepo-support
Add monorepo support
2021-07-10 17:07:23 -04:00
Jose Diaz-Gonzalez
19f9648b40 fix: correct shfmt and shellcheck warnings 2021-07-10 15:44:41 -04:00
Jose Diaz-Gonzalez
be6c4dc6df fix: correct shfmt and shellcheck warnings 2021-07-10 15:38:19 -04:00
Jose Diaz-Gonzalez
7292eaefc3 tests: add test for builder-pack:set projectoml-path 2021-07-10 15:32:59 -04:00
Jose Diaz-Gonzalez
84ca9ff7e5 fix: call correct function 2021-07-10 14:57:59 -04:00
Jose Diaz-Gonzalez
24905e74a5 chore: drop unused variable 2021-07-10 14:57:59 -04:00
Jose Diaz-Gonzalez
4022ebd31c refactor: allow missing project.toml
We should treat the project.toml as an optional file, as is the Procfile. Additionally, moving the file into place early will ensure there is no chance of selecting the wrong file.
2021-07-10 14:57:59 -04:00
Jose Diaz-Gonzalez
135e78c868 tests: add test for procfile-path 2021-07-10 14:57:59 -04:00
Jose Diaz-Gonzalez
a22391b7ad fix: copy the specified Procfile into place at the earliest possibility 2021-07-10 14:57:59 -04:00
Jose Diaz-Gonzalez
a4b024d6f9 tests: add a test for dockerfile-path 2021-07-10 14:57:58 -04:00
Jose Diaz-Gonzalez
d4016223d5 tests: add tests for build-dir 2021-07-10 14:57:58 -04:00
Jose Diaz-Gonzalez
2580ad305c tests: ensure app deploys successfully by default in appjson-path test 2021-07-10 14:57:58 -04:00
Jose Diaz-Gonzalez
377ca5ca22 fix: properly handle directory replacement
The previous version _also_ deleted the temp working dir, causing issues with subsequent directory access.
2021-07-10 14:57:58 -04:00
Jose Diaz-Gonzalez
fda75cbaa5 fix: gitignore correct file 2021-07-10 14:57:58 -04:00
Jose Diaz-Gonzalez
441d1c2676 tests: add test for non-existent file 2021-07-10 14:57:58 -04:00
Jose Diaz-Gonzalez
0ab135b034 tests: add test for app-json:set 2021-07-10 14:57:58 -04:00
Jose Diaz-Gonzalez
5901c57bde docs: fix style issues 2021-07-10 14:57:58 -04:00
Jose Diaz-Gonzalez
0bd6970b4b chore: update go.sum 2021-07-10 14:57:57 -04:00
Jose Diaz-Gonzalez
bdfb1ee549 fix: add entries to app-json gitignore 2021-07-10 14:57:57 -04:00
Jose Diaz-Gonzalez
f62373c3fa docs: add notes for what happens if the specified values do not exist 2021-07-10 14:57:57 -04:00
Jose Diaz-Gonzalez
79cd7e4cab feat: do not fail build when missing project.toml 2021-07-10 14:57:57 -04:00
Jose Diaz-Gonzalez
326031d289 fix: drop unnecessary report hook 2021-07-10 14:57:57 -04:00
Jose Diaz-Gonzalez
d68473bfc2 refactor: cleanup Dockerfile and project.toml lookups 2021-07-10 14:57:57 -04:00
Jose Diaz-Gonzalez
cb16e11cf5 fix: correct filename 2021-07-10 14:57:57 -04:00
Jose Diaz-Gonzalez
5c04328081 fix: correct filename 2021-07-10 14:57:57 -04:00
Jose Diaz-Gonzalez
913f709c39 fix: add missing trigger to builder plugin 2021-07-10 14:57:56 -04:00
Jose Diaz-Gonzalez
41f6480834 fix: add missing report trigger to app-json plugin 2021-07-10 14:57:56 -04:00
Jose Diaz-Gonzalez
ae6b0b07aa fix: add missing report trigger for builder-herokuish 2021-07-10 14:57:56 -04:00
Jose Diaz-Gonzalez
a6113f88e7 featfeat: add ability to specify a custom app.json path 2021-07-10 14:57:56 -04:00
Jose Diaz-Gonzalez
c3ece32145 feat: add ability to specify a custom Procfile path 2021-07-10 14:57:56 -04:00
Jose Diaz-Gonzalez
9082c51074 feat: add ability to specify a custom project.toml path 2021-07-10 14:57:56 -04:00
Jose Diaz-Gonzalez
da2b54823b feat: add ability to specify a custom Dockerfile for an app 2021-07-10 14:57:55 -04:00
Jose Diaz-Gonzalez
6d40d52d7d feat: add ability to specify a custom build directory for an app 2021-07-10 14:57:55 -04:00
Jose Diaz-Gonzalez
fbdb76e705 Merge pull request #4681 from dokku/ignore-duplication
Ignore duplication warnings in codacy
2021-07-10 14:57:23 -04:00
Jose Diaz-Gonzalez
847a405712 tests: ignore duplication warnings in codacy 2021-07-10 14:52:11 -04:00
Jose Diaz-Gonzalez
7cce5b1b79 Merge pull request #4680 from dokku/docs-cleanup
Cleanup markdown lint errors
2021-07-09 23:13:40 -04:00
Jose Diaz-Gonzalez
b75dc20a7d docs: more cleanup 2021-07-09 23:13:21 -04:00
Jose Diaz-Gonzalez
0c7562c6f8 Merge pull request #4679 from dokku/docs-cleanup
Cleanup markdown lint errors
2021-07-09 23:07:19 -04:00
Jose Diaz-Gonzalez
539f08f627 docs: more cleanup 2021-07-09 23:06:38 -04:00
Jose Diaz-Gonzalez
4448399e71 Merge pull request #4678 from dokku/docs-cleanup
Cleanup markdown lint errors
2021-07-09 22:48:18 -04:00
Jose Diaz-Gonzalez
c50f39b4fa docs: more cleanup 2021-07-09 22:46:52 -04:00
Jose Diaz-Gonzalez
4469b7428a Merge pull request #4677 from dokku/docs-cleanup
Cleanup markdown lint errors
2021-07-09 22:27:20 -04:00
Jose Diaz-Gonzalez
a108856a98 docs: more cleanup 2021-07-09 22:22:51 -04:00
Jose Diaz-Gonzalez
1b216841a8 docs: more cleanup 2021-07-09 22:16:52 -04:00
Jose Diaz-Gonzalez
db421c97dc docs: cleanup deployment-tasks.md and plugins.md 2021-07-09 22:16:52 -04:00
Jose Diaz-Gonzalez
93f1a8e59d Merge pull request #4509 from dokku/4477-initial-network
Add ability to specify initial network
2021-07-09 22:06:28 -04:00
Jose Diaz-Gonzalez
d72c3ac6bf Merge pull request #4671 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-195
chore(deps-dev): bump heroku/heroku-buildpack-php from 193 to 195 in /tests/apps/php
2021-07-09 21:20:07 -04:00
Jose Diaz-Gonzalez
a3d9db0e00 docs: clarify bridge network 2021-07-09 21:17:42 -04:00
Jose Diaz-Gonzalez
e8a4a4c89e tests: always delete the initial-network in tests 2021-07-09 21:14:18 -04:00
Jose Diaz-Gonzalez
50361505db chore: add deprecation notice 2021-07-09 21:14:06 -04:00
Jose Diaz-Gonzalez
267cc3fd54 fix: respect custom networks when computing the container ip
We also change the inspect format to support network names with non alphanumeric characters. See https://github.com/moby/moby/issues/35886 for details.
2021-07-09 21:13:57 -04:00
Jose Diaz-Gonzalez
a086302fc5 fix: actually create the network triggers 2021-07-09 21:12:43 -04:00
Jose Diaz-Gonzalez
bd894ceaaf docs: add note to migration guide 2021-07-09 20:30:09 -04:00
Jose Diaz-Gonzalez
3ed019d708 tests: add test for initial network 2021-07-09 20:30:09 -04:00
Jose Diaz-Gonzalez
012040d5c7 chore: drop unused function 2021-07-09 20:30:09 -04:00
Jose Diaz-Gonzalez
8d26d06f5e feat: allow all network properties to be globally set
Global settings are cool if managed in a standard way (ugh env vars) so we'll add them back for golang plugins as necessary.
2021-07-09 20:30:09 -04:00
Jose Diaz-Gonzalez
84907be0cd fix: gitignore binaries in common plugin 2021-07-09 20:30:09 -04:00
Jose Diaz-Gonzalez
21aef2eef1 chore: properly format go.mod files 2021-07-09 20:30:09 -04:00
Jose Diaz-Gonzalez
017037586c feat: add ability to specify the initial container network
Closes #4477
2021-07-09 20:30:09 -04:00
Jose Diaz-Gonzalez
1bb4e4920b Merge pull request #4672 from bjab/patch-1
Fix typo in pack builder docs
2021-07-09 19:57:08 -04:00
dependabot[bot]
1ff3b57f88 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 193 to 195.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v193...v195)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-09 23:56:35 +00:00
Jose Diaz-Gonzalez
d473352f7f Merge pull request #4668 from RealOrangeOne/patch-1
Make scripts a list
2021-07-09 19:56:27 -04:00
Jose Diaz-Gonzalez
bf0d7bc23a Merge pull request #4674 from dokku/dependabot/maven/tests/apps/java/org.eclipse.jetty-jetty-servlet-11.0.6
chore(deps): bump jetty-servlet from 11.0.5 to 11.0.6 in /tests/apps/java
2021-07-09 19:55:38 -04:00
Jose Diaz-Gonzalez
7fe94596cd Merge pull request #4673 from eltociear/patch-1
Fix comment typo in dokku binary
2021-07-09 19:55:28 -04:00
dependabot[bot]
6135b762af chore(deps): bump jetty-servlet in /tests/apps/java
Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.5 to 11.0.6.
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.5...jetty-11.0.6)

---
updated-dependencies:
- dependency-name: org.eclipse.jetty:jetty-servlet
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-07 13:09:37 +00:00
Ikko Ashimine
cd35f7e545 refactor: fix typo in dokku
arugments -> arguments
2021-07-05 20:59:15 +09:00
bjab
acfdbd5d4d Update pack duilder docs
pack plugin searches for `project.toml` (without dot)
2021-07-04 16:31:36 +02:00
Jake Howard
37a048d201 Make scripts a list
Without this, the config is invalid.

Technically this is only necessary for `after_script`, but changed both for consistency.
2021-06-26 22:07:15 +01:00
Jose Diaz-Gonzalez
506ebc3f23 Merge pull request #4652 from dokku/dependabot/maven/tests/apps/java/org.eclipse.jetty-jetty-servlet-11.0.5
chore(deps): bump jetty-servlet from 11.0.4 to 11.0.5 in /tests/apps/java
2021-06-24 23:02:06 -04:00
Jose Diaz-Gonzalez
6c20d29e55 Merge pull request #4653 from dokku/dependabot/maven/tests/apps/java/org.apache.maven.plugins-maven-dependency-plugin-3.2.0
chore(deps): bump maven-dependency-plugin from 3.1.2 to 3.2.0 in /tests/apps/java
2021-06-24 23:00:53 -04:00
Jose Diaz-Gonzalez
88244b2918 Merge pull request #4661 from dy3l/fix-case-style
Fix case style
2021-06-24 17:57:06 -04:00
dy3l
30dac07817 Fix case style 2021-06-24 22:42:02 +01:00
dependabot[bot]
40e50c9a2f chore(deps): bump maven-dependency-plugin in /tests/apps/java
Bumps [maven-dependency-plugin](https://github.com/apache/maven-dependency-plugin) from 3.1.2 to 3.2.0.
- [Release notes](https://github.com/apache/maven-dependency-plugin/releases)
- [Commits](https://github.com/apache/maven-dependency-plugin/compare/maven-dependency-plugin-3.1.2...maven-dependency-plugin-3.2.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-dependency-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-14 08:02:23 +00:00
dependabot[bot]
5894c334b9 chore(deps): bump jetty-servlet in /tests/apps/java
Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.4 to 11.0.5.
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.4...jetty-11.0.5)

---
updated-dependencies:
- dependency-name: org.eclipse.jetty:jetty-servlet
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-14 08:02:20 +00:00
Jose Diaz-Gonzalez
9c05854928 Merge pull request #4651 from dokku/josegonzalez-patch-1
fix: do not attempt to retire when there was no pre-existing container
2021-06-13 16:29:37 -04:00
Jose Diaz-Gonzalez
d666d67877 fix: do not attempt to retire when there was no pre-existing container 2021-06-12 13:55:35 -04:00
Jose Diaz-Gonzalez
c09444ae39 Merge pull request #4648 from dokku/dependabot/pip/tests/apps/dockerfile-release/django-3.1.12
chore(deps): bump django from 3.1.9 to 3.1.12 in /tests/apps/dockerfile-release
2021-06-10 20:21:34 -04:00
Jose Diaz-Gonzalez
2f10d04452 Merge pull request #4647 from AngCosmin/patch-1
GitHub Actions: Fixed unable to find version `v1`
2021-06-10 20:21:02 -04:00
dependabot[bot]
1caa12a526 chore(deps): bump django in /tests/apps/dockerfile-release
Bumps [django](https://github.com/django/django) from 3.1.9 to 3.1.12.
- [Release notes](https://github.com/django/django/releases)
- [Commits](https://github.com/django/django/compare/3.1.9...3.1.12)

---
updated-dependencies:
- dependency-name: django
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-10 20:11:45 +00:00
Cosmin Anghel
1d7354f8a3 Fixed unable to find version v1
Unable to resolve action `dokku/github-action@v1`, unable to find version `v1`
2021-06-10 13:59:41 +03:00
Jose Diaz-Gonzalez
8f56787bf1 Merge pull request #4507 from dokku/4505-drop-xenial
Drop support for Ubuntu 16.04
2021-06-09 14:22:05 -04:00
Jose Diaz-Gonzalez
01f90374b7 Merge pull request #4645 from dokku/dependabot/maven/tests/apps/java/org.eclipse.jetty-jetty-servlet-11.0.4
chore(deps): bump jetty-servlet from 11.0.3 to 11.0.4 in /tests/apps/java
2021-06-09 14:21:26 -04:00
Jose Diaz-Gonzalez
b34ec89871 Merge pull request #4644 from dokku/josegonzalez-patch-1
Update unit test publisher to latest
2021-06-09 14:21:06 -04:00
dependabot[bot]
c345882a2a chore(deps): bump jetty-servlet in /tests/apps/java
Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.3 to 11.0.4.
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.3...jetty-11.0.4)

---
updated-dependencies:
- dependency-name: org.eclipse.jetty:jetty-servlet
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-09 06:28:16 +00:00
Jose Diaz-Gonzalez
b16e5516bf fix: properly quote traps with variables 2021-06-09 01:17:48 -04:00
Jose Diaz-Gonzalez
5fdae7dc1e tests: fix sorting of output 2021-06-09 00:46:36 -04:00
Jose Diaz-Gonzalez
2757f4157e debug: check the trace output to see what is leaving a lock 2021-06-08 23:02:58 -04:00
Jose Diaz-Gonzalez
ae8a12a4b4 tests: fix sorting of output 2021-06-08 23:02:42 -04:00
Jose Diaz-Gonzalez
a585b07522 fix: properly fetch the internal ip on ubuntu 18.04 2021-06-08 20:36:28 -04:00
Jose Diaz-Gonzalez
3b655fb6a1 debug: check network 2021-06-08 20:36:28 -04:00
Jose Diaz-Gonzalez
62ef52a4cd debug: enable set -x 2021-06-08 20:36:28 -04:00
Jose Diaz-Gonzalez
135c7d4b2c chore: drop support for Ubuntu 16.04
As of April 2021, it will no longer be an LTS release, and thus us supporting it will increase maintenance burdens.

Also switch CI to use 18.04, so as to test what we currently support.

Closes #4505
2021-06-08 20:36:26 -04:00
Jose Diaz-Gonzalez
88606e272f chore: update unit test publisher to latest
By using v1, github actions will resolve to the latest v1.x release.
2021-06-08 20:34:51 -04:00
Jose Diaz-Gonzalez
b00061fa0f Merge pull request #4642 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-193
chore(deps-dev): bump heroku/heroku-buildpack-php from 192 to 193 in /tests/apps/php
2021-06-08 13:17:37 -04:00
dependabot[bot]
9562a75351 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 192 to 193.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v192...v193)

---
updated-dependencies:
- dependency-name: heroku/heroku-buildpack-php
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-08 06:35:36 +00:00
Jose Diaz-Gonzalez
d633f4be06 Merge pull request #4641 from dbazile/master
Add initial support for installing onto Fedora
2021-06-07 13:00:17 -04:00
David Bazile
2577233ff0 Add nascent support for Fedora 2021-06-07 10:18:32 -04:00
Jose Diaz-Gonzalez
a15797ce6c Merge pull request #4639 from dokku/josegonzalez-patch-1
Correct path for azure-vm releases
2021-06-06 20:34:57 -04:00
Jose Diaz-Gonzalez
c7700e8cc2 fix: correct path for azure-vm releases
[ci skip]
2021-06-06 20:34:42 -04:00
Dokku Bot
248577d4f4 Release 0.24.10
# History

## 0.24.10

Install/update via the bootstrap script:

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

### Bug Fixes

- #4638: @josegonzalez Schedule a retire as early as possible

### Documentation

- #4635: @hiepxanh Add buildkit cache example to Dockerfile docs
- #4632: @scflode Fix typo in docs for GitHub Actions

### Other

- #4637: @dependabot[bot] chore(deps): bump django from 3.1.8 to 3.1.9 in /tests/apps/dockerfile-release
2021-06-07 00:25:18 +00:00
Jose Diaz-Gonzalez
46746babd5 Merge pull request #4635 from hiepxanh/patch-1
Add buildkit cache example to Dockerfile docs
2021-06-06 17:50:23 -04:00
Jose Diaz-Gonzalez
0759c055d3 chore: reword buildkit cache docs 2021-06-06 17:49:40 -04:00
Jose Diaz-Gonzalez
06eb9e5b02 Merge pull request #4638 from dokku/4576-always-schedule-retire
Schedule a retire as early as possible
2021-06-06 17:45:43 -04:00
Jose Diaz-Gonzalez
bf7d6f40ce refactor: schedule a retire as early as possible
Rather than wait for all containers to come up successfully, immediately schedule a retirement of the old container. We'll still perform a disown'd removal after a successful deploy, but we _also_ schedule a retirement when:

- the new container is run successfully, before we update the container id file
- the new container fails and we run the kill_new command (the schedule is there to ensure removal if the container removal commands fail)

Closes #4576
2021-06-06 17:04:49 -04:00
Jose Diaz-Gonzalez
49c18e94e8 Merge pull request #4637 from dokku/dependabot/pip/tests/apps/dockerfile-release/django-3.1.9
chore(deps): bump django from 3.1.8 to 3.1.9 in /tests/apps/dockerfile-release
2021-06-06 16:16:37 -04:00
Jose Diaz-Gonzalez
efa34d4bcf Merge pull request #4632 from scflode/patch-1
Fix typo in docs for GitHub Actions
2021-06-05 18:30:31 -04:00
dependabot[bot]
8f2c1ea389 chore(deps): bump django in /tests/apps/dockerfile-release
Bumps [django](https://github.com/django/django) from 3.1.8 to 3.1.9.
- [Release notes](https://github.com/django/django/releases)
- [Commits](https://github.com/django/django/compare/3.1.8...3.1.9)

---
updated-dependencies:
- dependency-name: django
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-04 23:59:02 +00:00
hiepxanh
c1df31b106 docs: dockerfiles buildkit add cache directory ex 2021-06-04 15:21:35 +07:00
hiepxanh
b3d0dfb704 docs: dockerfiles buildkit add cache directory ex
Add example how to cache directory on dockerfile
2021-06-04 15:14:04 +07:00
Flo Schuessel
28a132ba33 Fix typo in docs
The PR fixes a small typo in the docs
2021-06-02 11:25:33 +02:00
Dokku Bot
29d2113f64 Release 0.24.9
# History

## 0.24.9

Install/update via the bootstrap script:

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

### Bug Fixes

- #4617: @josegonzalez Actually use the null buildpack for the sample python app
- #4616: @josegonzalez Update azure-vm file paths to handled azure renames

### New Features

- #4629: @josegonzalez Upgrade dokku docker image to latest bionic release

### Documentation

- #4622: @allanitis Update nginx logging configuration example to better support AWS Cloudwatch

### Other

- #4627: @Tarow Respect custom stack when using cloud native builder
- #4619: @dependabot[bot] chore(deps): bump flask from 2.0.0 to 2.0.1 in /tests/apps/python-flask
- #4628: @dependabot[bot] chore(deps): bump monolog/monolog from 1.26.0 to 1.26.1 in /tests/apps/php
- #4618: @dependabot[bot] chore(deps): bump jetty-servlet from 11.0.2 to 11.0.3 in /tests/apps/java
2021-05-31 23:52:25 +00:00
Jose Diaz-Gonzalez
6d505fc75a Merge pull request #4629 from dokku/4625-upgrade-base
Upgrade dokku docker image to latest bionic release
2021-05-31 16:52:44 -04:00
Jose Diaz-Gonzalez
8d016faf90 Merge pull request #4617 from dokku/actual-null
Actually use the null buildpack for the sample python app
2021-05-31 16:36:52 -04:00
Jose Diaz-Gonzalez
f099681e3d feat: upgrade dokku docker image to latest bionic release
Refs #4625
2021-05-31 16:05:35 -04:00
Jose Diaz-Gonzalez
634c8b48d1 fix: ensure the python app has a requirements.txt file
Without this, detection will fail on the heroku/python buildpack.
2021-05-31 16:02:09 -04:00
Jose Diaz-Gonzalez
244651dcba fix: actually use the null buildpack for the sample python app 2021-05-31 16:00:28 -04:00
Jose Diaz-Gonzalez
edb5d067b8 Merge pull request #4627 from Tarow/custom-cnb-stack
Respect custom stack when using cloud native builder
2021-05-31 15:53:51 -04:00
Jose Diaz-Gonzalez
3687c1800e Merge pull request #4619 from dokku/dependabot/pip/tests/apps/python-flask/flask-2.0.1
chore(deps): bump flask from 2.0.0 to 2.0.1 in /tests/apps/python-flask
2021-05-31 15:53:09 -04:00
Jose Diaz-Gonzalez
33d6133f49 Merge pull request #4628 from dokku/dependabot/composer/tests/apps/php/monolog/monolog-1.26.1
chore(deps): bump monolog/monolog from 1.26.0 to 1.26.1 in /tests/apps/php
2021-05-31 15:52:59 -04:00
dependabot[bot]
8ac63b9f65 chore(deps): bump monolog/monolog in /tests/apps/php
Bumps [monolog/monolog](https://github.com/Seldaek/monolog) from 1.26.0 to 1.26.1.
- [Release notes](https://github.com/Seldaek/monolog/releases)
- [Changelog](https://github.com/Seldaek/monolog/blob/main/CHANGELOG.md)
- [Commits](https://github.com/Seldaek/monolog/compare/1.26.0...1.26.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-31 07:50:59 +00:00
Jose Diaz-Gonzalez
8bbeb90f6f docs: use correct variable name 2021-05-30 15:32:54 -04:00
Jose Diaz-Gonzalez
c969a1a742 fix: use correct variable 2021-05-30 15:31:19 -04:00
Jose Diaz-Gonzalez
3d745b7c12 chore: use one fewer variable 2021-05-30 15:30:02 -04:00
Niklas Tasler
e38905765b respect custom stack when using cloud native builder 2021-05-30 17:54:39 +02:00
Jose Diaz-Gonzalez
765bc82028 Merge pull request #4622 from allanitis/patch-1
Fix typo in nginx logging configuration example
2021-05-27 02:20:03 -04:00
Matt Allan
c5d329db70 Fix typo: Remove extra space in nginx logging config example 2021-05-27 16:11:00 +10:00
Jose Diaz-Gonzalez
6e0dec7aa2 Merge pull request #4618 from dokku/dependabot/maven/tests/apps/java/org.eclipse.jetty-jetty-servlet-11.0.3
chore(deps): bump jetty-servlet from 11.0.2 to 11.0.3 in /tests/apps/java
2021-05-24 23:49:04 -04:00
dependabot[bot]
f6bc8c7f5b chore(deps): bump flask from 2.0.0 to 2.0.1 in /tests/apps/python-flask
Bumps [flask](https://github.com/pallets/flask) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.0.0...2.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-24 07:47:00 +00:00
dependabot[bot]
5214a3518c chore(deps): bump jetty-servlet in /tests/apps/java
Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.2 to 11.0.3.
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.2...jetty-11.0.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-24 07:46:35 +00:00
Jose Diaz-Gonzalez
8b836a4743 Merge pull request #4616 from dokku/josegonzalez-patch-1
Update azure-vm file paths to handled azure renames
2021-05-23 19:51:57 -04:00
Jose Diaz-Gonzalez
de3167c146 Update azure-vm file paths to handled azure renames 2021-05-23 19:51:42 -04:00
Dokku Bot
c6404f813d Release 0.24.8
# History

## 0.24.8

Install/update via the bootstrap script:

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

### Bug Fixes

- #4615: @josegonzalez Remove empty plugin directories during upgrade
- #4613: @josegonzalez Correct failing repo test
- #4612: @josegonzalez fix: always retire deployment task containers

### Documentation

- #4607: @serixscorpio Update link to dokku on Azure deployment page
- #4583: @josegonzalez Set correct redirect for installation

### Other

- #4610: @dependabot[bot] chore(deps): bump jinja2 from 2.11.3 to 3.0.1 in /tests/apps/python-flask
- #4614: @dependabot[bot] chore(deps): bump flask from 2.0.0 to 2.0.1 in /tests/apps/multi
- #4611: @dependabot[bot] chore(deps): bump thin from 1.8.0 to 1.8.1 in /tests/apps/ruby
- #4609: @dependabot[bot] chore(deps): bump socket.io from 4.0.2 to 4.1.2 in /tests/apps/.websocket.disabled
- #4608: @dependabot[bot] chore(deps): bump werkzeug from 1.0.1 to 2.0.1 in /tests/apps/python-flask
- #4600: @dependabot[bot] chore(deps): bump flask from 1.1.2 to 2.0.0 in /tests/apps/multi
- #4598: @dependabot[bot] chore(deps): bump flask from 1.1.2 to 2.0.0 in /tests/apps/python-flask
- #4592: @dependabot[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 191 to 192 in /tests/apps/php
- #4581: @dependabot-preview[bot] Upgrade to GitHub-native Dependabot
2021-05-23 23:34:19 +00:00
Jose Diaz-Gonzalez
8d0977f015 Merge pull request #4615 from dokku/4593-remove-empty-plugins
Remove empty plugin directories during upgrade
2021-05-23 18:26:52 -04:00
Jose Diaz-Gonzalez
f9deab94f9 fix: remove empty plugin directories during upgrade
Closes #4593
2021-05-23 17:37:08 -04:00
Jose Diaz-Gonzalez
a54b49362d Merge pull request #4610 from dokku/dependabot/pip/tests/apps/python-flask/jinja2-3.0.1
chore(deps): bump jinja2 from 2.11.3 to 3.0.1 in /tests/apps/python-flask
2021-05-22 22:40:48 -04:00
dependabot[bot]
360c10d90e chore(deps): bump jinja2 in /tests/apps/python-flask
Bumps [jinja2](https://github.com/pallets/jinja) from 2.11.3 to 3.0.1.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/2.11.3...3.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-23 02:40:40 +00:00
Jose Diaz-Gonzalez
9201860aa8 Merge pull request #4614 from dokku/dependabot/pip/tests/apps/multi/flask-2.0.1
chore(deps): bump flask from 2.0.0 to 2.0.1 in /tests/apps/multi
2021-05-22 22:40:32 -04:00
dependabot[bot]
3a5942b75d chore(deps): bump flask from 2.0.0 to 2.0.1 in /tests/apps/multi
Bumps [flask](https://github.com/pallets/flask) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/2.0.0...2.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-23 02:40:27 +00:00
Jose Diaz-Gonzalez
5bf4c41c1d Merge pull request #4611 from dokku/dependabot/bundler/tests/apps/ruby/thin-1.8.1
chore(deps): bump thin from 1.8.0 to 1.8.1 in /tests/apps/ruby
2021-05-22 22:40:18 -04:00
Jose Diaz-Gonzalez
0f1682a9b7 Merge pull request #4609 from dokku/dependabot/npm_and_yarn/tests/apps/dot-websocket.disabled/socket.io-4.1.2
chore(deps): bump socket.io from 4.0.2 to 4.1.2 in /tests/apps/.websocket.disabled
2021-05-22 22:39:59 -04:00
Jose Diaz-Gonzalez
1222ff9c92 Merge pull request #4608 from dokku/dependabot/pip/tests/apps/python-flask/werkzeug-2.0.1
chore(deps): bump werkzeug from 1.0.1 to 2.0.1 in /tests/apps/python-flask
2021-05-22 22:39:43 -04:00
dependabot[bot]
410c3dd103 chore(deps): bump socket.io in /tests/apps/.websocket.disabled
Bumps [socket.io](https://github.com/socketio/socket.io) from 4.0.2 to 4.1.2.
- [Release notes](https://github.com/socketio/socket.io/releases)
- [Changelog](https://github.com/socketio/socket.io/blob/master/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io/compare/4.0.2...4.1.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-22 23:58:04 +00:00
dependabot[bot]
3028dc4182 chore(deps): bump thin from 1.8.0 to 1.8.1 in /tests/apps/ruby
Bumps [thin](https://github.com/macournoyer/thin) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/macournoyer/thin/releases)
- [Changelog](https://github.com/macournoyer/thin/blob/master/CHANGELOG)
- [Commits](https://github.com/macournoyer/thin/compare/v1.8.0...v1.8.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-22 23:57:52 +00:00
dependabot[bot]
69e449788d chore(deps): bump werkzeug in /tests/apps/python-flask
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 1.0.1 to 2.0.1.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/werkzeug/compare/1.0.1...2.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-22 23:57:30 +00:00
Jose Diaz-Gonzalez
c3d23103e2 Merge pull request #4600 from dokku/dependabot/pip/tests/apps/multi/flask-2.0.0
chore(deps): bump flask from 1.1.2 to 2.0.0 in /tests/apps/multi
2021-05-22 19:57:06 -04:00
Jose Diaz-Gonzalez
e5d626574c Merge pull request #4598 from dokku/dependabot/pip/tests/apps/python-flask/flask-2.0.0
chore(deps): bump flask from 1.1.2 to 2.0.0 in /tests/apps/python-flask
2021-05-22 19:56:56 -04:00
Jose Diaz-Gonzalez
cce61f52ad Merge pull request #4592 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-192
chore(deps-dev): bump heroku/heroku-buildpack-php from 191 to 192 in /tests/apps/php
2021-05-22 19:56:46 -04:00
Jose Diaz-Gonzalez
bfe21844ea Merge pull request #4613 from dokku/fix-repo-test
Correct failing repo test
2021-05-22 19:56:26 -04:00
Jose Diaz-Gonzalez
0532cae666 fix: correct failing repo test
The previous version grepped for the number 0, which is now output in the repo cache line count. We should check for the exact value instead.
2021-05-22 19:28:06 -04:00
Jose Diaz-Gonzalez
a6b36ae62f Merge pull request #4612 from dokku/retire-task-containers
fix: always retire deployment task containers
2021-05-22 18:35:15 -04:00
Jose Diaz-Gonzalez
8766820974 fix: always retire deployment task containers
Without this, the normal cleanup routine would not remove the containers, and removal would require a manual call to 'dokku cleanup'.
2021-05-22 15:37:21 -04:00
Jose Diaz-Gonzalez
85b09e11cf Merge pull request #4607 from serixscorpio/patch-1
Update link to dokku on Azure deployment page [ci skip]
2021-05-16 23:13:06 -04:00
Eric Ti-Yu Chiang
5d1d466edb Update link to dokku on Azure deployment page
The old link is broken.
2021-05-16 23:06:27 -04:00
dependabot[bot]
a9930fb167 chore(deps): bump flask from 1.1.2 to 2.0.0 in /tests/apps/multi
Bumps [flask](https://github.com/pallets/flask) from 1.1.2 to 2.0.0.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/1.1.2...2.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-12 06:19:02 +00:00
dependabot[bot]
b628b68aef chore(deps): bump flask from 1.1.2 to 2.0.0 in /tests/apps/python-flask
Bumps [flask](https://github.com/pallets/flask) from 1.1.2 to 2.0.0.
- [Release notes](https://github.com/pallets/flask/releases)
- [Changelog](https://github.com/pallets/flask/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/flask/compare/1.1.2...2.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-12 06:18:54 +00:00
dependabot[bot]
a1e7f19580 chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 191 to 192.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v191...v192)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-07 08:08:37 +00:00
Jose Diaz-Gonzalez
f4b4752e20 Merge pull request #4583 from dokku/josegonzalez-patch-1
Set correct redirect for installation
2021-05-01 18:00:36 -04:00
Jose Diaz-Gonzalez
b3d547db30 fix: set correct redirect for installation
[ci skip]
2021-05-01 17:59:39 -04:00
Jose Diaz-Gonzalez
23a54f58b0 Merge pull request #4581 from dokku/dependabot/add-v2-config-file
Upgrade to GitHub-native Dependabot
2021-04-28 12:49:38 -04:00
Jose Diaz-Gonzalez
e16ec3ab9d chore: fix formatting 2021-04-28 12:48:22 -04:00
dependabot-preview[bot]
9e8f6a36f5 Upgrade to GitHub-native Dependabot 2021-04-28 16:46:14 +00:00
Dokku Bot
496ea86840 Release 0.24.7
# History

## 0.24.7

Install/update via the bootstrap script:

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

### Bug Fixes

- #4574: @Cellane Fix alternate-tags content & escaping

### Other

- #4575: @Cellane Exclude additional ShellCheck tests
2021-04-22 05:58:42 +00:00
Jose Diaz-Gonzalez
b3854eb2c3 Merge pull request #4575 from Cellane/patch-2
Exclude additional ShellCheck tests
2021-04-22 01:57:29 -04:00
Milan Vit
2be6c8b86d Add explanation for exclusion 2021-04-22 14:25:23 +09:00
Milan Vit
3db6dbfcb3 Exclude additional ShellCheck tests 2021-04-22 14:22:12 +09:00
Jose Diaz-Gonzalez
dfd55d0eb0 Merge pull request #4574 from Cellane/patch-1
Fix alternate-tags content & escaping
2021-04-22 01:05:36 -04:00
Milan Vit
ca6ac610a2 Fix alternate-tags content & escaping 2021-04-22 13:23:33 +09:00
Dokku Bot
b943edcd24 Release 0.24.6
# History

## 0.24.6

Install/update via the bootstrap script:

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

### Bug Fixes

- #4493: @Cellane Ensure alternate-tags is properly injected for git:from-image deploys
- #4563: @Akirtovskis Tough netrc file when setting git:auth entries
- #4566: @jasiek Normalize Dockerfile line terminators to handle issues in port extraction
- #4567: @josegonzalez Ensure plugin:update updates all plugins when no plugin is specified
- #4568: @josegonzalez Do not insert log max-size when log-driver is set at daemon-level
- #4554: @josegonzalez Ensure deployment task containers get associated to internal networks

### New Features

- #4557: @josegonzalez Add bash-completion to debian package recommends
- #4484: @lunswor Bumps vector image version to 0.12.x

### Other

- #4569: @dependabot-preview[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 190 to 191 in /tests/apps/php
2021-04-17 01:53:29 +00:00
Jose Diaz-Gonzalez
03ff6e9824 add verbose debugging to formula releasing 2021-04-16 14:45:54 -04:00
Jose Diaz-Gonzalez
7847c8b99c Merge pull request #4493 from Cellane/add-failing-test-for-image-labeling
Ensure alternate-tags is properly injected for git:from-image deploys
2021-04-16 14:37:55 -04:00
Jose Diaz-Gonzalez
8660d58eb0 fix: inject alternate label when building from an image
This label is otherwise missing, causing tooling that might want to know about it's pre-existing labels - specifically, docker-image-labeler - to fail to run as expected.
2021-04-16 12:28:56 -04:00
Jose Diaz-Gonzalez
9de027167d tests: make test a bit clearer 2021-04-16 12:28:56 -04:00
Milan Vit
65095fa4f7 💚 Alter tests further 2021-04-16 12:28:56 -04:00
Milan Vit
f07f489ef6 💚 Break test by fixing it 2021-04-16 12:28:56 -04:00
Milan Vit
15f4e94b4f ✅ Add (hopefully) failing test for image labeling 2021-04-16 12:28:56 -04:00
Jose Diaz-Gonzalez
6d66590fd4 Merge pull request #4563 from Akirtovskis/add-and-remove-netrc-for-git-auth
Tough netrc file when setting git:auth entries
2021-04-16 12:28:20 -04:00
Jose Diaz-Gonzalez
cc1e9562b0 Merge pull request #4566 from jasiek/master
Normalize Dockerfile line terminators to handle issues in port extraction
2021-04-16 12:27:45 -04:00
Jose Diaz-Gonzalez
ecad66bf22 Merge pull request #4567 from dokku/4553-plugin-update
Ensure plugin:update updates all plugins when no plugin is specified
2021-04-16 12:26:43 -04:00
Jose Diaz-Gonzalez
d8ae1bd06c Merge pull request #4568 from dokku/4519-respect-daemon-log-settings
Do not insert log max-size when log-driver is set at daemon-level
2021-04-16 12:26:34 -04:00
Jose Diaz-Gonzalez
1679024926 Merge pull request #4569 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-191
chore(deps-dev): bump heroku/heroku-buildpack-php from 190 to 191 in /tests/apps/php
2021-04-16 12:26:22 -04:00
dependabot-preview[bot]
690233c02b chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 190 to 191.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v190...v191)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-04-16 06:26:56 +00:00
Jose Diaz-Gonzalez
4cccaebac5 fix: do not insert log max-size when log-driver is set at daemon-level
Closes #4519
2021-04-16 01:54:44 -04:00
Jose Diaz-Gonzalez
42e9164050 fix: ensure plugin:update updates all plugins when no plugin is specified
Closes #4553
2021-04-16 01:00:53 -04:00
Jan Szumiec
4af837b987 Some Dockerfiles will have CRLF line terminators which will prevent us
from parsing EXPOSE directives.
2021-04-15 21:28:46 +02:00
Jan Szumiec
a23a7c4488 Fixed a linter warning. 2021-04-15 07:05:00 +02:00
arturs
46c4a93468 chore(plugins): remove unnecessary command 2021-04-14 22:00:28 +03:00
arturs
84daf1ae52 fix(plugins): add touch netrc and remove netrc in git auth fn 2021-04-14 21:41:33 +03:00
Jose Diaz-Gonzalez
be01d2f7ec Merge pull request #4557 from dokku/4538-bash-completion
Add bash-completion to debian package recommends
2021-04-14 06:11:41 -04:00
Jose Diaz-Gonzalez
9273e634ce Merge pull request #4484 from lunswor/bump-vector-image
Bumps vector image version
2021-04-14 05:43:42 -04:00
Jose Diaz-Gonzalez
dd9d5d67a1 feat: add bash-completion to debian package recommends
We're skipping adding this to the yum package as we're going to start phasing out support for non-debian hosts in favor of installing via the Docker image.

Closes #4538
2021-04-14 05:40:54 -04:00
Jose Diaz-Gonzalez
f5dda60e5b Merge pull request #4554 from dokku/josegonzalez-patch-1
Ensure deployment task containers get associated to internal networks
2021-04-14 05:35:13 -04:00
Jose Diaz-Gonzalez
578f6e7ba5 fix: ensure deployment task containers get associated to internal networks
Closes #4543
2021-04-13 19:47:45 -04:00
Dokku Bot
22464734da Release 0.24.5
# History

## 0.24.5

Install/update via the bootstrap script:

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

### Bug Fixes

- #4552: @josegonzalez Scope return 301 in nginx config to allow proper letsencrypt usage

### Documentation

- #4546: @benwinding Add bad proxy ports to troubleshooting doc

### Other

- #4547: @dependabot[bot] chore(deps): bump django from 3.1.6 to 3.1.8 in /tests/apps/dockerfile-release
2021-04-13 20:34:17 +00:00
Jose Diaz-Gonzalez
ee1f7fb6b9 Merge pull request #4546 from benwinding/master
Add bad proxy ports to troubleshooting doc
2021-04-13 14:46:35 -04:00
Jose Diaz-Gonzalez
fc3cdd06af Merge pull request #4547 from dokku/dependabot/pip/tests/apps/dockerfile-release/django-3.1.8
chore(deps): bump django from 3.1.6 to 3.1.8 in /tests/apps/dockerfile-release
2021-04-13 14:42:40 -04:00
Jose Diaz-Gonzalez
1668e4bc57 Merge pull request #4552 from dokku/letsencrypt-ssl-fixes
Scope return 301 in nginx config to allow proper letsencrypt usage
2021-04-13 14:38:33 -04:00
Jose Diaz-Gonzalez
f4a0dca15b fix: scope return 301 in nginx config to allow proper letsencrypt usage 2021-04-13 13:26:49 -04:00
Jose Diaz-Gonzalez
45417753a2 fix: correct description 2021-04-13 13:26:23 -04:00
Jose Diaz-Gonzalez
0967dc2130 fix: update deprecation warnings 2021-04-13 13:26:14 -04:00
dependabot[bot]
d48936eb79 chore(deps): bump django in /tests/apps/dockerfile-release
Bumps [django](https://github.com/django/django) from 3.1.6 to 3.1.8.
- [Release notes](https://github.com/django/django/releases)
- [Commits](https://github.com/django/django/compare/3.1.6...3.1.8)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-08 19:51:15 +00:00
Ben Winding
f5ff9f0997 Update troubleshooting.md 2021-04-05 23:39:31 +09:30
Dokku Bot
56324bc71e Release 0.24.4
# 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
2021-04-02 18:18:27 +00:00
Jose Diaz-Gonzalez
c5c3b3928e Merge pull request #4526 from dokku/4515-docker-options-parsing
Do not cut off builder arguments that have a 'v-' substring
2021-03-30 22:53:39 -04:00
Jose Diaz-Gonzalez
7f38a80bb8 Merge pull request #4540 from dokku/dependabot/go_modules/tests/apps/gogrpc/github.com/golang/protobuf-1.5.2
chore(deps): bump github.com/golang/protobuf from 1.5.1 to 1.5.2 in /tests/apps/gogrpc
2021-03-30 22:53:15 -04:00
Jose Diaz-Gonzalez
ed9f1c6d6f Merge pull request #4535 from dokku/dependabot/pip/tests/apps/multi/gunicorn-20.1.0
chore(deps): bump gunicorn from 20.0.4 to 20.1.0 in /tests/apps/multi
2021-03-30 22:53:04 -04:00
Jose Diaz-Gonzalez
f7f4446755 Merge pull request #4536 from dokku/dependabot/maven/tests/apps/java/org.eclipse.jetty-jetty-servlet-11.0.2
chore(deps): bump jetty-servlet from 11.0.1 to 11.0.2 in /tests/apps/java
2021-03-30 22:52:50 -04:00
Jose Diaz-Gonzalez
e183b95195 Merge pull request #4537 from dokku/dependabot/pip/tests/apps/python-flask/gunicorn-20.1.0
chore(deps): bump gunicorn from 20.0.4 to 20.1.0 in /tests/apps/python-flask
2021-03-30 22:52:44 -04:00
dependabot-preview[bot]
2bd289fa79 chore(deps): bump github.com/golang/protobuf in /tests/apps/gogrpc
Bumps [github.com/golang/protobuf](https://github.com/golang/protobuf) from 1.5.1 to 1.5.2.
- [Release notes](https://github.com/golang/protobuf/releases)
- [Commits](https://github.com/golang/protobuf/compare/v1.5.1...v1.5.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-30 05:54:33 +00:00
dependabot-preview[bot]
298bb3b3be chore(deps): bump gunicorn in /tests/apps/python-flask
Bumps [gunicorn](https://github.com/benoitc/gunicorn) from 20.0.4 to 20.1.0.
- [Release notes](https://github.com/benoitc/gunicorn/releases)
- [Commits](https://github.com/benoitc/gunicorn/compare/20.0.4...20.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-29 06:13:10 +00:00
dependabot-preview[bot]
de2f3af3df chore(deps): bump jetty-servlet in /tests/apps/java
Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.1 to 11.0.2.
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.1...jetty-11.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-29 06:12:57 +00:00
dependabot-preview[bot]
11505e0473 chore(deps): bump gunicorn from 20.0.4 to 20.1.0 in /tests/apps/multi
Bumps [gunicorn](https://github.com/benoitc/gunicorn) from 20.0.4 to 20.1.0.
- [Release notes](https://github.com/benoitc/gunicorn/releases)
- [Commits](https://github.com/benoitc/gunicorn/compare/20.0.4...20.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-29 06:05:42 +00:00
Jose Diaz-Gonzalez
dfe4fde66e Merge pull request #4531 from elamje/patch-1
Update config command to config:show
2021-03-28 01:39:49 -04:00
John
d849a20325 Update config command to config:show
Dokku now gives `config` deprecation message, and suggests to use `config:show`
2021-03-27 23:36:52 -06:00
Jose Diaz-Gonzalez
a6aec6d6a0 Merge pull request #4528 from grantjenks/patch-1
Fix typo in persistent storage docs
2021-03-28 01:36:37 -04:00
Jose Diaz-Gonzalez
fd7029fe34 Merge pull request #4525 from dokku/4520-from-error
Update error for git:from- commands when the artifact is already synced
2021-03-28 01:36:12 -04:00
Jose Diaz-Gonzalez
e67a4024a2 Merge pull request #4530 from Tobbe/patch-1
deployment docs: fix letsencrypt plugin name
2021-03-28 01:35:59 -04:00
Tobbe Lundberg
d7617f296b deployment docs: fix letsencrypt plugin name 2021-03-27 09:50:02 +01:00
Grant Jenks
4387ae2bb3 Fix typo: "diretory" to "directory"
Fix typo: "diretory" to "directory"
2021-03-25 22:20:47 -07:00
Jose Diaz-Gonzalez
2551c361eb Merge pull request #4527 from Cellane/remove-dokku-update
Remove all traces of dokku-update
2021-03-25 22:29:39 -04:00
Milan Vit
78e430221f 🔥 Remove all traces of dokku-update 2021-03-26 11:27:31 +09:00
Jose Diaz-Gonzalez
ae42f6d9f4 Merge pull request #4524 from dokku/4522-amp-amp-deploy-tasks
Allow skipping entrypoint detection if entrypoint is tini
2021-03-25 21:39:09 -04:00
Jose Diaz-Gonzalez
3880122ef7 Merge pull request #4523 from dokku/ignore-pipefail-sh
Ignore set pipefail errors when DOKKU_SHELL is set to sh
2021-03-25 21:39:02 -04:00
Jose Diaz-Gonzalez
5a0823baed fix: do not cut off builder arguments that have a 'v-' substring
Closes #4515
2021-03-25 21:38:11 -04:00
Jose Diaz-Gonzalez
8083ff6584 feat: update error for git:from- commands when the artifact is already synced
Closes #4520
2021-03-25 20:38:38 -04:00
Jose Diaz-Gonzalez
1599afa74f docs: add docs for git-from-directory trigger 2021-03-25 20:37:37 -04:00
Jose Diaz-Gonzalez
356ed6f9eb feat: modify the deployment task if the detected entrypoint is tini
Closes #4522
2021-03-25 20:17:16 -04:00
Jose Diaz-Gonzalez
38910c7c48 tests: split app-json tests into two files
This should decrease the test matrix runtime.
2021-03-25 20:13:30 -04:00
Jose Diaz-Gonzalez
97aa934343 feat: do not reinstall pack during bats tests 2021-03-25 20:12:39 -04:00
Jose Diaz-Gonzalez
376d7bdac6 fix: ignore set pipefail errors when DOKKU_SHELL is set to sh 2021-03-25 20:10:41 -04:00
Jose Diaz-Gonzalez
f3934a1732 Merge pull request #4516 from dokku/199-handle-letsencrypt
Properly handle letsencrypt certs in certs:report output
2021-03-24 05:34:57 -04:00
Jose Diaz-Gonzalez
efbbded715 fix: properly handle letsencrypt certs in certs:report output
Closes dokku/dokku-letsencrypt#199
2021-03-23 16:43:07 -04:00
Jose Diaz-Gonzalez
d49aee6dd7 Merge pull request #4517 from illgitthat/patch-1
Update README with correct link to docs
2021-03-23 14:20:12 -04:00
illgitthat
38497482b5 Update README with correct link to docs
Changed https://dokku.com/docs/ to → https://dokku.com/docs/getting-started/installation/

The current link https://dokku.com/docs/ just seems to load dokku.com but with some broken image urls
Example: img tag links to `https://dokku.com/docs/assets/docker.png` instead of `https://dokku.com/assets/docker.png`
2021-03-23 14:04:41 -04:00
Jose Diaz-Gonzalez
75c049d7ea Merge pull request #4510 from dokku/4452-reformat-existing-buildpacks-file
Reformat existing buildpacks files
2021-03-23 13:56:48 -04:00
Jose Diaz-Gonzalez
2904cc07e2 Merge pull request #4513 from dokku/4248-letsencypt-setup
Add a note on ssl and letsencrypt usage to the setup docs
2021-03-22 18:46:23 -04:00
Jose Diaz-Gonzalez
71e7e697ae docs: add a note on ssl and letsencrypt usage to the setup docs
Closes #4248
2021-03-22 18:45:54 -04:00
Jose Diaz-Gonzalez
89d2f9c5c9 Merge pull request #4511 from dokku/4305-docker-warnings
Document removal of nginx site-enabled files for first time installers
2021-03-22 18:39:53 -04:00
Jose Diaz-Gonzalez
7dd7ebbb94 docs: document removal of nginx site-enabled files for first time installers
Closes #4305
2021-03-22 17:32:38 -04:00
Jose Diaz-Gonzalez
6787b82ec0 fix: reformat existing buildpacks files
Previously, the shorthand was not properly supported. While this _should_ be the domain of the gliderlabs/herokuish repository, we do it here as a courtesy to Dokku users.

Additionally, support the heroku-community => heroku mapping.

Closes #4452
2021-03-22 16:46:18 -04:00
Jose Diaz-Gonzalez
3a048d515a Merge pull request #4506 from dokku/4478-log-format-setup
Add full example for custom nginx log format
2021-03-21 23:27:04 -04:00
Jose Diaz-Gonzalez
7316b1d14c docs: add full example for custom nginx log format
Closes #4478
2021-03-21 23:26:28 -04:00
Jose Diaz-Gonzalez
07b16a6f5f Merge pull request #4504 from dokku/4479-persistent-docs
Clarify permissions on persistent storage paths
2021-03-21 23:14:59 -04:00
Jose Diaz-Gonzalez
66acde1c66 docs: clarify permissions on persistent storage paths
CNB uses a custom user/group id depending on the image.

Also cleanup the entire doc to make it generally more readable with less repetition.

Closes #4479
2021-03-21 23:14:39 -04:00
Jose Diaz-Gonzalez
11ae74fbac Merge pull request #4503 from dokku/4487-drop-newsletter
Drop dead newsletter link
2021-03-21 22:50:51 -04:00
Jose Diaz-Gonzalez
57386b905c docs: drop dead newsletter link
Closes #4487
2021-03-21 22:50:25 -04:00
Dokku Bot
49405316ff Release 0.24.3
# History

## 0.24.3

Install/update via the bootstrap script:

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

### Bug Fixes

- #4496: @josegonzalez Ensure existing apps are initialized before modifying with code

### Documentation

- #4492: @josegonzalez Set better header colors for dark mode
- #4481: @bfontaine docs: fix a broken link

### Other

- #4495: @dependabot[bot] chore(deps): bump djangorestframework from 3.11.0 to 3.11.2 in /tests/apps/dockerfile-release
- #4494: @dependabot[bot] chore(deps): bump django from 3.0.7 to 3.1.6 in /tests/apps/dockerfile-release
- #4491: @dependabot-preview[bot] chore(deps): bump github.com/golang/protobuf from 1.4.3 to 1.5.1 in /tests/apps/gogrpc
2021-03-21 06:16:06 +00:00
Jose Diaz-Gonzalez
66282e7ac9 Merge pull request #4496 from dokku/4485-reinit-repo
Ensure existing apps are initialized before modifying with code
2021-03-21 02:14:37 -04:00
Jose Diaz-Gonzalez
06bc6b9012 fix: ensure existing apps are initialized before modifying with code
Prior to 0.24.0, not all applications would have their repositories initialized. This was especially the case for tags and tarball deploys.

This state is now correctly detected and the repository is initialized as expected.

Closes #4485
2021-03-21 01:32:31 -04:00
Jose Diaz-Gonzalez
915c3e6455 Merge pull request #4495 from dokku/dependabot/pip/tests/apps/dockerfile-release/djangorestframework-3.11.2
chore(deps): bump djangorestframework from 3.11.0 to 3.11.2 in /tests/apps/dockerfile-release
2021-03-19 21:08:37 -04:00
dependabot[bot]
260997781a chore(deps): bump djangorestframework in /tests/apps/dockerfile-release
Bumps [djangorestframework](https://github.com/encode/django-rest-framework) from 3.11.0 to 3.11.2.
- [Release notes](https://github.com/encode/django-rest-framework/releases)
- [Commits](https://github.com/encode/django-rest-framework/compare/3.11.0...3.11.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-20 00:10:43 +00:00
Jose Diaz-Gonzalez
8755ba31b2 Merge pull request #4494 from dokku/dependabot/pip/tests/apps/dockerfile-release/django-3.1.6
chore(deps): bump django from 3.0.7 to 3.1.6 in /tests/apps/dockerfile-release
2021-03-19 15:15:38 -04:00
dependabot[bot]
75ab1f8dab chore(deps): bump django in /tests/apps/dockerfile-release
Bumps [django](https://github.com/django/django) from 3.0.7 to 3.1.6.
- [Release notes](https://github.com/django/django/releases)
- [Commits](https://github.com/django/django/compare/3.0.7...3.1.6)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-19 11:04:05 +00:00
Jose Diaz-Gonzalez
e0ffebecdc Merge pull request #4491 from dokku/dependabot/go_modules/tests/apps/gogrpc/github.com/golang/protobuf-1.5.1
chore(deps): bump github.com/golang/protobuf from 1.4.3 to 1.5.1 in /tests/apps/gogrpc
2021-03-18 22:59:26 -04:00
Jose Diaz-Gonzalez
8cece0f92f Merge pull request #4492 from dokku/josegonzalez-patch-1
Set better header colors for dark mode
2021-03-18 22:59:17 -04:00
Jose Diaz-Gonzalez
cf1eaae7e5 docs: set better header colors for dark mode 2021-03-18 22:59:02 -04:00
dependabot-preview[bot]
6a93ca2f9f chore(deps): bump github.com/golang/protobuf in /tests/apps/gogrpc
Bumps [github.com/golang/protobuf](https://github.com/golang/protobuf) from 1.4.3 to 1.5.1.
- [Release notes](https://github.com/golang/protobuf/releases)
- [Commits](https://github.com/golang/protobuf/compare/v1.4.3...v1.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-18 05:42:35 +00:00
Lee Unsworth
ae6452e6e4 Bumps vector image version 2021-03-15 08:55:28 +00:00
Jose Diaz-Gonzalez
7cb7d2aebf Merge pull request #4481 from bfontaine/patch-2
docs: fix a broken link
2021-03-15 02:16:10 -04:00
Baptiste Fontaine
affc954047 docs: fix a broken link
[ci skip]
2021-03-14 19:25:52 +01:00
Dokku Bot
4662ac2774 Release 0.24.2
# History

## 0.24.2

Install/update via the bootstrap script:

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

### Bug Fixes

- #4473: @josegonzalez Add the correct log mount for app logs

### Other

- #4465: @Akirtovskis Add git:unlock command
- #4470: @dependabot-preview[bot] chore(deps): bump socket.io from 3.1.2 to 4.0.0 in /tests/apps/.websocket.disabled
- #4462: @dependabot-preview[bot] chore(deps-dev): bump heroku/heroku-buildpack-php from 189 to 190 in /tests/apps/php
2021-03-12 17:01:26 +00:00
Jose Diaz-Gonzalez
dd4d66fcb6 Merge pull request #4473 from dokku/4469-log-mount
Add the correct log mount for app logs
2021-03-12 11:59:06 -05:00
Jose Diaz-Gonzalez
3ab23dde07 Merge pull request #4465 from Akirtovskis/4458-git-sync-clone-in-progress
Add git:unlock command
2021-03-12 06:31:59 -05:00
Jose Diaz-Gonzalez
18a6ba90f9 fix: add the correct log mount for app logs
As per documentation, the `/var/log/dokku/apps` should be mounted from the host to the container. The existing mount was `/var/log/dokku` mounted to `/var/logs/dokku/apps`.

The broken mount will be removed in the next minor.
2021-03-12 06:31:01 -05:00
Jose Diaz-Gonzalez
a901661e91 chore: set perms on tmp git directory 2021-03-12 02:55:33 -05:00
Jose Diaz-Gonzalez
9781a905a7 fix: create correct clone directory 2021-03-12 02:55:22 -05:00
Jose Diaz-Gonzalez
4cd064f76c chore: run shfmt against file 2021-03-12 02:53:28 -05:00
arturs
f9be3dd974 clean up remove clone folder fn 2021-03-12 09:24:41 +02:00
arturs
4e50214b80 remove redundant commands from test 2021-03-12 08:25:55 +02:00
arturs
5c27ec31b7 add deploy command to tests 2021-03-11 21:55:32 +02:00
arturs
b061843eb1 fix formatting issue 2021-03-11 20:46:06 +02:00
arturs
76d9b37b22 fix typo 2021-03-11 19:19:59 +02:00
arturs
dff21e1d36 fix test 2021-03-11 18:58:50 +02:00
arturs
888f45254a fix shfmt 2021-03-11 17:59:46 +02:00
arturs
ebcacdb5af add new line at the end of the file 2021-03-11 17:46:20 +02:00
arturs
5a002f9007 update docs 2021-03-11 17:45:41 +02:00
arturs
8d11789566 add tests and prompt to unlock 2021-03-11 17:41:39 +02:00
Jose Diaz-Gonzalez
b0677fefa7 Merge pull request #4470 from dokku/dependabot/npm_and_yarn/tests/apps/dot-websocket.disabled/socket.io-4.0.0
chore(deps): bump socket.io from 3.1.2 to 4.0.0 in /tests/apps/.websocket.disabled
2021-03-11 02:17:52 -05:00
dependabot-preview[bot]
76d36f0758 chore(deps): bump socket.io in /tests/apps/.websocket.disabled
Bumps [socket.io](https://github.com/socketio/socket.io) from 3.1.2 to 4.0.0.
- [Release notes](https://github.com/socketio/socket.io/releases)
- [Changelog](https://github.com/socketio/socket.io/blob/master/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io/compare/3.1.2...4.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-11 06:43:33 +00:00
arturs
5ae531ca25 remove unnecessary code 2021-03-10 22:58:40 +02:00
arturs
5debadfde1 remove redundant code 2021-03-10 22:10:44 +02:00
arturs
642dc83702 fix lint issue 2021-03-10 20:31:44 +02:00
arturs
99bc51f106 fix unlock command 2021-03-10 19:29:23 +02:00
arturs
c05f220d14 make unlock file exec 2021-03-09 18:49:42 +02:00
arturs
741ea68cac fix formatting according to shfmt 2021-03-07 15:37:40 +02:00
arturs
58dca68fb4 fix has_tty if condition 2021-03-07 15:29:07 +02:00
arturs
b1db1e3e6f add git:unlock functionality 2021-03-07 12:28:03 +02:00
Jose Diaz-Gonzalez
e4c7e3eb74 docs: add note about auto-accepting a git branch as the primary branch on first push
[ci skip]
2021-03-05 11:04:42 -05:00
Jose Diaz-Gonzalez
0c9a98ce18 Merge pull request #4462 from dokku/dependabot/composer/tests/apps/php/heroku/heroku-buildpack-php-190
chore(deps-dev): bump heroku/heroku-buildpack-php from 189 to 190 in /tests/apps/php
2021-03-05 02:47:33 -05:00
dependabot-preview[bot]
30d71d4a0e chore(deps-dev): bump heroku/heroku-buildpack-php in /tests/apps/php
Bumps [heroku/heroku-buildpack-php](https://github.com/heroku/heroku-buildpack-php) from 189 to 190.
- [Release notes](https://github.com/heroku/heroku-buildpack-php/releases)
- [Changelog](https://github.com/heroku/heroku-buildpack-php/blob/main/CHANGELOG.md)
- [Commits](https://github.com/heroku/heroku-buildpack-php/compare/v189...v190)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-05 06:24:58 +00:00
Dokku Bot
239391540f Release 0.24.1
# History

## 0.24.1

Install/update via the bootstrap script:

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

### Bug Fixes

- #4454: @josegonzalez Use proper title for azure releases and fix tmp dir creation

### Documentation

- #4461: @josegonzalez Add dark mode support to documentation site
- #4457: @Cellane Rename 0.24.0 migration guide
- #4456: @josegonzalez Fix doc link and add 0.24.0 appendix to migration guides
2021-03-05 04:41:24 +00:00
Jose Diaz-Gonzalez
8f37b0f409 Merge pull request #4461 from dokku/4344-dark-mode
Add dark mode support to documentation site
2021-03-04 23:40:13 -05:00
Jose Diaz-Gonzalez
13d69a13f1 docs: add automatic dark-mode to docs site 2021-03-04 23:39:02 -05:00
Jose Diaz-Gonzalez
f734fb34f8 Merge pull request #4457 from Cellane/0.24.0-migration-guide
Rename 0.24.0 migration guide
2021-03-01 19:47:17 -05:00
Milan Vit
f186f6cc79 Rename 0.24.0 migration guide 2021-03-02 09:43:46 +09:00
Jose Diaz-Gonzalez
16f0a0dcfb Merge pull request #4456 from dokku/4455-upgrade-doc-link
Fix doc link and add 0.24.0 appendix to migration guides
2021-03-01 12:01:49 -05:00
Jose Diaz-Gonzalez
a6729a562b docs: fix doc link and add 0.24.0 appendix to migration guides
[ci skip]
2021-03-01 12:01:26 -05:00
Jose Diaz-Gonzalez
b875def7de Merge pull request #4454 from dokku/azure-release-fixes
Use proper title for azure releases and fix tmp dir creation
2021-03-01 08:49:41 -05:00
Jose Diaz-Gonzalez
828ba13eec fix: use proper title for azure releases and fix tmp dir creation 2021-03-01 08:48:30 -05:00
Dokku Bot
9bec66d5d6 Release 0.24.0
# History

## 0.24.0

Install/update via the bootstrap script:

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

See the [0.24.0 migration guide](/docs/appendices/0.24.0-migration-guide.md) for more information on migrating to 0.24.0.

### Bug Fixes

- #4449: @josegonzalez Gitignore trigger symlink
- #4447: @josegonzalez Checkout code to ensure the bump-azure script is available

### New Features

- #4453: @josegonzalez Simplify tar and zip deploys via git:from-archive
- #4450: @josegonzalez Simplify docker image deploys via git:from-image
- #4379: @josegonzalez Allow builders to be detected based on repository contents
- #4425: @josegonzalez Implement heroku's postdeploy deployment task
- #4424: @josegonzalez Implement git:auth command
- #4419: @josegonzalez Add parallelism to certain proxy commands

### Refactors

- #4374: @josegonzalez Change exit code when app does not exist

### Documentation

- #4451: @josegonzalez Update links to builder documentation to avoid extra rewrite
- #4448: @josegonzalez Add documentation for git push to dokku-in-docker
2021-03-01 13:34:18 +00:00
Jose Diaz-Gonzalez
30e09b8a07 Merge pull request #4453 from dokku/3458-git-from-archive
Simplify tar and zip deploys via git:from-archive
2021-03-01 08:33:33 -05:00
Jose Diaz-Gonzalez
5c1a1baf08 feat: implement git:from-archive
The previous tar support lacked the ability to track changes between tarball deploys. Critically, it also failed to be handled correctly when there was _also_ a git deployment done on the app, resulting in odd deployment states depending on the angles of the moon and the sun in the sky.

Rather than try to "fix" this through some hokey mechanism, importing the tar file contents into the git repository is preferred, as then the user can refer to the repository for commit history.

Additionally, we add support for non-tar files (tar.gz and zip), enabling deployments from systems that do not create tar files, such as Github (their tarball url is a tar.gz file).

Finally, this deprecates the tar plugin, and sets it to be removed in the next minor release (in addition to the tags plugin).

Closes #3458
Closes #4207
2021-03-01 08:13:51 -05:00
Jose Diaz-Gonzalez
ade2cc8a7c Merge pull request #4450 from dokku/4296-git-from-image
Simplify docker image deploys via git:from-image
2021-03-01 02:34:09 -05:00
Jose Diaz-Gonzalez
0a31f6fe3a feat: add git:from-image support
The new command superscedes the previous tags plugin, and integrates docker image deployment with the general build process.

While `docker image load` is not supported, this otherwise completely handles all previous workflows supported by the `tags:deploy` command, while doing so in a much easier to use interface.

Closes #4296
2021-03-01 02:26:58 -05:00
Jose Diaz-Gonzalez
54f9fcf856 Merge pull request #4451 from dokku/docs-update-builder-links
Update links to builder documentation to avoid extra rewrite
2021-03-01 02:12:33 -05:00
Jose Diaz-Gonzalez
720d37dc5d docs: update links to builder documentation to avoid extra rewrite 2021-03-01 02:09:47 -05:00
Jose Diaz-Gonzalez
5804cd11bc chore: standardize popd calls 2021-03-01 00:33:06 -05:00
Jose Diaz-Gonzalez
3254c52d7c Merge pull request #4449 from dokku/ignore-trigger
Gitignore trigger symlink
2021-03-01 00:32:43 -05:00
Jose Diaz-Gonzalez
090e243438 fix: gitignore trigger symlink 2021-03-01 00:32:13 -05:00
Jose Diaz-Gonzalez
d697004889 Merge pull request #4379 from dokku/builder-detect
Allow builders to be detected based on repository contents
2021-02-28 22:26:59 -05:00
Jose Diaz-Gonzalez
2392c69a28 docs: remove duplicate redirect entry 2021-02-28 17:29:34 -05:00
Jose Diaz-Gonzalez
6ea57dafe7 chore: add LogFailWithError to common triggers 2021-02-28 17:25:24 -05:00
Jose Diaz-Gonzalez
8c34cfe64e feat: implement builder plugin
This plugin will allow users to override the builder used for their application, enabling users to use custom builders if desired.
2021-02-28 17:25:03 -05:00
Jose Diaz-Gonzalez
1ec71cd509 refactor: switch detected builder so first one wins
Also rename internal cnb references to pack (where possible).
2021-02-28 16:19:41 -05:00
Jose Diaz-Gonzalez
43b9d9d4b6 chore: drop unused code
The builder-pack rename makes this unnecessary.
2021-02-28 16:19:41 -05:00
Jose Diaz-Gonzalez
6462dd891c chore: rename builder-cnb to builder-pack 2021-02-28 16:19:41 -05:00
Jose Diaz-Gonzalez
353438dbd3 feat: allow builders to be detected based on repository contents
Rather than hardcode two builders, allow builders to specify a `builder-detect` trigger. This trigger can be used to specify if the builder should or should not be used for an application. Each builder takes stdin and can decide if it wants to emit it or emit it's own image source type.

If the final value is empty, then Dokku will default to herokuish (and cnb once that is stable). In addition, a future change may allow users to manually specify a builder in the case they wish to override the choice selected by Dokku.

This change enables users to build custom builder plugins and have those plugins used for building an image asset. By way of example, an enterprising user could create a `builder-lambda` based on lambci, and then pair this with a scheduler plugin that updates a lambda function on AWS. Alternatively, a user might decide they wish to place their Dockerfile in a specific directory for their applications - such as an `_infrastructure` directory - and create a plugin to override how that is detected within Dokku.
2021-02-28 16:19:41 -05:00
Jose Diaz-Gonzalez
a9821decca Merge pull request #4374 from dokku/nonexistent-app-error-code
Change exit code when app does not exist
2021-02-28 16:19:33 -05:00
Jose Diaz-Gonzalez
548ca90e57 fix: add docblocks 2021-02-28 15:20:46 -05:00
Jose Diaz-Gonzalez
d55e34a55f refactor: use LogFailWithError to allow a unified exit code for golang commands when the app is missing 2021-02-28 15:20:46 -05:00
Jose Diaz-Gonzalez
d09a7506df refactor: bubble up error handling so that standard exit codes can be set at the top-level
LogFail shouldn't be called internally if at all possible.
2021-02-28 15:20:46 -05:00
Jose Diaz-Gonzalez
ccdbaa84f9 feat: override the exit code when verifying the app name 2021-02-28 15:18:04 -05:00
Jose Diaz-Gonzalez
7aa1334af9 feat: respect DOKKU_FAIL_EXIT_CODE value in dokku_log_fail functions 2021-02-28 15:18:04 -05:00
Jose Diaz-Gonzalez
66e66c9d18 Merge pull request #4425 from dokku/2269-postdeploy
Implement heroku's postdeploy deployment task
2021-02-28 15:17:31 -05:00
Jose Diaz-Gonzalez
57fe5f472f Merge pull request #4424 from dokku/4364-git-sync-auth
Implement git:auth command
2021-02-28 15:17:04 -05:00
Jose Diaz-Gonzalez
5612b0e7d2 Merge pull request #4419 from dokku/4392-proxy-parallelism
Add parallelism to certain proxy commands
2021-02-28 15:16:36 -05:00
Jose Diaz-Gonzalez
52a88d63ad tests: fix postdeploy test 2021-02-28 14:39:16 -05:00
Jose Diaz-Gonzalez
f98e7702fb feat: implement heroku's postdeploy deployment task
This occurs during the postdeploy on the first deploy of an app, mimicking heroku. It currently happens _after_ the `postdeploy` and `release` deploy tasks.
2021-02-28 04:51:42 -05:00
Jose Diaz-Gonzalez
7a710005a1 feat: implement git:auth command
Refs #4364
2021-02-28 04:47:37 -05:00
Jose Diaz-Gonzalez
4d13e0c2f6 Merge pull request #4448 from dokku/4441-docker-docs
Add documentation for git push to dokku-in-docker
2021-02-28 03:07:58 -05:00
Jose Diaz-Gonzalez
ffcf2215de docs: add documentation for git push to dokku-in-docker
Also add an example for custom docker container arguments.

Refs #4441
2021-02-28 03:07:15 -05:00
Jose Diaz-Gonzalez
70576f9ca7 Merge pull request #4447 from dokku/josegonzalez-patch-1
Checkout code to ensure the bump-azure script is available
2021-02-28 02:58:06 -05:00
Jose Diaz-Gonzalez
8e954d99df fix: checkout code to ensure the bump-azure script is available 2021-02-28 02:57:54 -05:00
Dokku Bot
5c1a6a68af Release 0.23.9
# History

## 0.23.9

Install/update via the bootstrap script:

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

### Refactors

- #4445: @josegonzalez Bump azure template and formula directly on release

### Documentation

- #4444: @josegonzalez Uuse updated links for documentation
- #4439: @RyukerLiu View Doc redirect not working. Change to use direct link
2021-02-28 07:40:27 +00:00
Jose Diaz-Gonzalez
aea8581b09 Merge pull request #4445 from dokku/release-bump
Bump azure template and formula directly on release
2021-02-28 02:13:20 -05:00
Jose Diaz-Gonzalez
3511ae53f4 refactor: bump azure template and formula directly on release
Rather than try and do something fancy on tag creation via workflows - which won't trigger due to workflows not being able to trigger other workflows without using workflow_run on the downstream workflow as a trigger - we just do all the releasing at once. This makes it easy to understand whether a release fully completed.
2021-02-28 02:11:58 -05:00
Jose Diaz-Gonzalez
335143fca3 Merge pull request #4444 from dokku/update-rewrites
Uuse updated links for documentation
2021-02-28 01:19:19 -05:00
Jose Diaz-Gonzalez
75b7ae94e1 docs: use updated links for documentation
Docs are now hosted on https://dokku.com, so we can avoid the extra rewrite.
2021-02-28 01:18:33 -05:00
Jose Diaz-Gonzalez
c4270ca950 Merge pull request #4439 from RyukerLiu/master
View Doc redirect not working. Change to use direct link
2021-02-26 00:07:24 -05:00
Allen Liu
8a4b0e16e4 View Doc redirect not working use direct link 2021-02-25 21:16:59 +08:00
Dokku Bot
ebe7c82fb9 Release 0.23.8
Some checks failed
bump-azure / bump-azure (push) Has been cancelled
bump-formula / bump-formula (push) Has been cancelled
# History

## 0.23.8

Install/update via the bootstrap script:

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

### Bug Fixes

- #4437: @josegonzalez Switch to using GIT_DIR environment variable to fix Centos 7 support
- #4436: @josegonzalez Properly handle directory change when cleaning .git directory

### New Features

- #4428: @josegonzalez Bump azure ARM quickstart template on release

### Documentation

- #4435: @josegonzalez Change page title based on current page
- #4427: @josegonzalez Change process management doc references to make more sense

### Other

- #4438: @josegonzalez Split out nginx tests further to decrease overall CI runtime
- #4430: @dependabot-preview[bot] chore(deps): bump jetty-servlet from 11.0.0 to 11.0.1 in /tests/apps/java
2021-02-25 13:02:59 +00:00
Jose Diaz-Gonzalez
fbdf77ab38 Merge pull request #4438 from dokku/split-tests
Split out nginx tests further to decrease overall CI runtime
2021-02-25 08:02:04 -05:00
Jose Diaz-Gonzalez
9352e7a594 tests: split out nginx tests further to decrease overall CI runtime 2021-02-25 06:48:12 -05:00
Jose Diaz-Gonzalez
28de1b3fba Merge pull request #4437 from dokku/4429-git-183-support
Switch to using GIT_DIR environment variable to fix Centos 7 support
2021-02-25 06:31:20 -05:00
Jose Diaz-Gonzalez
64b1a54cad fix: switch to using GIT_DIR environment variable to fix Centos 7 support
Closes #4429
2021-02-25 06:04:37 -05:00
Jose Diaz-Gonzalez
3c47971c61 Merge pull request #4436 from dokku/4434-fix-cd-issue
Properly handle directory change when cleaning .git directory
2021-02-25 03:37:19 -05:00
Jose Diaz-Gonzalez
6b90dc70b1 fix: properly handle directory change when cleaning .git directory
Closes #4434
2021-02-25 02:29:36 -05:00
Jose Diaz-Gonzalez
859ea13b0a Merge pull request #4435 from dokku/josegonzalez-patch-1
Change page title based on current page
2021-02-25 01:53:28 -05:00
Jose Diaz-Gonzalez
51a3b0312a docs: change page title based on current page
Closes #4433
2021-02-25 01:52:09 -05:00
Jose Diaz-Gonzalez
1d5699a67f Merge pull request #4430 from dokku/dependabot/maven/tests/apps/java/org.eclipse.jetty-jetty-servlet-11.0.1
chore(deps): bump jetty-servlet from 11.0.0 to 11.0.1 in /tests/apps/java
2021-02-23 01:52:14 -05:00
dependabot-preview[bot]
eb7fde9c12 chore(deps): bump jetty-servlet in /tests/apps/java
Bumps [jetty-servlet](https://github.com/eclipse/jetty.project) from 11.0.0 to 11.0.1.
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-11.0.0...jetty-11.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-23 05:41:46 +00:00
Jose Diaz-Gonzalez
c8b86508eb Merge pull request #4428 from dokku/bump-azure
Bump azure ARM quickstart template on release
2021-02-22 15:52:11 -05:00
Jose Diaz-Gonzalez
61503b7b17 feat: bump azure ARM quickstart template on release
This ensures Azure ARM template users always get the latest and greatest as the Dokku project evolves over time.
2021-02-22 14:44:23 -05:00
Jose Diaz-Gonzalez
f918efa8f9 Merge pull request #4427 from dokku/4426-ps-doc-title
Change process management doc references to make more sense
2021-02-22 04:03:22 -05:00
Jose Diaz-Gonzalez
dba2246d7a docs: change process management doc references to make more sense
Closes #4426
2021-02-22 04:02:59 -05:00
Dokku Bot
d09cfb82f8 Release 0.23.7
Some checks failed
bump-formula / bump-formula (push) Has been cancelled
# History

## 0.23.7

Install/update via the bootstrap script:

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

### Bug Fixes

- #4421: @josegonzalez Keep the git directory for worktree-enabled installations

### New Features

- #4420: @josegonzalez Add ability to specify X-Forwarded-Ssl header for proxied requests

### Documentation

- #4422: @josegonzalez Add warning regarding shallow clone pushes
- #4417: @andrewk17 Correct vector sink example command
- #4414: @josegonzalez Use correct html for offsite digitalocean link
- #4413: @josegonzalez Fix SSL documentation link in troubleshooting docs

### Other

- #4423: @josegonzalez Drop unused sigil packaging code
- #4418: @josegonzalez Drop unused skip-restart flag for proxy:disable
2021-02-21 09:38:08 +00:00
Jose Diaz-Gonzalez
d02efdcc05 Merge pull request #4423 from dokku/drop-sigil-packaging
Drop unused sigil packaging code
2021-02-21 03:45:37 -05:00
Jose Diaz-Gonzalez
06bdee37ff chore: drop unused sigil packaging code
This is now packaged and released in progrium/sigil.
2021-02-21 03:12:57 -05:00
Jose Diaz-Gonzalez
e4c0c6b9d9 Merge pull request #4421 from dokku/4415-worktree-git-dir
Keep the git directory for worktree-enabled installations
2021-02-21 02:45:23 -05:00
Jose Diaz-Gonzalez
72c5172873 Merge pull request #4422 from dokku/4405-shallow-push
Add warning regarding shallow clone pushes
2021-02-20 17:44:28 -05:00
Jose Diaz-Gonzalez
36e02c74fd docs: add warning regarding shallow clone pushes
Closes #4405

[ci skip]
2021-02-20 17:43:47 -05:00
Jose Diaz-Gonzalez
3ae9feba8f fix: keep the git directory for worktree-enabled installations
Git worktrees do not include the full .git directory - only a pointer to the actual directory - when keep-git-dir is set to true, which is incorrect for built containers. This change special-cases that combination, allowing folks on newer git installs to actually keep the .git directory during the build process.

Closes #4415
2021-02-20 17:33:24 -05:00
Jose Diaz-Gonzalez
757a829137 Merge pull request #4420 from dokku/4401-x-forwarded-ssl
Add ability to specify X-Forwarded-Ssl header for proxied requests
2021-02-20 00:36:57 -05:00
Jose Diaz-Gonzalez
f7e218637e feat: add ability to specify X-Forwarded-Ssl header for proxied requests
Closes #4401
2021-02-20 00:03:25 -05:00
Jose Diaz-Gonzalez
04a96125cc feat: add parallelism to certain proxy commands
Closes #4392
2021-02-19 23:48:04 -05:00
Jose Diaz-Gonzalez
5141360b48 refactor: move internal proxy functions to functions.go 2021-02-19 23:46:00 -05:00
Jose Diaz-Gonzalez
dbe80de925 Merge pull request #4418 from dokku/drop-unused-flag
Drop unused skip-restart flag for proxy:disable
2021-02-19 23:45:57 -05:00
Jose Diaz-Gonzalez
4de1937e41 chore: drop unused skip-restart flag for proxy:disable 2021-02-19 23:24:53 -05:00
Jose Diaz-Gonzalez
d4a634d24e Merge pull request #4417 from andrewk17/patch-1
Correct vector sink example command
2021-02-19 23:02:41 -05:00
Andrew
2480b773a1 fix: vector sink readme example command 2021-02-19 17:32:42 -08:00
Jose Diaz-Gonzalez
7f0b43c18f Merge pull request #4414 from dokku/josegonzalez-patch-1
Use correct html for offsite digitalocean link
2021-02-18 06:01:17 -05:00
Jose Diaz-Gonzalez
68efb73be6 docs: use correct html for offsite digitalocean link
[ci skip]
2021-02-18 06:01:04 -05:00
Jose Diaz-Gonzalez
2b76903bf3 Merge pull request #4413 from dokku/josegonzalez-patch-1
Fix SSL documentation link in troubleshooting docs
2021-02-18 04:54:39 -05:00
Jose Diaz-Gonzalez
6a4a94e236 docs: fix SSL documentation link in troubleshooting docs
[ci skip]
2021-02-18 04:54:23 -05:00
Dokku Bot
9139c81db9 Release 0.23.6
Some checks failed
bump-formula / bump-formula (push) Has been cancelled
# History

## 0.23.6

Install/update via the bootstrap script:

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

### Bug Fixes

- #4412: @markuspoerschke Fix generation of crontab

### Documentation

- #4411: @ltalirz Replace nginx:build-config => proxy:build-config
2021-02-18 07:41:50 +00:00
Jose Diaz-Gonzalez
14249de8e5 Merge pull request #4412 from markuspoerschke/fix-crontab
Fix generation of crontab
2021-02-18 02:19:42 -05:00
Markus Poerschke
b4db0c1a6c Fix generation of crontab
There was a missing placeholder in the template string.
That caused that `%!(EXTRA string=...` is added to the crontab file which causes commands to fail.
2021-02-17 22:04:28 +01:00
Jose Diaz-Gonzalez
cd97ac3388 Merge pull request #4411 from ltalirz/remove-outdated-command
Replace nginx:build-config => proxy:build-config
2021-02-17 13:18:13 -05:00
Leopold Talirz
73f3ce7579 replace nginx:build-config => proxy:build-config 2021-02-17 19:15:38 +01:00
Dokku Bot
da67ebed5d Release 0.23.5
Some checks failed
bump-formula / bump-formula (push) Has been cancelled
# History

## 0.23.5

Install/update via the bootstrap script:

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

### Bug Fixes

- #4406: @znz Fix typo in error message

### New Features

- #4404: @josegonzalez Add ability to trigger release via github actions

### Tests

- #4403: @josegonzalez Llint files during CI
2021-02-15 22:15:37 +00:00
Jose Diaz-Gonzalez
36c2266196 fix: add missing docker login for release process 2021-02-15 17:14:55 -05:00
Jose Diaz-Gonzalez
6b357fdcb4 fix: properly configure git in release environment 2021-02-15 16:55:33 -05:00
Jose Diaz-Gonzalez
2ed3c6c356 fix: install package_cloud for use with release process 2021-02-15 16:52:16 -05:00
Jose Diaz-Gonzalez
528bd744e0 Merge pull request #4404 from dokku/release-via-ci
Add ability to trigger release via github actions
2021-02-15 16:41:32 -05:00
Jose Diaz-Gonzalez
4ab42e846d feat: add ability to trigger release via github actions
This will enable releases to be performed even when not at a computer, though also by anyone with Actions access.
2021-02-15 03:18:21 -05:00
Jose Diaz-Gonzalez
d2cbb02342 Merge pull request #4406 from znz/fix-typo
Fix typo in error message
2021-02-15 03:17:02 -05:00
Jose Diaz-Gonzalez
e2e18cc0fc Merge pull request #4403 from dokku/lint-on-pr
Llint files during CI
2021-02-15 03:16:43 -05:00
Kazuhiro NISHIYAMA
a31a7a231c Fix typo in error message 2021-02-14 09:09:53 +09:00
Jose Diaz-Gonzalez
669259eace tests: just skip the issue 2021-02-13 05:05:57 -05:00
Jose Diaz-Gonzalez
45c543adde tests: attempt to fix lint again 2021-02-13 04:20:49 -05:00
Jose Diaz-Gonzalez
627a6bf8a5 tests: fix issue with assert urls 2021-02-13 03:52:28 -05:00
Jose Diaz-Gonzalez
f5e55540e9 tests: run lint in the same way as build 2021-02-13 02:42:36 -05:00
Jose Diaz-Gonzalez
d7f3a2b003 fix: correct SC2124 issue 2021-02-13 02:41:46 -05:00
Jose Diaz-Gonzalez
9ce309bed9 fix: correct SC2206 issue 2021-02-13 02:36:36 -05:00
Jose Diaz-Gonzalez
b62264c275 tests: fix SC2124 issue 2021-02-13 02:32:17 -05:00
Jose Diaz-Gonzalez
d4e832c27b tests: fix SC2145 issue 2021-02-13 02:31:24 -05:00
Jose Diaz-Gonzalez
59c45ea1d6 tests: fix SC1012 issue 2021-02-13 02:28:38 -05:00
Jose Diaz-Gonzalez
f64a754211 tests: fix some shellcheck violations 2021-02-13 02:22:21 -05:00
Jose Diaz-Gonzalez
d8895bb64b tests: fix SC1087 violations 2021-02-13 02:17:25 -05:00
Jose Diaz-Gonzalez
882889a962 tests: fix shfmt 2021-02-13 02:14:50 -05:00
Jose Diaz-Gonzalez
7338a77285 tests: fix more yaml issues 2021-02-13 02:14:10 -05:00
Jose Diaz-Gonzalez
af014750aa tests: fix and ignore shellcheck errors 2021-02-13 02:09:24 -05:00
Jose Diaz-Gonzalez
02a8409114 tests: fix shfmt issues 2021-02-13 02:05:44 -05:00
Jose Diaz-Gonzalez
3681c17aa2 tests: fix lint issues in yaml files 2021-02-13 02:02:33 -05:00
Jose Diaz-Gonzalez
f56023bb74 tests: upgrade linters 2021-02-13 02:00:10 -05:00
Jose Diaz-Gonzalez
5ef41861d3 tests: cleanup and ignore markdown lint issues 2021-02-13 01:57:00 -05:00
Jose Diaz-Gonzalez
a679e80187 tests: update hadolint and ignore some errors 2021-02-13 01:54:55 -05:00
Jose Diaz-Gonzalez
85c841da88 tests: lint files during CI 2021-02-13 01:37:31 -05:00
Jose Diaz-Gonzalez
7cabb4dd9a Release 0.23.4
Some checks failed
bump-formula / bump-formula (push) Has been cancelled
# History

## 0.23.4

Install/update via the bootstrap script:

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

### Bug Fixes

- #4402: @josegonzalez fix: correctly handle is-deployed check
- #4399: @josegonzalez Drop extra log output in cron plugin

### Documentation

- #4400: @solvethex Add tail option
2021-02-13 01:10:45 -05:00
Jose Diaz-Gonzalez
286be7f3df Merge pull request #4402 from dokku/4398-fix-deployed-check
fix: correctly handle is-deployed check
2021-02-13 01:10:22 -05:00
Jose Diaz-Gonzalez
1e915968b5 fix: correctly handle is-deployed check
Previously, checking if an app was deployed actually checked if there were any running processes. This is not only incorrect, but also fails to take into account applications that do not have running processes and are only used for one-off commands.

This fix migrates apps to the new "deployed" property which is set in core-post-deploy. The result is a slightly faster "deployed" check that is correct and allows non-scaled apps to actually work.

Closes #4398
2021-02-13 00:46:35 -05:00
Jose Diaz-Gonzalez
3dfb84048c Merge pull request #4400 from solvethex/patch-1
Add tail option
2021-02-12 23:29:25 -05:00
Jose Diaz-Gonzalez
78a3570bb2 docs: sync with help output
[ci skip]
2021-02-12 23:29:12 -05:00
Jose Diaz-Gonzalez
9733bf9fa1 Merge pull request #4399 from dokku/drop-extra-log
Drop extra log output in cron plugin
2021-02-12 23:28:03 -05:00
solvethex
effaa8e81c Add tail option
Add tail option for realtime debugging
2021-02-12 14:22:57 +01:00
Jose Diaz-Gonzalez
7558a9898e fix: drop extra log output in cron plugin 2021-02-12 00:49:07 -05:00
Jose Diaz-Gonzalez
eca6cde934 docs: fix redirect of one-off-processes documentation
[ci skip]
2021-02-11 12:21:33 -05:00
712 changed files with 25405 additions and 6917 deletions

View File

@@ -1,3 +1,4 @@
---
version: 2.1
jobs:

View File

@@ -1,5 +1,10 @@
---
engines:
duplication:
exclude_paths:
- "*"
exclude_paths:
- vendor/**/*
- tests/**/*
- "**_test.go"
- contrib/*
- vendor/**/*
- tests/**/*
- "**_test.go"
- contrib/*

27
.devcontainer/Dockerfile Normal file
View File

@@ -0,0 +1,27 @@
FROM dokku/dokku:latest
RUN apt-get update
RUN apt-get install --no-install-recommends -y build-essential file nano && \
apt-get install --no-install-recommends -y help2man shellcheck uuid-runtime wget xmlstarlet && \
apt-get clean autoclean && \
apt-get autoremove --yes && \
rm -rf /var/lib/apt/lists/*
ARG TARGETARCH
RUN wget https://dl.google.com/go/go1.17.9.linux-${TARGETARCH}.tar.gz && \
tar -xvf go1.17.9.linux-${TARGETARCH}.tar.gz && \
mv go /usr/local
RUN GOROOT=/usr/local/go /usr/local/go/bin/go install golang.org/x/tools/gopls@latest 2>&1
ADD https://raw.githubusercontent.com/dokku/dokku/master/tests/dhparam.pem /mnt/dokku/etc/nginx/dhparam.pem
COPY .devcontainer/bin/ /usr/local/bin/
COPY ["tests.mk", "Makefile"]
RUN make ci-dependencies
COPY . .
ENV DOKKU_HOSTNAME=dokku.me GOROOT=/usr/local/go PATH=/usr/local/go/bin:/root/go/bin:$PATH PLUGIN_MAKE_TARGET=build
LABEL org.label-schema.schema-version=1.0 org.label-schema.vendor=dokku com.dokku.devcontainer=true

9
.devcontainer/bin/copy-plugin Executable file
View File

@@ -0,0 +1,9 @@
#!/usr/bin/env bash
main() {
declare PLUGIN_NAME="$1"
make go-build-plugin copyplugin PLUGIN_NAME=$PLUGIN_NAME PLUGIN_MAKE_TARGET=build
}
main "$@"

View File

@@ -0,0 +1,25 @@
{
"build": {
"dockerfile": "Dockerfile",
"context": ".."
},
"containerEnv": {
"DOKKU_HOST_ROOT": "${localWorkspaceFolder}/tmp/data/home/dokku",
"GO_ROOT_MOUNT": "${localWorkspaceFolder}:/go/src/github.com/dokku/dokku"
},
"extensions": [
"golang.go",
"mads-hartmann.bash-ide-vscode",
"ms-vscode.makefile-tools"
],
"initializeCommand": ["mkdir", "-p", "tmp/data"],
"mounts": [
"source=/var/run/docker.sock,target=/var/run/docker.sock,type=bind",
"source=${localWorkspaceFolder}/tmp/data/,target=/mnt/dokku/,type=bind"
],
"overrideCommand": false,
"postCreateCommand": "make setup-deploy-tests",
"runArgs": ["--init"],
"workspaceFolder": "/root/go/src/github.com/dokku/dokku",
"workspaceMount": "type=bind,source=${localWorkspaceFolder},target=/root/go/src/github.com/dokku/dokku,consistency=cached"
}

View File

@@ -6,10 +6,10 @@ contrib
build
docs
tests
!build/dokku.deb
!build/package/*
!docs/_build/entrypoint
!docs/_build/requirements.txt
!tests/dhparam.pem
!contrib/dokku-installer.py
!contrib/dokku-update
!contrib/bash-completion
!contrib/docker
vendor

View File

@@ -15,7 +15,7 @@ insert_final_newline = true
indent_style = tab
indent_size = 4
[*.go]
[*.{go,mod}]
insert_final_newline = true
indent_style = tab
indent_size = 4

66
.github/ISSUE_TEMPLATE/bug_report.yaml vendored Normal file
View File

@@ -0,0 +1,66 @@
---
name: Bug Report
description: File a bug report
labels: ["needs: investigation", "type: bug"]
body:
- type: markdown
attributes:
value: |
Consider [sponsoring Dokku](https://github.com/sponsors/dokku). Sponsorship goes directly to supporting activities such as fixing bugs and general maintenance.
- type: textarea
id: description
attributes:
label: Description of problem
description: What happened? What did you expect to happen?
validations:
required: true
- type: textarea
id: steps
attributes:
label: Steps to reproduce
description: What are the steps that we need to follow to reproduce this issue?
validations:
required: true
- type: textarea
id: report-output
attributes:
label: dokku report $APP_NAME
description: Please paste the output of the command `dokku report $APP_NAME`, where `$APP_NAME` is the name of your app
validations:
required: true
- type: textarea
id: additional-output
attributes:
label: Additional information
description: |
This information is useful for debugging app issues:
- Container Inspect Output (if applicable) via `dokku ps:inspect APP_NAME`
- The nginx configuration (if applicable) via `dokku nginx:show-config APP_NAME`
- Link to the exact repository being deployed (if possible/applicable)
If a deploy is failing or behaving unexpectedly:
- Application name
- The type of application being deployed (node, php, python, ruby, etc.)
- If using buildpacks, which custom buildpacks are in use
- If using a Dockerfile, the contents of that file
- If it exists, the contents of your Procfile.
validations:
required: false
- type: textarea
id: logs
attributes:
label: "Output of failing commands after running: dokku trace:off"
render: shell
validations:
required: false
- type: textarea
id: trace-logs
attributes:
label: "Output of failing commands after running: dokku trace:on"
description: |
**BEWARE**: `dokku trace:on` will cause some commands to print environment variables, be sure you're not exposing any sensitive information when posting issues. You may replace these values with XXXXXX
render: shell
validations:
required: false

View File

@@ -0,0 +1,71 @@
---
name: Buildpack Issue
description: Is your deploy failing while building your application using buildpacks? Check this out.
labels: ["upstream: buildpacks"]
body:
- type: markdown
attributes:
value: |
If your build is stuck downloading something, compiling a file, or seems to always fail around the same area, Github Issues is not a great place to debug. This is because these sorts of issues tend to take a lot of back and forth to figure out, and the code for buildpacks is not generally maintained by the Dokku project.
<details>
<summary>Debugging tips:</summary>
- If you see text that says `Killed` in your output, attempt to increase free memory by using a larger server or [add swap memory](https://dokku.com/docs/getting-started/troubleshooting/#build-fails-with-killed-message).
- Turn on buildpack trace mode via `dokku config:set $APP_NAME BUILDPACK_XTRACE=1` and retry your deploy. Not all buildpacks support this, but many will output extra debugging information.
- Your hosting provider may have issues accessing AWS S3. Verify a slow/stalled download works by directly curling the file from your host.
- Many buildpacks allow downloading a file from an alternative location specified via environment variable.
- [Increase curl timeouts](https://dokku.com/docs/getting-started/troubleshooting/#deployment-fails-because-of-slow-internet-connection-messages-s) if you see gzip download issues.
- If using multi-buildpack support but a buildpack is failing to apply, ensure you have any files necessary for the `bin/detect` script of the buildpack to `exit 0`. Selected buildpacks must still pass the detection phase in order to be used.
</details>
If you are still having issues, file a ticket here and then further discussing the ticket in one of our [Monitored Support Channels](https://dokku.com/docs/getting-started/where-to-get-help/#monitored-locations) (Discord, Github Discussions, Slack). Your filed ticket may be closed or locked, but any subsequent discovery will be posted to the ticket for posterity.
- type: textarea
id: description
attributes:
label: Description of problem
description: What happened? What did you expect to happen?
validations:
required: true
- type: textarea
id: report-output
attributes:
label: dokku report $APP_NAME
description: Please paste the output of the command `dokku report $APP_NAME`, where `$APP_NAME` is the name of your app.
validations:
required: true
- type: textarea
id: additional-output
attributes:
label: Additional information
description: |
This information is useful for debugging app issues:
- Container Inspect Output (if applicable) via `dokku ps:inspect APP_NAME`
- The nginx configuration (if applicable) via `dokku nginx:show-config APP_NAME`
- Link to the exact repository being deployed (if possible/applicable)
If a deploy is failing or behaving unexpectedly:
- Application name
- The type of application being deployed (node, php, python, ruby, etc.)
- If using buildpacks, which custom buildpacks are in use
- If it exists, the contents of your Procfile.
validations:
required: true
- type: textarea
id: logs
attributes:
label: "Output of failing deploy after running: dokku trace:off"
render: shell
validations:
required: true
- type: textarea
id: trace-logs
attributes:
label: "Output of failing deploy after running: dokku trace:on"
description: |
**BEWARE**: `dokku trace:on` will cause some commands to print environment variables, be sure you're not exposing any sensitive information when posting issues. You may replace these values with XXXXXX
render: shell
validations:
required: true

View File

@@ -0,0 +1,18 @@
---
name: Feature Request
description: Have an idea for a new feature? Ask away!
labels: ["needs: plan", "type: enhancement"]
body:
- type: markdown
attributes:
value: |
While pull requests are always welcome, feel free to fill this out with an idea of what you would like to happen and we can discuss if and how it should be implemented in Dokku.
Consider [sponsoring Dokku](https://github.com/sponsors/dokku). Sponsorship goes directly to supporting activities such as implementing new features and upgrading existing functionality.
- type: textarea
id: description
attributes:
label: Description of feature
description: When you perform what command or action, what do you think should happen?
validations:
required: true

51
.github/commands/bump-azure vendored Executable file
View File

@@ -0,0 +1,51 @@
#!/usr/bin/env bash
set -eo pipefail
main() {
declare VERSION="$1" BOT_GITHUB_USERNAME="$2" BOT_GITHUB_API_TOKEN="$3"
local GH_VERSION=1.6.1
local DATE_UPDATED="$(date +"%Y-%m-%d")"
local GH_FOLDER="gh_${GH_VERSION}_linux_amd64"
echo "=====> Downloading gh"
wget -O gh.tar.gz "https://github.com/cli/cli/releases/download/v${GH_VERSION}/${GH_FOLDER}.tar.gz"
mkdir -p tmp
tar xzf gh.tar.gz -C tmp
if [[ ! -f tmp/$GH_FOLDER/bin/gh ]]; then
echo "Failed to extract gh"
return 1
fi
cd tmp
$GH_FOLDER/bin/gh auth login --with-token <<<"$BOT_GITHUB_API_TOKEN"
echo "=====> Cloning quickstart templates"
rm -rf azure-quickstart-templates >/dev/null
git clone https://github.com/Azure/azure-quickstart-templates.git azure-quickstart-templates
pushd azure-quickstart-templates >/dev/null
echo "=====> Updating values"
contents="$(jq '.githubUsername = "dokku"' application-workloads/dokku/dokku-vm/metadata.json)"
echo "${contents}" >application-workloads/dokku/dokku-vm/metadata.json
contents="$(jq --arg DATE_UPDATED "$DATE_UPDATED" '.dateUpdated = $DATE_UPDATED' application-workloads/dokku/dokku-vm/metadata.json)"
echo "${contents}" >application-workloads/dokku/dokku-vm/metadata.json
contents="$(jq --arg VERSION "$VERSION" '.parameters.dokkuVersion.defaultValue = $VERSION' application-workloads/dokku/dokku-vm/azuredeploy.json)"
echo "${contents}" >application-workloads/dokku/dokku-vm/azuredeploy.json
echo "=====> Updating remote repository"
git add application-workloads/dokku/dokku-vm
git checkout -b dokku-$VERSION
git commit -m "Update dokku-vm dokku version to $VERSION"
git remote set-url origin "https://$BOT_GITHUB_USERNAME:$BOT_GITHUB_API_TOKEN@github.com/dokku/azure-quickstart-templates.git"
git push -f origin dokku-$VERSION
echo "=====> Creating upstream pull request"
../$GH_FOLDER/bin/gh pr create --head dokku:dokku-$VERSION --repo Azure/azure-quickstart-templates --title "Update dokku-vm dokku version to $VERSION" --body ''
popd &>/dev/null
}
main "$@"

View File

@@ -7,7 +7,7 @@ main() {
mkdir -p test-results/bats
pushd tests/unit >/dev/null
bats --report-formatter junit --output ../../test-results/bats "$FILE_NAME.bats"
popd >/dev/null
popd &>/dev/null
ls -lah test-results/bats
}

View File

@@ -1,9 +1,10 @@
#!/usr/bin/env bash
set -eo pipefail
set -x
echo "=====> set hostname"
hostname
internal_ip="$(ifconfig eth0 | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}')"
internal_ip="$(ifconfig eth0 | grep 'inet ' | awk '{print $2}')"
sudo hostname "dokku.me"
echo "dokku.me" | sudo tee /etc/hostname
hostname

112
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,112 @@
---
version: 2
updates:
- package-ecosystem: bundler
directory: "/tests/apps/ruby"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: bundler
directory: "/tests/apps/multi"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: npm
directory: "/tests/apps/checks-root"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: npm
directory: "/tests/apps/config"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: npm
directory: "/tests/apps/dockerfile-dokku-scale"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: npm
directory: "/tests/apps/dockerfile-noexpose"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: npm
directory: "/tests/apps/dockerfile-procfile-bad"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: npm
directory: "/tests/apps/dockerfile-procfile"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: npm
directory: "/tests/apps/dockerfile"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: npm
directory: "/tests/apps/gitsubmodules"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: gomod
directory: "/tests/apps/gogrpc"
schedule:
interval: daily
open-pull-requests-limit: 10
ignore:
- dependency-name: google.golang.org/grpc
versions:
- "> 1.29.1"
- package-ecosystem: pip
directory: "/tests/apps/multi"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: maven
directory: "/tests/apps/java"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: npm
directory: "/tests/apps/nodejs-express"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: npm
directory: "/tests/apps/nodejs-worker"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: npm
directory: "/tests/apps/nodejs-express-noappjson"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: npm
directory: "/tests/apps/nodejs-express-noprocfile"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: composer
directory: "/tests/apps/php"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: pip
directory: "/tests/apps/python-flask"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: npm
directory: "/tests/apps/.websocket.disabled"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: daily
open-pull-requests-limit: 10

10
.github/linters/.markdown-lint.yml vendored Normal file
View File

@@ -0,0 +1,10 @@
---
default: true
# Line length
# https://github.com/DavidAnson/markdownlint/blob/main/doc/Rules.md#md013
MD013: false
# Inline HTML
# https://github.com/DavidAnson/markdownlint/blob/main/doc/Rules.md#md033
MD033: false

5
.github/linters/.yamllint.yml vendored Normal file
View File

@@ -0,0 +1,5 @@
---
extends: default
rules:
line-length: disable

View File

@@ -1,23 +0,0 @@
name: bump-formula
on:
push:
tags:
- '*'
jobs:
bump-formula:
runs-on: macos-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Get version
id: get_version
run: echo ::set-output name=version::${GITHUB_REF/refs\/tags\//}
- name: Bump Brew
env:
HOMEBREW_GITHUB_USERNAME: ${{ secrets.HOMEBREW_GITHUB_USERNAME }}
HOMEBREW_GITHUB_API_TOKEN: ${{ secrets.HOMEBREW_GITHUB_API_TOKEN }}
run: |
git config --global user.name 'Dokku Bot'
git config --global user.email no-reply@dokku.com
brew tap dokku/repo "https://$HOMEBREW_GITHUB_USERNAME:$HOMEBREW_GITHUB_API_TOKEN@github.com/dokku/homebrew-repo.git"
brew bump-formula-pr -f --no-browse --no-audit --no-fork --url "https://github.com/dokku/dokku/archive/${{ steps.get_version.outputs.version }}.tar.gz" dokku/repo/dokku

View File

@@ -1,5 +1,7 @@
---
name: CI
# yamllint disable-line rule:truthy
on:
pull_request:
branches:
@@ -11,94 +13,106 @@ on:
jobs:
build:
name: build
runs-on: ubuntu-16.04
runs-on: ubuntu-18.04
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
strategy:
fail-fast: true
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: build package
run: ./tests/ci/setup.sh build
- name: set up qemu
uses: docker/setup-qemu-action@v2
- name: set matrix for build
id: set-matrix
run: |
json=$(python .github/commands/matrix)
echo $json
echo "::set-output name=matrix::$(echo "$json")"
- name: set up docker buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: upload packages
uses: actions/upload-artifact@v2
with:
name: build
path: build
- name: build package
run: ./tests/ci/setup.sh build
- name: set matrix for build
id: set-matrix
run: |
json=$(python .github/commands/matrix)
echo $json
echo "::set-output name=matrix::$(echo "$json")"
- name: upload packages
uses: actions/upload-artifact@v3
with:
name: build
path: build
unit-tests:
name: unit.${{ matrix.index }}
needs: build
runs-on: ubuntu-16.04
runs-on: ubuntu-18.04
strategy:
fail-fast: false
matrix: ${{fromJson(needs.build.outputs.matrix)}}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: download packages
uses: actions/download-artifact@v1
with:
name: build
- name: download packages
uses: actions/download-artifact@v1
with:
name: build
- name: ci-setup
run: ./.github/commands/ci-setup
- name: ci-setup
run: ./.github/commands/ci-setup
# - name: start ssh session
# uses: luchihoratiu/debug-via-ssh@main
# with:
# NGROK_AUTH_TOKEN: ${{ secrets.NGROK_AUTH_TOKEN }}
# SSH_PASS: ${{ secrets.SSH_PASS }}
# - name: start ssh session
# uses: luchihoratiu/debug-via-ssh@main
# with:
# NGROK_AUTH_TOKEN: ${{ secrets.NGROK_AUTH_TOKEN }}
# SSH_PASS: ${{ secrets.SSH_PASS }}
- name: run ci
timeout-minutes: 30
run: sudo -E ./.github/commands/ci-run ${{ matrix.index }}
- name: run ci
timeout-minutes: 30
run: sudo -E ./.github/commands/ci-run ${{ matrix.index }}
env:
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }}
SYNC_GITHUB_PASSWORD: ${{ secrets.SYNC_GITHUB_PASSWORD }}
SYNC_GITHUB_USERNAME: ${{ secrets.SYNC_GITHUB_USERNAME }}
- uses: actions/upload-artifact@v2
with:
name: test-results-${{ matrix.index }}
path: test-results
- uses: actions/upload-artifact@v3
with:
name: test-results-${{ matrix.index }}
path: test-results
docker-deploy-tests:
name: docker
needs: build
runs-on: ubuntu-16.04
runs-on: ubuntu-18.04
strategy:
fail-fast: false
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: download packages
uses: actions/download-artifact@v1
with:
name: build
- name: download packages
uses: actions/download-artifact@v1
with:
name: build
- name: ci-setup
run: ./.github/commands/ci-setup
- name: ci-setup
run: ./.github/commands/ci-setup
- name: test docker deploys
shell: bash
timeout-minutes: 20
run: |
./tests/ci/setup.sh docker
DOKKU_SSH_PORT=3022 sudo -E make -e test-ci-docker
- name: test docker deploys
shell: bash
timeout-minutes: 20
run: |
./tests/ci/setup.sh docker
DOKKU_SSH_PORT=3022 sudo -E make -e test-ci-docker
go-tests:
name: go.${{ matrix.index }}
needs: build
runs-on: ubuntu-16.04
runs-on: ubuntu-18.04
strategy:
fail-fast: false
matrix:
@@ -107,51 +121,51 @@ jobs:
GITHUB_NODE_INDEX: ${{ matrix.index }}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: download packages
uses: actions/download-artifact@v1
with:
name: build
- name: download packages
uses: actions/download-artifact@v1
with:
name: build
- name: ci-setup
run: ./.github/commands/ci-setup
- name: ci-setup
run: ./.github/commands/ci-setup
- name: run go tests
run: |
export CIRCLE_SHA1=$GITHUB_SHA
echo "CODACY_TOKEN=$CODACY_TOKEN"
if [ "$CODACY_TOKEN" != "" ]; then
echo "Detected value for CODACY_TOKEN"
fi
case $GITHUB_NODE_INDEX in
0) sudo -E make -e lint-ci go-tests ci-go-coverage ;;
1) sudo -E make -e deploy-test-checks-root deploy-test-config ;;
2) sudo -E make -e deploy-test-multi ;;
3) sudo -E make -e deploy-test-go-fail-predeploy deploy-test-go-fail-postdeploy ;;
esac
- uses: actions/upload-artifact@v2
with:
name: coverage.${{ matrix.index }}
path: test-results/coverage
- name: run go tests
run: |
export CIRCLE_SHA1=$GITHUB_SHA
echo "CODACY_TOKEN=$CODACY_TOKEN"
if [ "$CODACY_TOKEN" != "" ]; then
echo "Detected value for CODACY_TOKEN"
fi
case $GITHUB_NODE_INDEX in
0) sudo -E make -e lint-ci go-tests ci-go-coverage ;;
1) sudo -E make -e deploy-test-checks-root deploy-test-config ;;
2) sudo -E make -e deploy-test-multi ;;
3) sudo -E make -e deploy-test-go-fail-predeploy deploy-test-go-fail-postdeploy ;;
esac
- uses: actions/upload-artifact@v3
with:
name: coverage.${{ matrix.index }}
path: test-results/coverage
publish-test-results:
name: publish-test-results
needs: unit-tests
runs-on: ubuntu-16.04
runs-on: ubuntu-18.04
# the build-and-test job might be skipped, we don't need to run this job then
if: success() || failure()
steps:
- name: download test-results
uses: actions/download-artifact@v2
with:
path: test-results
- name: download test-results
uses: actions/download-artifact@v2
with:
path: test-results
- name: Publish Unit Test Results
uses: docker://ghcr.io/enricomi/publish-unit-test-result-action:v1.6
with:
check_name: Unit Test Results
github_token: ${{ secrets.GITHUB_TOKEN }}
files: test-results/**/*.xml
comment_on_pr: false
- name: Publish Unit Test Results
uses: docker://ghcr.io/enricomi/publish-unit-test-result-action:v1
with:
check_name: Unit Test Results
github_token: ${{ secrets.GITHUB_TOKEN }}
files: test-results/**/*.xml
comment_on_pr: false

View File

@@ -1,3 +1,4 @@
---
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
@@ -12,12 +13,13 @@
name: "CodeQL"
# yamllint disable-line rule:truthy
on:
push:
branches: [ master ]
branches: [master]
pull_request:
# The branches below must be a subset of the branches above
branches: [ master ]
branches: [master]
schedule:
- cron: '18 22 * * 2'
@@ -29,40 +31,40 @@ jobs:
strategy:
fail-fast: false
matrix:
language: [ 'go' ]
language: ['go']
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ]
# Learn more:
# https://docs.github.com/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Checkout repository
uses: actions/checkout@v3
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v1
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v2
# ℹ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
# ℹ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language
#- run: |
# make bootstrap
# make release
# - run: |
# make bootstrap
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2

39
.github/workflows/docs.yml vendored Normal file
View File

@@ -0,0 +1,39 @@
---
name: 'docs'
# yamllint disable-line rule:truthy
on:
push:
branches:
- master
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Cloning repo
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: "Setup python 3.10"
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Generate documentation
env:
BOT_GITHUB_USERNAME: ${{ secrets.HOMEBREW_GITHUB_USERNAME }}
BOT_GITHUB_API_TOKEN: ${{ secrets.HOMEBREW_GITHUB_API_TOKEN }}
run: |
git config --global user.name 'Dokku Bot'
git config --global user.email no-reply@dokku.com
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg
sudo chmod go+r /usr/share/keyrings/githubcli-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null
sudo apt update
sudo apt install gh -y
gh auth login --with-token <<<"$BOT_GITHUB_API_TOKEN"
contrib/build-docs

74
.github/workflows/lint.yml vendored Normal file
View File

@@ -0,0 +1,74 @@
---
name: 'lint'
# yamllint disable-line rule:truthy
on:
pull_request:
branches:
- '*'
push:
branches:
- 'master'
jobs:
hadolint:
name: hadolint
runs-on: ubuntu-20.04
steps:
- name: Clone
uses: actions/checkout@v3
- name: Run hadolint
uses: hadolint/hadolint-action@f988afea3da57ee48710a9795b6bb677cc901183
# v1.6.0 => d7b38582334d9ac11c12021c16f21d63015fa250
markdown-lint:
name: markdown-lint
runs-on: ubuntu-20.04
steps:
- name: Clone
uses: actions/checkout@v3
- name: Run markdown-lint
uses: avto-dev/markdown-lint@04d43ee9191307b50935a753da3b775ab695eceb
# v1.5.0 => 04d43ee9191307b50935a753da3b775ab695eceb
with:
config: '.github/linters/.markdown-lint.yml'
args: './README.md'
shellcheck:
name: shellcheck
runs-on: ubuntu-20.04
steps:
- name: Clone
uses: actions/checkout@v3
- name: Run shellcheck
uses: ludeeus/action-shellcheck@94e0aab03ca135d11a35e5bfc14e6746dc56e7e9
# 1.1.0 => 94e0aab03ca135d11a35e5bfc14e6746dc56e7e9
env:
# keep in sync with tests/shellcheck-exclude
SHELLCHECK_OPTS: -e SC1001 -e SC1003 -e SC1090 -e SC1091 -e SC1117 -e SC2029 -e SC2030 -e SC2031 -e SC2034 -e SC2046 -e SC2064 -e SC2068 -e SC2086 -e SC2119 -e SC2120 -e SC2128 -e SC2148 -e SC2153 -e SC2154 -e SC2155 -e SC2162 -e SC2174 -e SC2179 -e SC2191 -e SC2199 -e SC2207 -e SC2219 -e SC2220 -e SC2230 -e SC2231 -e SC2235 -e SC2267 -e SC2295
shfmt:
name: shfmt
runs-on: ubuntu-20.04
steps:
- name: Clone
uses: actions/checkout@v3
- name: Run shfmt
uses: luizm/action-sh-checker@edd0e45ecff35b05f162052b50df50976c1b74fc
# v0.3.0 => 7f44869033b40ee4ffe7dc76c87a1bc66e3d025a
env:
SHFMT_OPTS: -l -bn -ci -i 2 -d
with:
sh_checker_shellcheck_disable: true
yamllint:
name: yamllint
runs-on: ubuntu-20.04
steps:
- name: Clone
uses: actions/checkout@v3
- name: Run yamllint
uses: ibiqlik/action-yamllint@81e214fd484713882ce4237cb7cd264d550856cf
# v3.0.4 => ed2b6e911569708ed121c14b87d513860a7e36a7
with:
config_file: '.github/linters/.yamllint.yml'

105
.github/workflows/release.yml vendored Normal file
View File

@@ -0,0 +1,105 @@
---
name: 'release'
# yamllint disable-line rule:truthy
on:
workflow_dispatch:
inputs:
release_type:
description: 'Release type [build, betafish, patch, minor, major]'
required: true
default: 'build'
jobs:
release:
name: release
runs-on: ubuntu-20.04
env:
PACKAGECLOUD_TOKEN: ${{ secrets.PACKAGECLOUD_TOKEN }}
outputs:
version: ${{ steps.version.outputs.version }}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- uses: ruby/setup-ruby@v1
with:
ruby-version: 2.6
- name: login to docker hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: set up qemu
uses: docker/setup-qemu-action@v2
- name: set up docker buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: inspect builder
run: |
echo "Name: ${{ steps.buildx.outputs.name }}"
echo "Endpoint: ${{ steps.buildx.outputs.endpoint }}"
echo "Status: ${{ steps.buildx.outputs.status }}"
echo "Flags: ${{ steps.buildx.outputs.flags }}"
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
- name: install package_cloud
run: gem install package_cloud
- name: configure git
run: |
git config --global user.name 'Dokku Bot'
git config --global user.email no-reply@dokku.com
- name: build package
run: contrib/release-dokku ${{ github.event.inputs.release_type }}
- name: output version
id: version
run: echo "::set-output name=version::$(cat build/next-version)"
- name: upload packages
uses: actions/upload-artifact@v3
with:
name: build
path: build
bump-azure:
name: bump-azure
runs-on: ubuntu-20.04
needs: release
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Bump Azure Template
env:
BOT_GITHUB_USERNAME: ${{ secrets.HOMEBREW_GITHUB_USERNAME }}
BOT_GITHUB_API_TOKEN: ${{ secrets.HOMEBREW_GITHUB_API_TOKEN }}
run: |
VERSION=${{ needs.release.outputs.version }}
git config --global user.name 'Dokku Bot'
git config --global user.email no-reply@dokku.com
.github/commands/bump-azure "${VERSION:1}" "$BOT_GITHUB_USERNAME" "$BOT_GITHUB_API_TOKEN"
bump-formula:
name: bump-formula
runs-on: macos-latest
needs: release
steps:
- name: Bump Homebrew Formula
env:
HOMEBREW_GITHUB_USERNAME: ${{ secrets.HOMEBREW_GITHUB_USERNAME }}
HOMEBREW_GITHUB_API_TOKEN: ${{ secrets.HOMEBREW_GITHUB_API_TOKEN }}
run: |
git config --global user.name 'Dokku Bot'
git config --global user.email no-reply@dokku.com
curl -sSL https://github.com/dokku/netrc/releases/download/v0.4.1/netrc_0.4.1_darwin_x86_64.tgz | tar xvf -
mv netrc /usr/local/bin/netrc
netrc set github.com "$HOMEBREW_GITHUB_USERNAME" "$HOMEBREW_GITHUB_API_TOKEN"
brew tap dokku/repo
brew bump-formula-pr -f --no-browse --no-audit --no-fork --debug --verbose --url "https://github.com/dokku/dokku/archive/${{ needs.release.outputs.version }}.tar.gz" dokku/repo/dokku

2
.gitignore vendored
View File

@@ -3,6 +3,7 @@
.DS_Store
.ruby-version
.idea/
.vscode/
.vagrant
build/
data/
@@ -10,4 +11,3 @@ test-results/
stack.tgz
tmp
coverage.out
contrib/dokku-update-version

9
.shellcheckrc Normal file
View File

@@ -0,0 +1,9 @@
# SC1091 - Not following: FILE: does not exist (No such file or directory) - https://github.com/koalaman/shellcheck/wiki/SC1091
# - used for sourcing function files throughout the codebase
# SC2034 - VAR appears unused - https://github.com/koalaman/shellcheck/wiki/SC2034
# - used for declaring desc and deprecated function variables
# SC2064 - Use single quotes, otherwise this expands now rather than when signalled. - https://github.com/koalaman/shellcheck/wiki/SC2064
# - used for traps
# SC2155 - Declare and assign separately to avoid masking return values - https://github.com/koalaman/shellcheck/wiki/SC2155
# - used throughout the codebase
disable=SC1091,SC2034,SC2064,SC2155

View File

@@ -3,30 +3,28 @@
The Dokku project would love to welcome your contributions. There are
several ways to help out:
* Create an [issue](https://github.com/dokku/dokku/issues) on GitHub, if you
have found a bug
* Write [test cases](http://dokku.viewdocs.io/dokku/development/testing/) for open bug issues
* Write patches for open bug/feature issues, preferably with test cases
included
* Contribute to the [documentation](http://dokku.viewdocs.io/dokku/)
* Come up with new ways, non-commercial to show off our [lovely logo](https://avatars1.githubusercontent.com/u/13455795)
* Blog about different ways you are using dokku
* Sponsor the Dokku project financially on [OpenCollective](https://opencollective.com/dokku#support) or [Patreon](https://www.patreon.com/dokku)
- Create an [issue](https://github.com/dokku/dokku/issues) on GitHub, if you have found a bug
- Write [test cases](https://dokku.com/docs/development/testing/) for open bug issues
- Write patches for open bug/feature issues, preferably with test cases included
- Contribute to the [documentation](https://dokku.com/docs/)
- Come up with new ways, non-commercial to show off our [lovely logo](https://avatars1.githubusercontent.com/u/13455795)
- Blog about different ways you are using dokku
- Sponsor the Dokku project financially on [Github](https://github.com/sponsors/dokku), [OpenCollective](https://opencollective.com/dokku#support) or [Patreon](https://www.patreon.com/dokku)
There are a few guidelines that we need contributors to follow so that we have
a chance of keeping on top of things.
## Topics
* [Reporting Security Issues](#reporting-security-issues)
* [Reporting Issues](#reporting-other-issues)
* [Contributing](#contributing)
* [Making Changes](#making-changes)
* [Which branch to base the work](#which-branch-to-base-the-work)
* [Submitting Changes](#submitting-changes)
* [When will my change be merged?](#when-will-my-change-be-merged)
* [Running tests locally](#running-tests-locally)
* [Additional Resources](#additional-resources)
- [Reporting Security Issues](#reporting-security-issues)
- [Reporting Issues](#reporting-other-issues)
- [Contributing](#contributing)
- [Making Changes](#making-changes)
- [Which branch to base the work](#which-branch-to-base-the-work)
- [Submitting Changes](#submitting-changes)
- [When will my change be merged?](#when-will-my-change-be-merged)
- [Running tests locally](#running-tests-locally)
- [Additional Resources](#additional-resources)
## Reporting security issues
@@ -45,7 +43,7 @@ encounter an issue. We always appreciate a well-written, thorough bug report,
and will thank you for it!
Sometimes Dokku is missing a feature you need. In some cases, those features can
be found in pre-existing [plugins](http://dokku.viewdocs.io/dokku/plugins/),
be found in pre-existing [plugins](https://dokku.com/docs/plugins/),
and we encourage our users to create and contribute such packages. From time to
time, we will also pull plugins into the Dokku core when the task they solve is
a common one for our users.
@@ -65,37 +63,36 @@ you.
Before you contribute to the Dokku project, there are a few things that you'll
need to do
* Make sure you have a [GitHub account](https://github.com/signup/free).
* Submit an [issue](https://github.com/dokku/dokku/issues), assuming one
does not already exist.
* Clearly describe the issue including steps to reproduce when it is a bug.
* Make sure you fill in the earliest version that you know has the issue.
* Fork the repository on GitHub.
- Make sure you have a [GitHub account](https://github.com/signup/free).
- Submit an [issue](https://github.com/dokku/dokku/issues), assuming one does not already exist.
- Clearly describe the issue including steps to reproduce when it is a bug.
- Make sure you fill in the earliest version that you know has the issue.
- Fork the repository on GitHub.
### Making Changes
* Create a topic branch from where you want to base your work.
* This is usually the master branch.
* Only target an existing branch if you are certain your fix must be on that
- Create a topic branch from where you want to base your work.
- This is usually the master branch.
- Only target an existing branch if you are certain your fix must be on that
branch.
* To quickly create a topic branch based on master; `git checkout -b my_contribution origin/master`.
- To quickly create a topic branch based on master; `git checkout -b my_contribution origin/master`.
It is best to avoid working directly on the `master` branch. Doing so will
help avoid conflicts if you pull in updates from origin.
* Make commits of logical units. Implementing a new function and calling it in
- Make commits of logical units. Implementing a new function and calling it in
another file constitute a single logical unit of work.
* Before you make a pull request, squash your commits into logical units of work
- Before you make a pull request, squash your commits into logical units of work
using `git rebase -i` and `git push -f`.
* A majority of submissions should have a single commit, so if in doubt,
- A majority of submissions should have a single commit, so if in doubt,
squash your commits down to one commit.
* Check for unnecessary whitespace with `git diff --check` before committing.
* Use descriptive commit messages and reference the #issue number.
* Core test cases should continue to pass. You can run tests locally or enable
- Check for unnecessary whitespace with `git diff --check` before committing.
- Use descriptive commit messages and reference the #issue number.
- Core test cases should continue to pass. You can run tests locally or enable
[circle-ci](https://circleci.com/gh/dokku/dokku) for your fork, so all
tests and codesniffs will be executed.
* Your work should apply the [Dokku coding standards](https://github.com/progrium/bashstyle)
* Pull requests must be cleanly rebased on top of master without multiple branches
- Your work should apply the [Dokku coding standards](https://github.com/progrium/bashstyle)
- Pull requests must be cleanly rebased on top of master without multiple branches
mixed into the PR.
* **Git tip**: If your PR no longer merges cleanly, use `rebase master` in your
- **Git tip**: If your PR no longer merges cleanly, use `rebase master` in your
feature branch to update your pull request rather than `merge master`.
### Which branch to base the work
@@ -104,8 +101,8 @@ All changes should be be based on the latest master commit.
### Submitting Changes
* Push your changes to a topic branch in your fork of the repository.
* Submit a pull request to the repository on github, with the correct target
- Push your changes to a topic branch in your fork of the repository.
- Submit a pull request to the repository on github, with the correct target
branch.
### When will my change be merged?
@@ -129,13 +126,13 @@ requests:
### Running tests locally
Please read the [testing docs](http://dokku.viewdocs.io/dokku/development/testing/),
Please read the [testing docs](https://dokku.com/docs/development/testing/),
which contains test setup information as well as tips for running tests.
# Additional Resources
## Additional Resources
* [Dokku coding standards](https://github.com/progrium/bashstyle)
* [Existing issues](https://github.com/dokku/dokku/issues)
* [General GitHub documentation](https://help.github.com/)
* [GitHub pull request documentation](https://help.github.com/send-pull-requests/)
* [#dokku IRC channel on freenode.org](https://webchat.freenode.net/?channels=dokku)
- [Dokku coding standards](https://github.com/progrium/bashstyle)
- [Existing issues](https://github.com/dokku/dokku/issues)
- [General GitHub documentation](https://help.github.com/)
- [GitHub pull request documentation](https://help.github.com/send-pull-requests/)
- [Gliderlabs Slack in the #dokku channel](https://slack.dokku.com/)

View File

@@ -1,4 +1,4 @@
FROM phusion/baseimage:0.11
FROM phusion/baseimage:focal-1.2.0
CMD ["/sbin/my_init"]
@@ -11,46 +11,48 @@ ARG DOKKU_VHOST_ENABLE=false
ARG DOKKU_WEB_CONFIG=false
RUN addgroup --gid $DOKKU_GID dokku \
&& adduser --uid $DOKKU_UID --gid $DOKKU_GID --disabled-password --gecos "" "dokku"
&& adduser --uid $DOKKU_UID --gid $DOKKU_GID --disabled-password --gecos "" "dokku"
COPY ./tests/dhparam.pem /tmp/dhparam.pem
COPY ./build/dokku.deb /tmp/dokku.deb
COPY ./build/package/ /tmp
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
# hadolint ignore=DL3005,DL3008
RUN echo "dokku dokku/hostname string $DOKKU_HOSTNAME" | debconf-set-selections \
&& echo "dokku dokku/skip_key_file boolean $DOKKU_SKIP_KEY_FILE" | debconf-set-selections \
&& echo "dokku dokku/vhost_enable boolean $DOKKU_VHOST_ENABLE" | debconf-set-selections \
&& echo "dokku dokku/web_config boolean $DOKKU_WEB_CONFIG" | debconf-set-selections \
&& curl -sSL https://packagecloud.io/dokku/dokku/gpgkey | apt-key add - \
&& echo "deb https://packagecloud.io/dokku/dokku/ubuntu/ bionic main" | tee /etc/apt/sources.list.d/dokku.list \
&& mkdir -p /etc/nginx/ \
&& cp /tmp/dhparam.pem /etc/nginx/dhparam.pem \
&& apt-get update -qq \
&& apt-get upgrade -qq -y \
&& apt-get -qq -y --no-install-recommends --only-upgrade install openssl openssh-server \
&& apt-get -qq -y --no-install-recommends install rsync /tmp/dokku.deb \
&& apt-get purge -qq -y syslog-ng-core \
&& apt-get autoremove -qq -y \
&& apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
&& echo "dokku dokku/skip_key_file boolean $DOKKU_SKIP_KEY_FILE" | debconf-set-selections \
&& echo "dokku dokku/vhost_enable boolean $DOKKU_VHOST_ENABLE" | debconf-set-selections \
&& curl -sSL https://packagecloud.io/dokku/dokku/gpgkey | apt-key add - \
&& echo "deb https://packagecloud.io/dokku/dokku/ubuntu/ focal main" | tee /etc/apt/sources.list.d/dokku.list \
&& mkdir -p /etc/nginx/ \
&& cp /tmp/dhparam.pem /etc/nginx/dhparam.pem \
&& apt-get update \
&& apt-get upgrade -y \
&& apt-get -y --no-install-recommends --only-upgrade install openssl openssh-server \
&& apt-get -y --no-install-recommends install rsync "/tmp/dokku-$(dpkg --print-architecture).deb" \
&& apt-get purge -y syslog-ng-core \
&& apt-get autoremove -y \
&& apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
WORKDIR /tmp
COPY ./docker .
RUN \
rsync -a /tmp/ / \
&& rm -rf /tmp/* \
&& rm /etc/runit/runsvdir/default/sshd/down \
&& chown -R dokku:dokku /home/dokku/ \
&& mkdir -p /skel/etc /skel/home /skel/var/lib/dokku /var/log/services \
&& mv /etc/ssh /skel/etc/ssh \
&& mv /home/dokku /skel/home/dokku \
&& mv /var/lib/dokku/config /skel/var/lib/dokku/config \
&& mv /var/lib/dokku/data /skel/var/lib/dokku/data \
&& ln -sf /mnt/dokku/etc/ssh /etc/ssh \
&& ln -sf /mnt/dokku/home/dokku /home/dokku \
&& ln -sf /mnt/dokku/var/lib/dokku/config /var/lib/dokku/config \
&& ln -sf /mnt/dokku/var/lib/dokku/data /var/lib/dokku/data \
&& mv /etc/my_init.d/00_regen_ssh_host_keys.sh /etc/my_init.d/15_regen_ssh_host_keys \
&& rm -f /etc/nginx/sites-enabled/default /usr/share/nginx/html/index.html /etc/my_init.d/10_syslog-ng.init \
&& rm -f /usr/local/openresty/nginx/conf/sites-enabled/default /usr/share/openresty/html/index.html \
&& sed -i '/imklog/d' /etc/rsyslog.conf \
&& rm -f /var/log/btmp /var/log/wtmp /var/log/*log /var/log/apt/* /var/log/dokku/*.log /var/log/nginx/* /var/log/openresty/*
rsync -a /tmp/ / \
&& rm -rf /tmp/* \
&& rm /etc/runit/runsvdir/default/sshd/down \
&& chown -R dokku:dokku /home/dokku/ \
&& mkdir -p /skel/etc /skel/home /skel/var/lib/dokku /var/log/services \
&& mv /etc/ssh /skel/etc/ssh \
&& mv /home/dokku /skel/home/dokku \
&& mv /var/lib/dokku/config /skel/var/lib/dokku/config \
&& mv /var/lib/dokku/data /skel/var/lib/dokku/data \
&& ln -sf /mnt/dokku/etc/ssh /etc/ssh \
&& ln -sf /mnt/dokku/home/dokku /home/dokku \
&& ln -sf /mnt/dokku/var/lib/dokku/config /var/lib/dokku/config \
&& ln -sf /mnt/dokku/var/lib/dokku/data /var/lib/dokku/data \
&& mv /etc/my_init.d/00_regen_ssh_host_keys.sh /etc/my_init.d/15_regen_ssh_host_keys \
&& rm -f /etc/nginx/sites-enabled/default /usr/share/nginx/html/index.html /etc/my_init.d/10_syslog-ng.init \
&& rm -f /usr/local/openresty/nginx/conf/sites-enabled/default /usr/share/openresty/html/index.html \
&& sed -i '/imklog/d' /etc/rsyslog.conf \
&& rm -f /var/log/btmp /var/log/wtmp /var/log/*log /var/log/apt/* /var/log/dokku/*.log /var/log/nginx/* /var/log/openresty/*

1377
HISTORY.md

File diff suppressed because it is too large Load Diff

View File

@@ -2,7 +2,7 @@
>
> If you'd like to sponsor specific functionality, see the project's [Sponsoring](https://github.com/dokku/.github/blob/master/SPONSORING.md) document.
>
> If you need help figuring out how to use a specific buildpack, are seeing an issue in during the buildpack process, or are having issues using multiple buildpacks, please see our [slack channels or github discussion board](http://dokku.viewdocs.io/dokku/getting-started/where-to-get-help/#monitored-locations). Issues pertaining to buildpacks may be closed and locked.
> If you need help figuring out how to use a specific buildpack, are seeing an issue in during the buildpack process, or are having issues using multiple buildpacks, please see our [chat channels or github discussion board](https://dokku.com/docs/getting-started/where-to-get-help/#monitored-locations). Issues pertaining to buildpacks may be closed and locked.
>
> If you need support for a version of Dokku that is more than a year old, your issue may be closed without an answer. Please upgrade to a recent version.
@@ -31,7 +31,7 @@
> For problems affecting all applications, the report output for a broken application is useful for our debugging.
> In these cases, you may run `dokku report` without any arguments to display the top-level reporting information.
### How (deb/make/rpm) and where (AWS, VirtualBox, physical, etc.) was Dokku installed?:
### How (deb/make) and where (AWS, VirtualBox, physical, etc.) was Dokku installed?
### Additional information

View File

@@ -1,18 +1,24 @@
DOKKU_VERSION ?= master
DOCKER_IMAGE_LABELER_VERSION ?= 0.2.2
HEROKUISH_VERSION ?= 0.5.25
PLUGN_VERSION ?= 0.6.1
PROCFILE_VERSION ?= 0.11.0
SIGIL_VERSION ?= 0.6.0
SSHCOMMAND_VERSION ?= 0.12.0
DOCKER_IMAGE_LABELER_URL ?= https://github.com/dokku/docker-image-labeler/releases/download/v${DOCKER_IMAGE_LABELER_VERSION}/docker-image-labeler_${DOCKER_IMAGE_LABELER_VERSION}_linux_x86_64.tgz
PLUGN_URL ?= https://github.com/dokku/plugn/releases/download/v${PLUGN_VERSION}/plugn_${PLUGN_VERSION}_linux_x86_64.tgz
PROCFILE_UTIL_URL ?= https://github.com/josegonzalez/go-procfile-util/releases/download/v${PROCFILE_VERSION}/procfile-util_${PROCFILE_VERSION}_linux_x86_64.tgz
SIGIL_URL ?= https://github.com/gliderlabs/sigil/releases/download/v${SIGIL_VERSION}/sigil_${SIGIL_VERSION}_Linux_x86_64.tgz
TARGETARCH ?= amd64
DOCKER_IMAGE_LABELER_VERSION ?= 0.5.0
HEROKUISH_VERSION ?= 0.5.37
LAMBDA_BUILDER_VERSION ?= 0.4.0
NETRC_VERSION ?= 0.6.0
PLUGN_VERSION ?= 0.12.0
PROCFILE_VERSION ?= 0.15.0
SIGIL_VERSION ?= 0.9.0
SSHCOMMAND_VERSION ?= 0.16.0
DOCKER_IMAGE_LABELER_URL ?= https://github.com/dokku/docker-image-labeler/releases/download/v${DOCKER_IMAGE_LABELER_VERSION}/docker-image-labeler_${DOCKER_IMAGE_LABELER_VERSION}_linux_${TARGETARCH}.tgz
LAMBDA_BUILDER_URL ?= https://github.com/dokku/lambda-builder/releases/download/v${LAMBDA_BUILDER_VERSION}/lambda-builder_${LAMBDA_BUILDER_VERSION}_linux_${TARGETARCH}.tgz
NETRC_URL ?= https://github.com/dokku/netrc/releases/download/v${NETRC_VERSION}/netrc_${NETRC_VERSION}_linux_${TARGETARCH}.tgz
PLUGN_URL ?= https://github.com/dokku/plugn/releases/download/v${PLUGN_VERSION}/plugn_${PLUGN_VERSION}_linux_${TARGETARCH}.tgz
PROCFILE_UTIL_URL ?= https://github.com/josegonzalez/go-procfile-util/releases/download/v${PROCFILE_VERSION}/procfile-util_${PROCFILE_VERSION}_linux_${TARGETARCH}.tgz
SIGIL_URL ?= https://github.com/gliderlabs/sigil/releases/download/v${SIGIL_VERSION}/gliderlabs-sigil_${SIGIL_VERSION}_linux_${TARGETARCH}.tgz
SSHCOMMAND_URL ?= https://github.com/dokku/sshcommand/releases/download/v${SSHCOMMAND_VERSION}/sshcommand_${SSHCOMMAND_VERSION}_linux_x86_64.tgz
STACK_URL ?= https://github.com/gliderlabs/herokuish.git
PREBUILT_STACK_URL ?= gliderlabs/herokuish:latest
PREBUILT_STACK_URL ?= gliderlabs/herokuish:latest-20
DOKKU_LIB_ROOT ?= /var/lib/dokku
PLUGINS_PATH ?= ${DOKKU_LIB_ROOT}/plugins
CORE_PLUGINS_PATH ?= ${DOKKU_LIB_ROOT}/core-plugins
@@ -34,12 +40,12 @@ endif
include common.mk
.PHONY: all apt-update install version copyfiles copyplugin man-db plugins dependencies docker-image-labeler sshcommand procfile-util plugn docker aufs stack count dokku-installer vagrant-acl-add vagrant-dokku go-build
.PHONY: all apt-update install version copyfiles copyplugin man-db plugins dependencies docker-image-labeler lambda-builder netrc sshcommand procfile-util plugn docker aufs stack count vagrant-acl-add vagrant-dokku go-build
include docs.mk
include tests.mk
include package.mk
include deb.mk
include rpm.mk
include arch.mk
all:
@@ -108,7 +114,11 @@ endif
addman: help2man man-db
mkdir -p /usr/local/share/man/man1
ifneq ("$(wildcard /usr/local/share/man/man1/dokku.1-generated)","")
cp /usr/local/share/man/man1/dokku.1-generated /usr/local/share/man/man1/dokku.1
else
help2man -Nh help -v version -n "configure and get information from your dokku installation" -o /usr/local/share/man/man1/dokku.1 dokku
endif
mandb
version:
@@ -125,12 +135,15 @@ plugin-dependencies: plugn procfile-util
plugins: plugn procfile-util docker
sudo -E dokku plugin:install --core
dependencies: apt-update docker-image-labeler sshcommand plugn procfile-util docker help2man man-db sigil dos2unix jq
dependencies: apt-update docker-image-labeler lambda-builder netrc sshcommand plugn procfile-util docker help2man man-db sigil dos2unix jq parallel
$(MAKE) -e stack
apt-update:
apt-get update -qq
parallel:
apt-get -qq -y --no-install-recommends install parallel
jq:
apt-get -qq -y --no-install-recommends install jq
@@ -146,24 +159,38 @@ man-db:
docker-image-labeler:
wget -qO /tmp/docker-image-labeler_latest.tgz ${DOCKER_IMAGE_LABELER_URL}
tar xzf /tmp/docker-image-labeler_latest.tgz -C /usr/local/bin
mv /usr/local/bin/docker-image-labeler-${TARGETARCH} /usr/local/bin/docker-image-labeler
lambda-builder:
wget -qO /tmp/lambda-builder_latest.tgz ${LAMBDA_BUILDER_URL}
tar xzf /tmp/lambda-builder_latest.tgz -C /usr/local/bin
mv /usr/local/bin/lambda-builder-${TARGETARCH} /usr/local/bin/lambda-builder
netrc:
wget -qO /tmp/netrc_latest.tgz ${NETRC_URL}
tar xzf /tmp/netrc_latest.tgz -C /usr/local/bin
mv /usr/local/bin/netrc-${TARGETARCH} /usr/local/bin/netrc
procfile-util:
wget -qO /tmp/procfile-util_latest.tgz ${PROCFILE_UTIL_URL}
tar xzf /tmp/procfile-util_latest.tgz -C /usr/local/bin
mv /usr/local/bin/procfile-util-${TARGETARCH} /usr/local/bin/procfile-util
plugn:
wget -qO /tmp/plugn_latest.tgz ${PLUGN_URL}
tar xzf /tmp/plugn_latest.tgz -C /usr/local/bin
mv /usr/local/bin/plugn-${TARGETARCH} /usr/local/bin/plugn
sigil:
wget -qO /tmp/sigil_latest.tgz ${SIGIL_URL}
tar xzf /tmp/sigil_latest.tgz -C /usr/local/bin
mv /usr/local/bin/gliderlabs-sigil-${TARGETARCH} /usr/local/bin/sigil
sshcommand:
wget -qO /tmp/sshcommand_latest.tgz ${SSHCOMMAND_URL}
tar xzf /tmp/sshcommand_latest.tgz -C /usr/local/bin
sshcommand create dokku /usr/local/bin/dokku
procfile-util:
wget -qO /tmp/procfile-util_latest.tgz ${PROCFILE_UTIL_URL}
tar xzf /tmp/procfile-util_latest.tgz -C /usr/local/bin
plugn:
wget -qO /tmp/plugn_latest.tgz ${PLUGN_URL}
tar xzf /tmp/plugn_latest.tgz -C /usr/local/bin
sigil:
wget -qO /tmp/sigil_latest.tgz ${SIGIL_URL}
tar xzf /tmp/sigil_latest.tgz -C /usr/local/bin
docker:
apt-get -qq -y --no-install-recommends install curl
grep -i -E "^docker" /etc/group || groupadd docker
@@ -200,12 +227,6 @@ count:
@echo "Test lines:"
@find tests -type f -not -name .DS_Store | xargs cat | sed 's/^$$//g' | wc -l
dokku-installer:
test -f /var/lib/dokku/.dokku-installer-created || python contrib/dokku-installer.py onboot
test -f /var/lib/dokku/.dokku-installer-created || service dokku-installer start
test -f /var/lib/dokku/.dokku-installer-created || service nginx reload
test -f /var/lib/dokku/.dokku-installer-created || touch /var/lib/dokku/.dokku-installer-created
vagrant-acl-add:
vagrant ssh -- sudo sshcommand acl-add dokku $(USER)

View File

@@ -1 +0,0 @@
**Note:** If this PR is just doc changes, please put [ci skip] in the body that way tests do not run.

139
README.md
View File

@@ -1,10 +1,10 @@
# Dokku
[![Build Status](https://github.com/dokku/dokku/workflows/CI/badge.svg)](https://github.com/dokku/dokku/actions?query=workflow%3ACI)
[![Ubuntu Package](https://img.shields.io/badge/package-ubuntu-brightgreen.svg?style=flat-square "Ubuntu Package")](https://packagecloud.io/dokku/dokku)
[![Arch Package](https://img.shields.io/badge/package-arch-brightgreen.svg?style=flat-square "Arch Package")](https://aur.archlinux.org/packages/dokku/)
[![IRC Network](https://img.shields.io/badge/irc-freenode-blue.svg?style=flat-square "IRC Freenode")](https://webchat.freenode.net/?channels=dokku)
[![Slack Group](https://img.shields.io/badge/irc-slack-blue.svg?style=flat-square "Slack Group")](https://glider-slackin.herokuapp.com/)
[![Documentation](https://img.shields.io/badge/docs-viewdocs-blue.svg?style=flat-square "Viewdocs")](http://dokku.viewdocs.io/dokku/)
[![Slack Group](https://img.shields.io/badge/irc-slack-blue.svg?style=flat-square "Slack Group")](https://slack.dokku.com/)
[![Documentation](https://img.shields.io/badge/docs-site-blue.svg?style=flat-square "Site")](https://dokku.com/docs/getting-started/installation/)
[![OpenCollective](https://opencollective.com/dokku/sponsors/badge.svg?style=flat-square)](#sponsors)
[![OpenCollective](https://opencollective.com/dokku/backers/badge.svg?style=flat-square)](#backers)
[![Patreon](https://img.shields.io/badge/patreon-donate-green.svg?style=flat-square)](https://www.patreon.com/dokku/)
@@ -13,82 +13,69 @@ Docker powered mini-Heroku. The smallest PaaS implementation you've ever seen.
## Sponsors
Become a sponsor and get your logo on our README on Github with a link to your site. [[Become a sponsor](https://opencollective.com/dokku#sponsor)]
<a href="https://opencollective.com/dokku/sponsor/0/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/0/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/1/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/1/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/2/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/2/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/3/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/3/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/4/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/4/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/5/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/5/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/6/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/6/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/7/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/7/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/8/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/8/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/9/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/9/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/10/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/10/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/11/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/11/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/12/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/12/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/13/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/13/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/14/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/14/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/15/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/15/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/16/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/16/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/17/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/17/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/18/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/18/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/19/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/19/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/20/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/20/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/21/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/21/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/22/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/22/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/23/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/23/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/24/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/24/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/25/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/25/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/26/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/26/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/27/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/27/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/28/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/28/avatar.svg"></a>
<a href="https://opencollective.com/dokku/sponsor/29/website" target="_blank"><img src="https://opencollective.com/dokku/sponsor/29/avatar.svg"></a>
Become a sponsor and get your logo on our README on GitHub with a link to your site. [[Become a sponsor](https://opencollective.com/dokku#sponsor)]
[![OpenCollective Sponsor 0](https://opencollective.com/dokku/sponsor/0/avatar.svg)](https://opencollective.com/dokku/sponsor/0/website)
[![OpenCollective Sponsor 1](https://opencollective.com/dokku/sponsor/1/avatar.svg)](https://opencollective.com/dokku/sponsor/1/website)
[![OpenCollective Sponsor 2](https://opencollective.com/dokku/sponsor/2/avatar.svg)](https://opencollective.com/dokku/sponsor/2/website)
[![OpenCollective Sponsor 3](https://opencollective.com/dokku/sponsor/3/avatar.svg)](https://opencollective.com/dokku/sponsor/3/website)
[![OpenCollective Sponsor 4](https://opencollective.com/dokku/sponsor/4/avatar.svg)](https://opencollective.com/dokku/sponsor/4/website)
[![OpenCollective Sponsor 5](https://opencollective.com/dokku/sponsor/5/avatar.svg)](https://opencollective.com/dokku/sponsor/5/website)
[![OpenCollective Sponsor 6](https://opencollective.com/dokku/sponsor/6/avatar.svg)](https://opencollective.com/dokku/sponsor/6/website)
[![OpenCollective Sponsor 7](https://opencollective.com/dokku/sponsor/7/avatar.svg)](https://opencollective.com/dokku/sponsor/7/website)
[![OpenCollective Sponsor 8](https://opencollective.com/dokku/sponsor/8/avatar.svg)](https://opencollective.com/dokku/sponsor/8/website)
[![OpenCollective Sponsor 9](https://opencollective.com/dokku/sponsor/9/avatar.svg)](https://opencollective.com/dokku/sponsor/9/website)
[![OpenCollective Sponsor 10](https://opencollective.com/dokku/sponsor/10/avatar.svg)](https://opencollective.com/dokku/sponsor/10/website)
[![OpenCollective Sponsor 11](https://opencollective.com/dokku/sponsor/11/avatar.svg)](https://opencollective.com/dokku/sponsor/11/website)
[![OpenCollective Sponsor 12](https://opencollective.com/dokku/sponsor/12/avatar.svg)](https://opencollective.com/dokku/sponsor/12/website)
[![OpenCollective Sponsor 13](https://opencollective.com/dokku/sponsor/13/avatar.svg)](https://opencollective.com/dokku/sponsor/13/website)
[![OpenCollective Sponsor 14](https://opencollective.com/dokku/sponsor/14/avatar.svg)](https://opencollective.com/dokku/sponsor/14/website)
[![OpenCollective Sponsor 15](https://opencollective.com/dokku/sponsor/15/avatar.svg)](https://opencollective.com/dokku/sponsor/5/website)
[![OpenCollective Sponsor 6](https://opencollective.com/dokku/sponsor/16/avatar.svg)](https://opencollective.com/dokku/sponsor/16/website)
[![OpenCollective Sponsor 17](https://opencollective.com/dokku/sponsor/17/avatar.svg)](https://opencollective.com/dokku/sponsor/17/website)
[![OpenCollective Sponsor 18](https://opencollective.com/dokku/sponsor/18/avatar.svg)](https://opencollective.com/dokku/sponsor/18/website)
## Backers
Support us with a monthly donation and help us continue our activities. [[Become a backer](https://opencollective.com/dokku#backer)]
<a href="https://opencollective.com/dokku/backer/0/website" target="_blank"><img src="https://opencollective.com/dokku/backer/0/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/1/website" target="_blank"><img src="https://opencollective.com/dokku/backer/1/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/2/website" target="_blank"><img src="https://opencollective.com/dokku/backer/2/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/3/website" target="_blank"><img src="https://opencollective.com/dokku/backer/3/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/4/website" target="_blank"><img src="https://opencollective.com/dokku/backer/4/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/5/website" target="_blank"><img src="https://opencollective.com/dokku/backer/5/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/6/website" target="_blank"><img src="https://opencollective.com/dokku/backer/6/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/7/website" target="_blank"><img src="https://opencollective.com/dokku/backer/7/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/8/website" target="_blank"><img src="https://opencollective.com/dokku/backer/8/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/9/website" target="_blank"><img src="https://opencollective.com/dokku/backer/9/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/10/website" target="_blank"><img src="https://opencollective.com/dokku/backer/10/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/11/website" target="_blank"><img src="https://opencollective.com/dokku/backer/11/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/12/website" target="_blank"><img src="https://opencollective.com/dokku/backer/12/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/13/website" target="_blank"><img src="https://opencollective.com/dokku/backer/13/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/14/website" target="_blank"><img src="https://opencollective.com/dokku/backer/14/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/15/website" target="_blank"><img src="https://opencollective.com/dokku/backer/15/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/16/website" target="_blank"><img src="https://opencollective.com/dokku/backer/16/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/17/website" target="_blank"><img src="https://opencollective.com/dokku/backer/17/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/18/website" target="_blank"><img src="https://opencollective.com/dokku/backer/18/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/19/website" target="_blank"><img src="https://opencollective.com/dokku/backer/19/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/20/website" target="_blank"><img src="https://opencollective.com/dokku/backer/20/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/21/website" target="_blank"><img src="https://opencollective.com/dokku/backer/21/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/22/website" target="_blank"><img src="https://opencollective.com/dokku/backer/22/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/23/website" target="_blank"><img src="https://opencollective.com/dokku/backer/23/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/24/website" target="_blank"><img src="https://opencollective.com/dokku/backer/24/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/25/website" target="_blank"><img src="https://opencollective.com/dokku/backer/25/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/26/website" target="_blank"><img src="https://opencollective.com/dokku/backer/26/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/27/website" target="_blank"><img src="https://opencollective.com/dokku/backer/27/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/28/website" target="_blank"><img src="https://opencollective.com/dokku/backer/28/avatar.svg"></a>
<a href="https://opencollective.com/dokku/backer/29/website" target="_blank"><img src="https://opencollective.com/dokku/backer/29/avatar.svg"></a>
[![OpenCollective Backer 0](https://opencollective.com/dokku/backer/0/avatar.svg)](https://opencollective.com/dokku/backer/0/website)
[![OpenCollective Backer 1](https://opencollective.com/dokku/backer/1/avatar.svg)](https://opencollective.com/dokku/backer/1/website)
[![OpenCollective Backer 2](https://opencollective.com/dokku/backer/2/avatar.svg)](https://opencollective.com/dokku/backer/2/website)
[![OpenCollective Backer 3](https://opencollective.com/dokku/backer/3/avatar.svg)](https://opencollective.com/dokku/backer/3/website)
[![OpenCollective Backer 4](https://opencollective.com/dokku/backer/4/avatar.svg)](https://opencollective.com/dokku/backer/4/website)
[![OpenCollective Backer 5](https://opencollective.com/dokku/backer/5/avatar.svg)](https://opencollective.com/dokku/backer/5/website)
[![OpenCollective Backer 6](https://opencollective.com/dokku/backer/6/avatar.svg)](https://opencollective.com/dokku/backer/6/website)
[![OpenCollective Backer 7](https://opencollective.com/dokku/backer/7/avatar.svg)](https://opencollective.com/dokku/backer/7/website)
[![OpenCollective Backer 8](https://opencollective.com/dokku/backer/8/avatar.svg)](https://opencollective.com/dokku/backer/8/website)
[![OpenCollective Backer 9](https://opencollective.com/dokku/backer/9/avatar.svg)](https://opencollective.com/dokku/backer/9/website)
[![OpenCollective Backer 10](https://opencollective.com/dokku/backer/10/avatar.svg)](https://opencollective.com/dokku/backer/10/website)
[![OpenCollective Backer 11](https://opencollective.com/dokku/backer/11/avatar.svg)](https://opencollective.com/dokku/backer/11/website)
[![OpenCollective Backer 12](https://opencollective.com/dokku/backer/12/avatar.svg)](https://opencollective.com/dokku/backer/12/website)
[![OpenCollective Backer 13](https://opencollective.com/dokku/backer/13/avatar.svg)](https://opencollective.com/dokku/backer/13/website)
[![OpenCollective Backer 14](https://opencollective.com/dokku/backer/14/avatar.svg)](https://opencollective.com/dokku/backer/14/website)
[![OpenCollective Backer 15](https://opencollective.com/dokku/backer/15/avatar.svg)](https://opencollective.com/dokku/backer/15/website)
[![OpenCollective Backer 16](https://opencollective.com/dokku/backer/16/avatar.svg)](https://opencollective.com/dokku/backer/16/website)
[![OpenCollective Backer 17](https://opencollective.com/dokku/backer/17/avatar.svg)](https://opencollective.com/dokku/backer/17/website)
[![OpenCollective Backer 18](https://opencollective.com/dokku/backer/18/avatar.svg)](https://opencollective.com/dokku/backer/18/website)
[![OpenCollective Backer 19](https://opencollective.com/dokku/backer/19/avatar.svg)](https://opencollective.com/dokku/backer/19/website)
[![OpenCollective Backer 20](https://opencollective.com/dokku/backer/20/avatar.svg)](https://opencollective.com/dokku/backer/20/website)
[![OpenCollective Backer 21](https://opencollective.com/dokku/backer/21/avatar.svg)](https://opencollective.com/dokku/backer/21/website)
[![OpenCollective Backer 22](https://opencollective.com/dokku/backer/22/avatar.svg)](https://opencollective.com/dokku/backer/22/website)
[![OpenCollective Backer 23](https://opencollective.com/dokku/backer/23/avatar.svg)](https://opencollective.com/dokku/backer/23/website)
[![OpenCollective Backer 24](https://opencollective.com/dokku/backer/24/avatar.svg)](https://opencollective.com/dokku/backer/24/website)
[![OpenCollective Backer 25](https://opencollective.com/dokku/backer/25/avatar.svg)](https://opencollective.com/dokku/backer/25/website)
[![OpenCollective Backer 26](https://opencollective.com/dokku/backer/26/avatar.svg)](https://opencollective.com/dokku/backer/26/website)
[![OpenCollective Backer 27](https://opencollective.com/dokku/backer/27/avatar.svg)](https://opencollective.com/dokku/backer/27/website)
[![OpenCollective Backer 28](https://opencollective.com/dokku/backer/28/avatar.svg)](https://opencollective.com/dokku/backer/28/website)
[![OpenCollective Backer 29](https://opencollective.com/dokku/backer/29/avatar.svg)](https://opencollective.com/dokku/backer/29/website)
## Requirements
A fresh VM running any of the following operating systems:
- Ubuntu 16.04/18.04/20.04 x64 - Any currently supported release
- Debian 9+ x64
- CentOS 7 x64 *(experimental)*
- Ubuntu 18.04 / 20.04 / 22.04 x64 - Any currently supported release
- Debian 10+ x64
- Arch Linux x64 *(experimental)*
An SSH keypair that can be used for application deployment. If this exists before installation, it will be automatically imported into dokku.
@@ -99,29 +86,29 @@ Otherwise, you will need to import the keypair manually after installation using
To install the latest stable release, run the following commands as a user who has access to `sudo`:
```shell
wget https://raw.githubusercontent.com/dokku/dokku/v0.23.3/bootstrap.sh
sudo DOKKU_TAG=v0.23.3 bash bootstrap.sh
wget https://raw.githubusercontent.com/dokku/dokku/v0.28.2/bootstrap.sh
sudo DOKKU_TAG=v0.28.2 bash bootstrap.sh
```
You can then proceed to the ip address or domain name associated with your server to complete the web-based installation.
You can then proceed to configure your server domain (via `dokku domains:set-global`) and user access (via `dokku ssh-keys:add`) to complete the installation.
If you wish for a more unattended installation method, see [these](http://dokku.viewdocs.io/dokku/getting-started/install/debian/#unattended-installation) docs.
If you wish for a more unattended installation method, see [these](https://dokku.com/docs/getting-started/install/debian/#unattended-installation) docs.
### Upgrade
[View the docs](http://dokku.viewdocs.io/dokku/getting-started/upgrading/) for upgrading from an older version of Dokku.
[View the docs](https://dokku.com/docs/getting-started/upgrading/) for upgrading from an older version of Dokku.
## Documentation
Full documentation - including advanced installation docs - are available online at [http://dokku.viewdocs.io/dokku/](http://dokku.viewdocs.io/dokku/).
Full documentation - including advanced installation docs - are available online at <https://dokku.com/docs/getting-started/installation/>.
## Support
You can use [Github Issues](https://github.com/dokku/dokku/issues), check [Troubleshooting](http://dokku.viewdocs.io/dokku/getting-started/troubleshooting/) in the documentation, or join us on [freenode in #dokku](https://webchat.freenode.net/?channels=%23dokku).
You can use [GitHub Issues](https://github.com/dokku/dokku/issues), check [Troubleshooting](https://dokku.com/docs/getting-started/troubleshooting/) in the documentation, or join us on [Gliderlabs Slack in the #dokku channel](https://slack.dokku.com/).
## Contribution
After checking [Github Issues](https://github.com/dokku/dokku/issues), the [Troubleshooting Guide](http://dokku.viewdocs.io/dokku/getting-started/troubleshooting/) or having a chat with us on [freenode in #dokku](https://webchat.freenode.net/?channels=%23dokku), feel free to fork and create a Pull Request.
After checking [GitHub Issues](https://github.com/dokku/dokku/issues), the [Troubleshooting Guide](https://dokku.com/docs/getting-started/troubleshooting/) or having a chat with us on [Gliderlabs Slack in the #dokku channel](https://slack.dokku.com/), feel free to fork and create a Pull Request.
While we may not merge your PR as is, they serve to start conversations and improve the general Dokku experience for all users.

25
Vagrantfile vendored
View File

@@ -6,7 +6,6 @@ BOX_CPUS = ENV["BOX_CPUS"] || "1"
BOX_MEMORY = ENV["BOX_MEMORY"] || "1024"
DOKKU_DOMAIN = ENV["DOKKU_DOMAIN"] || "dokku.me"
DOKKU_IP = ENV["DOKKU_IP"] || "10.0.0.2"
FORWARDED_PORT = (ENV["FORWARDED_PORT"] || '8080').to_i
PREBUILT_STACK_URL = File.exist?("#{File.dirname(__FILE__)}/stack.tgz") ? 'file:///root/dokku/stack.tgz' : nil
PUBLIC_KEY_PATH = "#{Dir.home}/.ssh/id_rsa.pub"
@@ -43,7 +42,6 @@ Vagrant::configure("2") do |config|
config.vm.define "dokku", primary: true do |vm|
vm.vm.synced_folder File.dirname(__FILE__), "/root/dokku"
vm.vm.network :forwarded_port, guest: 80, host: FORWARDED_PORT
vm.vm.hostname = "#{DOKKU_DOMAIN}"
vm.vm.network :private_network, ip: DOKKU_IP
@@ -56,7 +54,6 @@ Vagrant::configure("2") do |config|
end
vm.vm.provision :shell, :inline => "export DEBIAN_FRONTEND=noninteractive && apt-get update -qq >/dev/null && apt-get -qq -y --no-install-recommends install git build-essential >/dev/null && cd /root/dokku && #{make_cmd}"
vm.vm.provision :shell, :inline => "cd /root/dokku && make dokku-installer"
vm.vm.provision :shell do |s|
s.inline = <<-EOT
echo '"\e[5~": history-search-backward' > /root/.inputrc
@@ -65,42 +62,33 @@ Vagrant::configure("2") do |config|
echo 'set completion-ignore-case on' >> /root/.inputrc
EOT
end
if Pathname.new(PUBLIC_KEY_PATH).exist?
vm.vm.provision :shell, :inline => "echo 'Importing ssh key into dokku' && cat /root/.ssh/authorized_keys | dokku ssh-keys:add admin"
end
end
# For windows users. Sharing folder from windows creates problem with sym links and so, sync the repo instead from GOS.
config.vm.define "dokku-windows", autostart: false do |vm|
vm.vm.network :forwarded_port, guest: 80, host: FORWARDED_PORT
vm.vm.hostname = "#{DOKKU_DOMAIN}"
vm.vm.network :private_network, ip: DOKKU_IP
vm.vm.provision :shell, :inline => "export DEBIAN_FRONTEND=noninteractive && apt-get update -qq >/dev/null && apt-get -qq -y --no-install-recommends install git dos2unix >/dev/null"
vm.vm.provision :shell, :inline => "cd /vagrant/ && export DOKKU_BRANCH=`git symbolic-ref -q --short HEAD 2>/dev/null` && export DOKKU_TAG=`git describe --tags --exact-match 2>/dev/null` && cd /root/ && cp /vagrant/bootstrap.sh ./ && dos2unix bootstrap.sh && bash bootstrap.sh"
vm.vm.provision :shell, :inline => "cd /root/dokku && make dokku-installer"
end
config.vm.define "dokku-deb", autostart: false do |vm|
vm.vm.synced_folder File.dirname(__FILE__), "/root/dokku"
vm.vm.network :forwarded_port, guest: 80, host: FORWARDED_PORT
vm.vm.hostname = "#{DOKKU_DOMAIN}"
vm.vm.network :private_network, ip: DOKKU_IP
vm.vm.provision :shell, :inline => "cd /root/dokku && make install-from-deb"
end
config.vm.define "dokku-rpm", autostart: false do |vm|
vm.vm.box = "centos/7"
vm.vm.synced_folder File.dirname(__FILE__), "/root/dokku"
vm.vm.network :forwarded_port, guest: 80, host: FORWARDED_PORT
vm.vm.hostname = "#{DOKKU_DOMAIN}"
vm.vm.network :private_network, ip: DOKKU_IP
vm.vm.provision :shell, :inline => "cd /root/dokku && bash bootstrap.sh"
end
config.vm.define "build", autostart: false do |vm|
vm.vm.synced_folder File.dirname(__FILE__), "/root/dokku"
vm.vm.network :forwarded_port, guest: 80, host: FORWARDED_PORT
vm.vm.hostname = "#{DOKKU_DOMAIN}"
vm.vm.network :private_network, ip: DOKKU_IP
vm.vm.provision :shell, :inline => "export DEBIAN_FRONTEND=noninteractive && apt-get update -qq >/dev/null && apt-get -qq -y --no-install-recommends install git >/dev/null && cd /root/dokku && #{make_cmd}"
vm.vm.provision :shell, :inline => "export IS_RELEASE=true && cd /root/dokku && make deb-all rpm-all"
vm.vm.provision :shell, :inline => "export IS_RELEASE=true && cd /root/dokku && make deb-all"
end
config.vm.define "build-arch", autostart: false do |vm|
@@ -109,7 +97,6 @@ Vagrant::configure("2") do |config|
if Pathname.new("#{File.dirname(__FILE__)}/../dokku-arch").exist?
vm.vm.synced_folder "#{File.dirname(__FILE__)}/../dokku-arch", "/dokku-arch"
end
vm.vm.network :forwarded_port, guest: 80, host: FORWARDED_PORT
vm.vm.hostname = "#{DOKKU_DOMAIN}"
vm.vm.network :private_network, ip: DOKKU_IP
vm.vm.provision :shell, :inline => "cd /dokku && make arch-all", privileged: false
@@ -117,6 +104,6 @@ Vagrant::configure("2") do |config|
if Pathname.new(PUBLIC_KEY_PATH).exist?
config.vm.provision :file, source: PUBLIC_KEY_PATH, destination: '/tmp/id_rsa.pub'
config.vm.provision :shell, :inline => "rm -f /root/.ssh/authorized_keys && mkdir -p /root/.ssh && sudo cp /tmp/id_rsa.pub /root/.ssh/authorized_keys"
config.vm.provision :shell, :inline => "echo 'Copying ssh key into vm' && rm -f /root/.ssh/authorized_keys && mkdir -p /root/.ssh && sudo cp /tmp/id_rsa.pub /root/.ssh/authorized_keys"
end
end

View File

@@ -3,16 +3,16 @@ set -eo pipefail
[[ $TRACE ]] && set -x
# A script to bootstrap dokku.
# It expects to be run on Ubuntu 16.04/18.04/20.04, or CentOS 7 via 'sudo'
# It expects to be run on Ubuntu 18.04/20.04 via 'sudo`
# If installing a tag higher than 0.3.13, it may install dokku via a package (so long as the package is higher than 0.3.13)
# It checks out the dokku source code from Github into ~/dokku and then runs 'make install' from dokku source.
# It checks out the dokku source code from GitHub into ~/dokku and then runs 'make install' from dokku source.
# We wrap this whole script in functions, so that we won't execute
# until the entire script is downloaded.
# That's good because it prevents our output overlapping with wget's.
# It also means that we can't run a partially downloaded script.
SUPPORTED_VERSIONS="Debian [9, 10], CentOS [7], Ubuntu [16.04, 18.04, 20.04]"
SUPPORTED_VERSIONS="Debian [10, 11], Ubuntu [18.04, 20.04, 22.04]"
log-fail() {
declare desc="log fail formatter"
@@ -35,7 +35,7 @@ ensure-environment() {
FREE_MEMORY=$(grep MemTotal /proc/meminfo | awk '{print $2}')
if [[ "$FREE_MEMORY" -lt 1003600 ]]; then
echo "For dokku to build containers, it is strongly suggested that you have 1024 megabytes or more of free memory"
echo "If necessary, please consult this document to setup swap: http://dokku.viewdocs.io/dokku/getting-started/advanced-installation/#vms-with-less-than-1-gb-of-memory"
echo "If necessary, please consult this document to setup swap: https://dokku.com/docs/getting-started/advanced-installation/#vms-with-less-than-1-gb-of-memory"
fi
}
@@ -44,24 +44,42 @@ install-requirements() {
case "$DOKKU_DISTRO" in
debian)
if ! dpkg -l | grep -q gpg-agent; then
apt-get update -qq >/dev/null
apt-get -qq -y --no-install-recommends install gpg-agent
fi
if ! dpkg -l | grep -q software-properties-common; then
apt-get update -qq >/dev/null
apt-get -qq -y --no-install-recommends install software-properties-common
fi
;;
ubuntu)
if ! dpkg -l | grep -q gpg-agent; then
apt-get update -qq >/dev/null
apt-get -qq -y --no-install-recommends install gpg-agent
fi
if ! dpkg -l | grep -q software-properties-common; then
apt-get update -qq >/dev/null
apt-get -qq -y --no-install-recommends install software-properties-common
fi
add-apt-repository universe >/dev/null
add-apt-repository -y universe >/dev/null
apt-get update -qq >/dev/null
;;
esac
}
install-dokku() {
if ! command -v dokku &>/dev/null; then
echo "--> Note: Installing dokku for the first time will result in removal of"
echo " files in the nginx 'sites-enabled' directory. Please manually"
echo " restore any files that may be removed after the installation and"
echo " web setup is complete."
echo ""
echo " Installation will continue in 10 seconds."
sleep 10
fi
if [[ -n $DOKKU_BRANCH ]]; then
install-dokku-from-source "origin/$DOKKU_BRANCH"
elif [[ -n $DOKKU_TAG ]]; then
@@ -101,7 +119,7 @@ install-dokku-from-source() {
local DOKKU_CHECKOUT="$1"
if ! command -v apt-get &>/dev/null; then
log-fail "This installation script requires apt-get. For manual installation instructions, consult http://dokku.viewdocs.io/dokku/advanced-installation/"
log-fail "This installation script requires apt-get. For manual installation instructions, consult https://dokku.com/docs/getting-started/advanced-installation/"
fi
apt-get -qq -y --no-install-recommends install sudo git make software-properties-common
@@ -121,11 +139,8 @@ install-dokku-from-package() {
debian | ubuntu)
install-dokku-from-deb-package "$@"
;;
centos | rhel)
install-dokku-from-rpm-package "$@"
;;
*)
log-fail "Unsupported Linux distribution. For manual installation instructions, consult http://dokku.viewdocs.io/dokku/advanced-installation/"
log-fail "Unsupported Linux distribution. For manual installation instructions, consult https://dokku.com/docs/getting-started/advanced-installation/"
;;
esac
}
@@ -145,7 +160,7 @@ install-dokku-from-deb-package() {
local NO_INSTALL_RECOMMENDS=${DOKKU_NO_INSTALL_RECOMMENDS:=""}
local OS_ID
if ! in-array "$DOKKU_DISTRO_VERSION" "16.04" "18.04" "20.04" "9" "10"; then
if ! in-array "$DOKKU_DISTRO_VERSION" "18.04" "20.04" "22.04" "10" "11"; then
log-fail "Unsupported Linux distribution. Only the following versions are supported: $SUPPORTED_VERSIONS"
fi
@@ -162,6 +177,7 @@ install-dokku-from-deb-package() {
if uname -r | grep -q linode; then
echo "--> NOTE: Using Linode? Docker may complain about missing AUFS support."
echo " You can safely ignore this warning."
echo ""
echo " Installation will continue in 10 seconds."
sleep 10
fi
@@ -170,30 +186,34 @@ install-dokku-from-deb-package() {
fi
OS_ID="$(lsb_release -cs 2>/dev/null || echo "bionic")"
if ! in-array "$DOKKU_DISTRO" "debian" "ubuntu"; then
if ! in-array "$DOKKU_DISTRO" "debian" "ubuntu" "raspbian"; then
DOKKU_DISTRO="ubuntu"
OS_ID="bionic"
fi
if [[ "$DOKKU_DISTRO" == "ubuntu" ]]; then
OS_IDS=("xenial" "bionic" "focal")
OS_IDS=("bionic" "focal" "jammy")
if ! in-array "$OS_ID" "${OS_IDS[@]}"; then
OS_ID="bionic"
fi
elif [[ "$DOKKU_DISTRO" == "debian" ]]; then
OS_IDS=("stretch" "buster")
OS_IDS=("stretch" "buster" "bullseye")
if ! in-array "$OS_ID" "${OS_IDS[@]}"; then
OS_ID="buster"
OS_ID="bullseye"
fi
elif [[ "$DOKKU_DISTRO" == "raspbian" ]]; then
OS_IDS=("buster" "bullseye")
if ! in-array "$OS_ID" "${OS_IDS[@]}"; then
OS_ID="bullseye"
fi
fi
echo "--> Installing dokku"
wget -nv -O - https://packagecloud.io/dokku/dokku/gpgkey | apt-key add -
wget -qO- https://packagecloud.io/dokku/dokku/gpgkey | sudo tee /etc/apt/trusted.gpg.d/dokku.asc
echo "deb https://packagecloud.io/dokku/dokku/$DOKKU_DISTRO/ $OS_ID main" | tee /etc/apt/sources.list.d/dokku.list
apt-get update -qq >/dev/null
[[ -n $DOKKU_VHOST_ENABLE ]] && echo "dokku dokku/vhost_enable boolean $DOKKU_VHOST_ENABLE" | sudo debconf-set-selections
[[ -n $DOKKU_WEB_CONFIG ]] && echo "dokku dokku/web_config boolean $DOKKU_WEB_CONFIG" | sudo debconf-set-selections
[[ -n $DOKKU_HOSTNAME ]] && echo "dokku dokku/hostname string $DOKKU_HOSTNAME" | sudo debconf-set-selections
[[ -n $DOKKU_SKIP_KEY_FILE ]] && echo "dokku dokku/skip_key_file boolean $DOKKU_SKIP_KEY_FILE" | sudo debconf-set-selections
[[ -n $DOKKU_KEY_FILE ]] && echo "dokku dokku/key_file string $DOKKU_KEY_FILE" | sudo debconf-set-selections
@@ -208,35 +228,6 @@ install-dokku-from-deb-package() {
fi
}
install-dokku-from-rpm-package() {
local DOKKU_CHECKOUT="$1"
if ! in-array "$DOKKU_DISTRO_VERSION" "7"; then
log-fail "Unsupported Linux distribution. Only the following versions are supported: $SUPPORTED_VERSIONS"
fi
echo "--> Installing docker"
curl -fsSL https://get.docker.com/ | sh
echo "--> Installing epel for nginx packages to be available"
yum install -y epel-release
echo "--> Installing herokuish and dokku"
curl -s https://packagecloud.io/install/repositories/dokku/dokku/script.rpm.sh | bash
if [[ -n $DOKKU_CHECKOUT ]]; then
yum -y install herokuish "dokku-$DOKKU_CHECKOUT"
else
yum -y install herokuish dokku
fi
echo "--> Enabling docker and nginx on system startup"
systemctl enable docker
systemctl enable nginx
echo "--> Starting nginx"
systemctl start nginx
}
main() {
export DOKKU_DISTRO DOKKU_DISTRO_VERSION
# shellcheck disable=SC1091
@@ -250,6 +241,10 @@ main() {
ensure-environment
install-requirements
install-dokku
if [[ -f /etc/update-motd.d/99-dokku ]]; then
/etc/update-motd.d/99-dokku || true
fi
}
main "$@"

View File

@@ -1,9 +1,11 @@
GO_ARGS ?=
GO_PLUGIN_MAKE_TARGET ?= build
GO_REPO_ROOT := /go/src/github.com/dokku/dokku
BUILD_IMAGE := golang:1.15.6
BUILD_IMAGE := golang:1.17.9
GO_BUILD_CACHE ?= /tmp/dokku-go-build-cache
GO_MOD_CACHE ?= /tmp/dokku-go-mod-mod
GO_MOD_CACHE ?= /tmp/dokku-go-mod-mod
GO_ROOT_MOUNT ?= $$PWD/../..:$(GO_REPO_ROOT)
GOARCH ?= amd64
.PHONY: build-in-docker build clean src-clean
@@ -12,14 +14,14 @@ build: $(BUILD)
build-in-docker: clean
mkdir -p /tmp/dokku-go-build-cache
docker run --rm \
-v $$PWD/../..:$(GO_REPO_ROOT) \
-v $(GO_ROOT_MOUNT) \
-v $(GO_BUILD_CACHE):/root/.cache \
-v $(GO_MOD_CACHE):/go/pkg/mod \
-e PLUGIN_NAME=$(PLUGIN_NAME) \
-e GO111MODULE=on \
-w $(GO_REPO_ROOT)/plugins/$(PLUGIN_NAME) \
$(BUILD_IMAGE) \
bash -c "GO_ARGS='$(GO_ARGS)' make -j4 $(GO_PLUGIN_MAKE_TARGET)" || exit $$?
bash -c "GO_ARGS='$(GO_ARGS)' CGO_ENABLED=0 GOOS=linux GOARCH=$(GOARCH) make -j4 $(GO_PLUGIN_MAKE_TARGET)" || exit $$?
clean:
rm -rf $(BUILD)

154
contrib/build-docs Executable file
View File

@@ -0,0 +1,154 @@
#!/usr/bin/env bash
set -eo pipefail
readonly ROOT_DIR="$(cd "$(dirname "$(dirname "${BASH_SOURCE[0]}")")" && pwd)"
main() {
pushd "$ROOT_DIR" >/dev/null || return 1
rm -rf docs-main tmp/docs-source tmp/docs-build # tmp/docs-build
cp -r docs docs-main
echo "====> Generating docs image"
make docs-build-image
echo "====> Fetching latest docs"
git clone -q https://github.com/dokku/docs.git tmp/docs-build
echo "====> Processing version: latest"
rm -rf tmp/docs-build/docs
git clone -q https://github.com/dokku/dokku.git tmp/docs-source
rm -rf docs/assets
mkdir -p docs/assets
cp -r docs-main/assets/extra.css docs/assets/extra.css
cp -r docs-main/assets/favicons docs/assets/favicons
cp -r docs-main/assets/dokku-logo.svg docs/assets/dokku-logo.svg
rm -rf tmp/docs-build/assets
cp -r docs-main/assets tmp/docs-build/assets
cp docs-main/_build/app-nginx.conf.sigil tmp/docs-build/app-nginx.conf.sigil
mkdir -p tmp/docs-build/nginx.conf.d
touch tmp/docs-build/.static
echo "[]" >tmp/docs-build/versions.json
sed -i.bak "s/outdated/outdated_hidden/g" docs/_overrides/main.html && rm docs/_overrides/main.html.bak
echo "----> Generating docs"
make docs-build
if [[ -n "$GITHUB_ACTION" ]]; then
sudo chown -R "$(whoami)" site
fi
rm -rf site/_build
mv site tmp/docs-build/docs
mv docs/home.html tmp/docs-build/index.html
sed -i.bak "s/{{NAME}}~{{REF}}/docs/g" tmp/docs-build/index.html && rm tmp/docs-build/index.html.bak
sed -i.bak "s/{{NAME}}/docs/g" tmp/docs-build/index.html && rm tmp/docs-build/index.html.bak
sed -i.bak 's/="\/docs\/"/="\/"/g' tmp/docs-build/index.html && rm tmp/docs-build/index.html.bak
jq -C -r '.["max-versions"][]' docs-main/assets/versions.json | while read -r current_version; do
major="$(echo "$current_version" | cut -d'.' -f1)"
minor="$(echo "$current_version" | cut -d'.' -f2)"
patch="$(echo "$current_version" | cut -d'.' -f3)"
while true; do
if [[ "$patch" -lt 0 ]]; then
break
fi
version="${major}.${minor}.${patch}"
echo "====> Processing version: ${major}.${minor}.${patch}"
if [[ "$major" -lt 1 ]]; then
if [[ "$current_version" != "$version" ]]; then
echo " Writing rewrite rule"
echo "rewrite ^/docs~v$version/(.*)$ /docs~v$current_version/\$1 redirect;" >"tmp/docs-build/nginx.conf.d/$version.conf"
echo " Removing old docs"
rm -rf "tmp/docs-build/docs~v${version}"
patch=$((patch - 1))
continue
fi
fi
jq --arg title "v$version" --arg version "docs~v$version" '. += [{"title": $title, "version": $version, "aliases": []}]' tmp/docs-build/versions.json >tmp/docs-build/versions.json.bak
mv tmp/docs-build/versions.json.bak tmp/docs-build/versions.json
if [[ -d "tmp/docs-build/docs~v${version}" ]]; then
echo " ! Docs exist, skipping regeneration"
rm -rf "tmp/docs-build/docs~v${version}/assets/favicons"
cp -r docs-main/assets/favicons "tmp/docs-build/docs~v${version}/assets/favicons"
cp -r docs-main/assets/dokku-logo.svg "tmp/docs-build/docs~v${version}/assets/dokku-logo.svg"
cp -r docs-main/assets/extra.css "tmp/docs-build/docs~v${version}/assets/extra.css"
patch=$((patch - 1))
continue
fi
git -C tmp/docs-source checkout -q -- .
git -C tmp/docs-source checkout -q "tags/v${version}" -b "v${version}-branch"
rm -rf docs
mv tmp/docs-source/docs docs
rm -rf docs/assets
mkdir -p docs/assets
cp -r docs-main/assets/favicons docs/assets/favicons
cp -r docs-main/assets/dokku-logo.svg docs/assets/dokku-logo.svg
cp -r docs-main/assets/extra.css docs/assets/extra.css
cp -r docs-main/_build docs/_build
cp -r docs-main/_overrides docs/_overrides
git checkout -q -- mkdocs.yml
sed -i.bak "s/site_dir: site/site_dir: docs~v$version/g" mkdocs.yml && rm mkdocs.yml.bak
if [[ ! -f docs/template.html ]]; then
if [[ "$patch" -eq 0 ]]; then
break
fi
continue
fi
echo "----> Generating docs"
if ! make docs-build; then
continue
fi
if [[ -d "docs~v${version}" ]]; then
if [[ -n "$GITHUB_ACTION" ]]; then
sudo chown -R "$(whoami)" "docs~v${version}"
fi
rm -rf "docs~v${version}/_build"
mv "docs~v${version}" "tmp/docs-build/docs~v${version}"
fi
if [[ "$patch" -eq 0 ]]; then
break
fi
patch=$((patch - 1))
done
done
echo "====> Rebuild versions"
if [[ -f "tmp/docs-build/versions.json" ]]; then
python contrib/sort-mkdocs-versions
else
echo " No version file exists"
fi
echo "====> Cleanup main repo"
rm -rf docs
mv docs-main docs
git checkout -- mkdocs.yml docs
if [[ "$(git -C tmp/docs-build ls-files -dmo)" == "docs/sitemap.xml.gz" ]]; then
echo " ! No doc changes found"
git -C tmp/docs-build checkout -- docs/sitemap.xml.gz
else
echo "====> Pushing docs"
git -C tmp/docs-build add .
git -C tmp/docs-build commit -m "chore: regenerate docs"
if [[ -n "$BOT_GITHUB_USERNAME" ]] && [[ -n "$BOT_GITHUB_API_TOKEN" ]]; then
git -C tmp/docs-build remote set-url origin "https://$BOT_GITHUB_USERNAME:$BOT_GITHUB_API_TOKEN@github.com/dokku/docs.git"
fi
git -C tmp/docs-build push origin master
fi
}
main "$@"

View File

@@ -1,16 +0,0 @@
FROM dokku/build-base:0.0.1
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update -qq && apt-get -qq -y --no-install-recommends install gcc git build-essential wget ruby-dev ruby1.9.1 lintian rpm help2man man-db
RUN command -v fpm >/dev/null || sudo gem install fpm --no-ri --no-rdoc
ARG WORKDIR=/go/src/github.com/dokku/dokku
WORKDIR ${WORKDIR}
COPY . ${WORKDIR}
RUN make deb-dokku-update rpm-dokku-update
RUN ls -lha /tmp/

View File

@@ -1,4 +1,4 @@
FROM dokku/build-base:0.0.1
FROM dokku/build-base:0.0.1 AS builder
ENV DEBIAN_FRONTEND=noninteractive
@@ -8,8 +8,8 @@ RUN command -v fpm >/dev/null || sudo gem install fpm --no-ri --no-rdoc
ARG GOLANG_VERSION
RUN wget -qO /tmp/go${GOLANG_VERSION}.linux-amd64.tar.gz https://storage.googleapis.com/golang/go${GOLANG_VERSION}.linux-amd64.tar.gz \
&& tar -C /usr/local -xzf /tmp/go${GOLANG_VERSION}.linux-amd64.tar.gz \
&& cp /usr/local/go/bin/* /usr/local/bin
&& tar -C /usr/local -xzf /tmp/go${GOLANG_VERSION}.linux-amd64.tar.gz \
&& cp /usr/local/go/bin/* /usr/local/bin
ARG WORKDIR=/go/src/github.com/dokku/dokku
@@ -18,24 +18,65 @@ WORKDIR ${WORKDIR}
COPY Makefile ${WORKDIR}/
COPY *.mk ${WORKDIR}/
RUN make deb-setup rpm-setup sshcommand plugn
RUN make deb-setup sshcommand plugn
COPY . ${WORKDIR}
ENV GOPATH=/go
FROM builder as amd64
ARG PLUGIN_MAKE_TARGET
ARG DOKKU_VERSION=master
ARG DOKKU_GIT_REV
ARG IS_RELEASE=false
ENV GOPATH=/go
RUN PLUGIN_MAKE_TARGET=${PLUGIN_MAKE_TARGET} \
DOKKU_VERSION=${DOKKU_VERSION} \
DOKKU_GIT_REV=${DOKKU_GIT_REV} \
IS_RELEASE=${IS_RELEASE} \
SKIP_GO_CLEAN=true \
make version copyfiles \
&& make deb-dokku
FROM builder as armhf
COPY --from=amd64 /tmp /tmp
COPY --from=amd64 /usr/local/share/man/man1/dokku.1 /usr/local/share/man/man1/dokku.1-generated
RUN rm -rf /tmp/build-dokku
ARG PLUGIN_MAKE_TARGET
ARG DOKKU_VERSION=master
ARG DOKKU_GIT_REV
ARG IS_RELEASE=false
RUN PLUGIN_MAKE_TARGET=${PLUGIN_MAKE_TARGET} \
DOKKU_VERSION=${DOKKU_VERSION} \
DOKKU_GIT_REV=${DOKKU_GIT_REV} \
IS_RELEASE=${IS_RELEASE} \
SKIP_GO_CLEAN=true \
make version copyfiles \
&& make deb-dokku deb-sigil \
rpm-dokku rpm-sigil
DOKKU_VERSION=${DOKKU_VERSION} \
DOKKU_GIT_REV=${DOKKU_GIT_REV} \
IS_RELEASE=${IS_RELEASE} \
SKIP_GO_CLEAN=true \
GOARCH=arm make version copyfiles \
&& DOKKU_ARCHITECTURE=armhf GOARCH=arm make deb-dokku
FROM builder as arm64
COPY --from=armhf /tmp /tmp
COPY --from=amd64 /usr/local/share/man/man1/dokku.1 /usr/local/share/man/man1/dokku.1-generated
RUN rm -rf /tmp/build-dokku
ARG PLUGIN_MAKE_TARGET
ARG DOKKU_VERSION=master
ARG DOKKU_GIT_REV
ARG IS_RELEASE=false
RUN PLUGIN_MAKE_TARGET=${PLUGIN_MAKE_TARGET} \
DOKKU_VERSION=${DOKKU_VERSION} \
DOKKU_GIT_REV=${DOKKU_GIT_REV} \
IS_RELEASE=${IS_RELEASE} \
SKIP_GO_CLEAN=true \
GOARCH=arm64 make version copyfiles \
&& DOKKU_ARCHITECTURE=arm64 GOARCH=arm64 make deb-dokku
RUN ls -lha /tmp/

View File

@@ -5,20 +5,17 @@ import shutil
import subprocess
from requests.auth import HTTPBasicAuth
PACKAGECLOUD_TOKEN = os.getenv('DOKKU_PACKAGECLOUD_TOKEN')
PACKAGECLOUD_TOKEN = os.getenv("DOKKU_PACKAGECLOUD_TOKEN")
def download_file(filename, url):
r = requests.get(url, stream=True)
with open(filename, 'wb') as f:
with open(filename, "wb") as f:
shutil.copyfileobj(r.raw, f)
def upload_file(filename):
versions = [
"xenial"
"focal"
]
versions = ["jammy"]
cmd_template = "package_cloud push dokku/dokku/ubuntu/{0} {1}"
for version in versions:
cmd = cmd_template.format(version, filename)
@@ -26,21 +23,22 @@ def upload_file(filename):
def main():
auth = HTTPBasicAuth(PACKAGECLOUD_TOKEN, '')
base = requests.get('https://packagecloud.io/api/v1/repos/dokku/dokku/packages/deb/ubuntu/bionic.json',
auth=auth)
auth = HTTPBasicAuth(PACKAGECLOUD_TOKEN, "")
base = requests.get(
"https://packagecloud.io/api/v1/repos/dokku/dokku/packages/deb/ubuntu/focal.json",
auth=auth,
)
data = base.json()
urls = []
for package in data:
urls.append(package['versions_url'])
urls.append(package["versions_url"])
download_urls = {}
for url in urls:
base = requests.get('https://packagecloud.io{0}'.format(url),
auth=auth)
base = requests.get("https://packagecloud.io{0}".format(url), auth=auth)
data = base.json()
for version in data:
download_urls['downloads/' + version['filename']] = version['download_url']
download_urls["downloads/" + version["filename"]] = version["download_url"]
for filename, download_url in download_urls.items():
print("downloading {0}".format(filename))

View File

@@ -1,438 +0,0 @@
#!/usr/bin/env python3
import cgi
import json
import os
import re
import shutil
try:
import SimpleHTTPServer
import SocketServer
except ImportError:
import http.server as SimpleHTTPServer
import socketserver as SocketServer
import subprocess
import sys
import threading
VERSION = 'v0.23.3'
def bytes_to_string(b):
if type(b) == bytes:
encoding = sys.stdout.encoding
if encoding is None:
encoding = 'utf-8'
b = b.decode(encoding)
b = b.strip()
return b
def string_to_bytes(s):
if type(s) == str:
encoding = sys.stdout.encoding
if encoding is None:
encoding = 'utf-8'
s = s.encode(encoding)
return s
hostname = ''
try:
command = "bash -c '[[ $(dig +short $HOSTNAME) ]] && echo $HOSTNAME || wget -q -O - icanhazip.com'"
hostname = bytes_to_string(subprocess.check_output(command, shell=True))
except subprocess.CalledProcessError:
pass
key_file = os.getenv('KEY_FILE', None)
if os.path.isfile('/home/ec2-user/.ssh/authorized_keys'):
key_file = '/home/ec2-user/.ssh/authorized_keys'
elif os.path.isfile('/home/ubuntu/.ssh/authorized_keys'):
key_file = '/home/ubuntu/.ssh/authorized_keys'
else:
key_file = '/root/.ssh/authorized_keys'
admin_keys = []
if os.path.isfile(key_file):
try:
command = "cat {0}".format(key_file)
admin_keys = bytes_to_string(subprocess.check_output(command, shell=True)).strip().split("\n")
except subprocess.CalledProcessError:
pass
ufw_display = 'block'
try:
command = "sudo ufw status"
ufw_output = bytes_to_string(subprocess.check_output(command, shell=True).strip())
if "inactive" in ufw_output:
ufw_display = 'none'
except subprocess.CalledProcessError:
ufw_display = 'none'
nginx_dir = '/etc/nginx'
nginx_init = '/etc/init.d/nginx'
try:
command = "test -x /usr/bin/openresty"
subprocess.check_output(command, shell=True)
nginx_dir = '/usr/local/openresty/nginx/conf'
nginx_init = '/etc/init.d/openresty'
except subprocess.CalledProcessError:
pass
def check_boot():
if 'onboot' not in sys.argv:
return
init_dir = os.getenv('INIT_DIR', '/etc/init')
systemd_dir = os.getenv('SYSTEMD_DIR', '/etc/systemd/system')
nginx_conf_dir = os.getenv('NGINX_CONF_DIR', '{0}/conf.d'.format(nginx_dir))
if os.path.exists(init_dir):
with open('{0}/dokku-installer.conf'.format(init_dir), 'w') as f:
f.write("start on runlevel [2345]\n")
f.write("exec {0} selfdestruct\n".format(os.path.abspath(__file__)))
if os.path.exists(systemd_dir):
with open('{0}/dokku-installer.service'.format(systemd_dir), 'w') as f:
f.write("[Unit]\n")
f.write("Description=Dokku web-installer\n")
f.write("\n")
f.write("[Service]\n")
f.write("ExecStart={0} selfdestruct\n".format(os.path.abspath(__file__)))
f.write("\n")
f.write("[Install]\n")
f.write("WantedBy=multi-user.target\n")
f.write("WantedBy=graphical.target\n")
if os.path.exists(nginx_conf_dir):
with open('{0}/dokku-installer.conf'.format(nginx_conf_dir), 'w') as f:
f.write("upstream dokku-installer { server 127.0.0.1:2000; }\n")
f.write("server {\n")
f.write(" listen 80;\n")
f.write(" location / {\n")
f.write(" proxy_pass http://dokku-installer;\n")
f.write(" }\n")
f.write("}\n")
subprocess.call('rm -f {0}/sites-enabled/*'.format(nginx_dir), shell=True)
sys.exit(0)
class GetHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
def write_content(self, content):
try:
self.wfile.write(content)
except TypeError:
self.wfile.write(string_to_bytes(content))
def do_GET(self):
content = PAGE.replace('{VERSION}', VERSION)
content = content.replace('{UFW_DISPLAY}', ufw_display)
content = content.replace('{HOSTNAME}', hostname)
content = content.replace('{AUTHORIZED_KEYS_LOCATION}', key_file)
content = content.replace('{ADMIN_KEYS}', "\n".join(admin_keys))
self.send_response(200)
self.end_headers()
self.write_content(content)
def do_POST(self):
if self.path not in ['/setup', '/setup/']:
return
params = cgi.FieldStorage(fp=self.rfile,
headers=self.headers,
environ={
'REQUEST_METHOD': 'POST',
'CONTENT_TYPE': self.headers['Content-Type']})
dokku_root = os.getenv('DOKKU_ROOT', '/home/dokku')
dokku_user = os.getenv('DOKKU_SYSTEM_GROUP', 'dokku')
dokku_group = os.getenv('DOKKU_SYSTEM_USER', 'dokku')
vhost_enable = 'false'
vhost_filename = '{0}/VHOST'.format(dokku_root)
if 'vhost' in params and params['vhost'].value == 'true':
vhost_enable = 'true'
with open(vhost_filename, 'w') as f:
f.write(params['hostname'].value.strip("/"))
shutil.chown(vhost_filename, dokku_user, dokku_group)
else:
try:
os.remove(vhost_filename)
except OSError:
pass
hostname_filename = '{0}/HOSTNAME'.format(dokku_root)
with open(hostname_filename, 'w') as f:
f.write(params['hostname'].value.strip("/"))
shutil.chown(hostname_filename, dokku_user, dokku_group)
for (index, key) in enumerate(params['keys'].value.splitlines(), 1):
user = 'admin'
if self.admin_user_exists() is not None:
user = 'web-admin'
if self.web_admin_user_exists() is not None:
index = int(self.web_admin_user_exists()) + 1
elif self.web_admin_user_exists() is None:
index = 1
elif self.admin_user_exists() is None:
pass
else:
index = int(self.admin_user_exists()) + 1
user = user + str(index)
command = ['sshcommand', 'acl-add', 'dokku', user]
proc = subprocess.Popen(command, stdin=subprocess.PIPE)
try:
proc.stdin.write(key)
except TypeError:
proc.stdin.write(string_to_bytes(key))
proc.stdin.close()
proc.wait()
set_debconf_selection('boolean', 'nginx_enable', 'true')
set_debconf_selection('boolean', 'skip_key_file', 'true')
set_debconf_selection('boolean', 'vhost_enable', vhost_enable)
set_debconf_selection('boolean', 'web_config', 'false')
set_debconf_selection('string', 'hostname', params['hostname'].value)
if 'selfdestruct' in sys.argv:
DeleteInstallerThread()
content = json.dumps({'status': 'ok'})
self.send_response(200)
self.end_headers()
self.write_content(content)
def web_admin_user_exists(self):
return self.user_exists('web-admin(\d+)')
def admin_user_exists(self):
return self.user_exists('admin(\d+)')
def user_exists(self, name):
command = 'dokku ssh-keys:list'
pattern = re.compile(r'NAME="' + name + '"')
proc = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE)
max_num = 0
exists = False
for line in proc.stdout:
m = pattern.search(bytes_to_string(line))
if m:
# User of the form `user` or `user#` exists
exists = True
max_num = max(max_num, int(m.group(1)))
if exists:
return max_num
else:
return None
def set_debconf_selection(debconf_type, key, value):
found = False
with open('/etc/os-release', 'r') as f:
for line in f:
if 'debian' in line:
found = True
if not found:
return
ps = subprocess.Popen(['echo', 'dokku dokku/{0} {1} {2}'.format(
key, debconf_type, value
)], stdout=subprocess.PIPE)
try:
subprocess.check_output(['debconf-set-selections'], stdin=ps.stdout)
except subprocess.CalledProcessError:
pass
ps.wait()
class DeleteInstallerThread(object):
def __init__(self, interval=1):
thread = threading.Thread(target=self.run, args=())
thread.daemon = True
thread.start()
def run(self):
command = "rm {0}/conf.d/dokku-installer.conf && {1} stop && {1} start".format(nginx_dir, nginx_init)
try:
subprocess.call(command, shell=True)
except:
pass
command = "rm -f /etc/init/dokku-installer.conf /etc/systemd/system/dokku-installer.service && (stop dokku-installer || systemctl stop dokku-installer.service)"
try:
subprocess.call(command, shell=True)
except:
pass
def main():
check_boot()
port = int(os.getenv('PORT', 2000))
httpd = SocketServer.TCPServer(("", port), GetHandler)
print("Listening on 0.0.0.0:{0}, CTRL+C to stop".format(port))
httpd.serve_forever()
PAGE = """
<html>
<head>
<meta charset="utf-8" />
<title>Dokku Setup</title>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
<style>
.bd-callout {
padding: 1.25rem;
margin-top: 1.25rem;
margin-bottom: 1.25rem;
border: 1px solid #eee;
border-left-width: .25rem;
border-radius: .25rem;
}
.bd-callout p:last-child {
margin-bottom: 0;
}
.bd-callout-info {
border-left-color: #5bc0de;
}
pre {
font-size: 80%;
margin-bottom: 0;
}
h1 small {
font-size: 50%;
}
h5 {
font-size: 1rem;
}
.container {
width: 640px;
}
.result {
padding-left: 20px;
}
input.form-control, textarea.form-control {
background-color: #fafbfc;
font-size: 14px;
}
input.form-control::placeholder, textarea.form-control::placeholder {
color: #adb2b8
}
</style>
</head>
<body>
<div class="container">
<form id="form" role="form">
<h1 class="pt-3">Dokku Setup <small class="text-muted">{VERSION}</small></h1>
<div class="alert alert-warning small" role="alert">
<strong>Warning:</strong> The SSH key filled out here can grant root access to the server. Please complete the setup as soon as possible.
</div>
<div class="row">
<div class="col">
<h3>Admin Access</h3>
<div class="form-group">
<label for="key">Public SSH Keys</label><br />
<textarea class="form-control" name="keys" rows="5" id="key" placeholder="Begins with 'ssh-rsa', 'ssh-dss', 'ssh-ed25519', 'ecdsa-sha2-nistp256', 'ecdsa-sha2-nistp384', or 'ecdsa-sha2-nistp521'">{ADMIN_KEYS}</textarea>
<small class="form-text text-muted">Public keys allow users to ssh onto the server as the <code>dokku</code> user, as well as remotely execute Dokku commands. They are currently auto-populated from: <code>{AUTHORIZED_KEYS_LOCATION}</code>, and can be changed later via the <a href="http://dokku.viewdocs.io/dokku/deployment/user-management/" target="_blank"><code>dokku ssh-keys</code></a> plugin.</small>
</div>
</div>
</div>
<div class="row">
<div class="col">
<h3>Hostname Configuration</h3>
<div class="form-group">
<label for="hostname">Hostname</label>
<input class="form-control" type="text" id="hostname" name="hostname" value="{HOSTNAME}" placeholder="A hostname or ip address such as {HOSTNAME}" />
<small class="form-text text-muted">This will be used as the default host for all applications, and can be changed later via the <a href="http://dokku.viewdocs.io/dokku/configuration/domains/" target="_blank"><code>dokku domains:set-global</code></a> command.</small>
</div>
<div class="form-check">
<input class="form-check-input" type="checkbox" id="vhost" name="vhost" value="true">
<label class="form-check-label" for="vhost">Use virtualhost naming for apps</label>
<small class="form-text text-muted">When enabled, Nginx will be run on port 80 and proxy requests to apps based on hostname.</small>
<small class="form-text text-muted">When disabled, a specific port will be setup for each application on first deploy, and requests to that port will be proxied to the relevant app.</small>
</div>
<div class="alert alert-warning small mt-3 d-{UFW_DISPLAY}" role="alert">
<strong>Warning:</strong> UFW is active. To allow traffic to specific ports, run <code>sudo ufw allow PORT</code> for the port in question.
</div>
<div class="bd-callout bd-callout-info">
<h5>What will app URLs look like?</h5>
<pre><code id="example">http://hostname:port</code></pre>
</div>
</div>
</div>
<button type="button" onclick="setup()" class="btn btn-primary">Finish Setup</button> <span class="result"></span>
</form>
</div>
<div id="error-output"></div>
<script>
var $ = document.querySelector.bind(document)
function setup() {
if ($("#key").value.trim() == "") {
alert("Your admin public key cannot be blank.")
return
}
if ($("#hostname").value.trim() == "") {
alert("Your hostname cannot be blank.")
return
}
var data = new FormData($("#form"))
var inputs = [].slice.call(document.querySelectorAll("input, textarea, button"))
inputs.forEach(function (input) {
input.disabled = true
})
var result = $(".result")
fetch("/setup", {method: "POST", body: data})
.then(function(response) {
if (response.ok) {
return response.json()
} else {
throw new Error('Server returned error')
}
})
.then(function(response) {
result.classList.add("text-success");
result.textContent = "Success! Redirecting in 3 seconds. .."
setTimeout(function() {
window.location.href = "http://dokku.viewdocs.io/dokku~{VERSION}/deployment/application-deployment/";
}, 3000);
})
.catch(function (error) {
result.classList.add("text-danger");
result.textContent = "Could not send the request"
})
}
function update() {
if ($("#vhost").matches(":checked") && $("#hostname").value.match(/^(\d{1,3}\.){3}\d{1,3}$/)) {
alert("In order to use virtualhost naming, the hostname must not be an IP but a valid domain name.")
$("#vhost").checked = false;
}
if ($("#vhost").matches(':checked')) {
$("#example").textContent = "http://<app-name>."+$("#hostname").value
} else {
$("#example").textContent = "http://"+$("#hostname").value+":<app-port>"
}
}
$("#vhost").addEventListener("change", update);
$("#hostname").addEventListener("input", update);
update();
</script>
</body>
</html>
"""
if __name__ == "__main__":
main()

View File

@@ -1,112 +0,0 @@
#!/usr/bin/env bash
set -eo pipefail
shopt -s nullglob
if [[ -r /etc/default/dokku ]]; then
# shellcheck disable=SC1091
source /etc/default/dokku
fi
export DOKKU_ROOT=${DOKKU_ROOT:=~dokku}
if [[ -f "$DOKKU_ROOT/dokkurc" ]]; then
if [[ -r $DOKKU_ROOT/dokkurc ]]; then
source "$DOKKU_ROOT/dokkurc"
else
echo "Unable to read $DOKKU_ROOT/dokkurc for sourcing" 1>&2
exit 1
fi
fi
if [[ -d $DOKKU_ROOT/.dokkurc ]]; then
for f in $DOKKU_ROOT/.dokkurc/*; do
if [[ -r "$f" ]]; then
source "$f"
else
echo "Unable to read $f for sourcing" 1>&2
exit 1
fi
done
fi
[[ $DOKKU_TRACE ]] && set -x
export DOKKU_LIB_ROOT=${DOKKU_LIB_PATH:="/var/lib/dokku"}
export PLUGIN_PATH=${PLUGIN_PATH:="$DOKKU_LIB_ROOT/plugins"}
export PLUGIN_ENABLED_PATH=${PLUGIN_ENABLED_PATH:="$PLUGIN_PATH/enabled"}
export DEBIAN_FRONTEND=noninteractive
dokku-log-info() {
declare desc="log info formatter"
echo "-----> $*"
}
dokku-log-verbose() {
declare desc="log verbose formatter"
echo " $*"
}
dokku-log-warn() {
declare desc="log warning formatter"
echo " ! $*" 1>&2
}
dokku-update-plugin() {
declare PLUGIN_NAME="$1"
if [[ -d "$PLUGIN_ENABLED_PATH/$PLUGIN_NAME/.git" ]]; then
dokku-log-verbose "Updating $PLUGIN_NAME"
dokku plugin:update "$PLUGIN_NAME"
fi
}
main() {
declare COMMAND="$1"
local DOKKU_DISTRO PLUGIN_NAME VERSION
if [[ -f "/etc/os-release" ]]; then
# shellcheck disable=SC1091
DOKKU_DISTRO=$(. /etc/os-release && echo "$ID")
fi
if [[ "$COMMAND" == "version" ]] || [[ "$COMMAND" == "-v" ]]; then
VERSION=UNRELEASED
if [[ -f "/var/lib/dokku-update/VERSION" ]]; then
VERSION="$(cat /var/lib/dokku-update/VERSION)"
fi
echo "dokku-update ${VERSION}"
exit 0
fi
dokku-log-info "Running system updates"
case "$DOKKU_DISTRO" in
arch)
yay -Syyua
;;
debian | ubuntu)
apt-get update -qq >/dev/null
apt-get -qq -y dist-upgrade
;;
centos | opensuse | rhel)
dokku-log-warn "Updating this operating system is not supported"
;;
*)
dokku-log-warn "Updating this operating system is not supported"
exit 1
;;
esac
# update all plugins
dokku-log-info "Updating all plugins"
for PLUGIN_NAME in $(dokku plugin:list | grep enabled | awk '$1=$1' | cut -d' ' -f1); do
dokku-update-plugin "$PLUGIN_NAME"
done
dokku plugin:install
# rebuild all applications
dokku-log-info "Rebuilding all applications"
dokku ps:rebuild --all
dokku-log-info "Waiting for old containers to stop"
sleep 120
dokku-log-info "Cleaning up"
dokku cleanup --global
}
main "$@"

View File

@@ -55,7 +55,7 @@ fn-dokku-host() {
fi
if [[ -z "$DOKKU_HOST" ]]; then
fn-client-help-msg
return
fi
echo "$DOKKU_HOST"
@@ -100,11 +100,14 @@ main() {
done
DOKKU_REMOTE_HOST="$(fn-dokku-host "$DOKKU_GIT_REMOTE" "$DOKKU_HOST")"
if [[ -z "$DOKKU_REMOTE_HOST" ]]; then
fn-client-help-msg
fi
if [[ -z "$APP" ]]; then
if [[ -d .git ]] || git rev-parse --git-dir >/dev/null 2>&1; then
set +e
APP=$(git remote -v 2>/dev/null | grep -Ei "dokku@$DOKKU_REMOTE_HOST" | head -n 1 | cut -f2 -d'@' | cut -f1 -d' ' | cut -f2 -d':' 2>/dev/null)
APP=$(git remote -v 2>/dev/null | grep -Ei "^${DOKKU_GIT_REMOTE}\s" | grep -Ei "dokku@$DOKKU_REMOTE_HOST" | head -n 1 | cut -f2 -d'@' | cut -f1 -d' ' | cut -f2 -d':' 2>/dev/null)
set -e
else
echo " ! This is not a git repository" 1>&2
@@ -157,7 +160,7 @@ main() {
}
}
if [[ "$0" == "dokku" ]] || [[ "$0" == *dokku_client.sh ]] || [[ "$0" == $(which dokku) ]]; then
if [[ "$0" == "dokku" ]] || [[ "$0" == *dokku_client.sh ]] || [[ "$0" == $(command -v dokku) ]]; then
main "$@"
exit $?
fi

View File

@@ -6,7 +6,7 @@ readonly ROOT_DIR="$(cd "$(dirname "$(dirname "${BASH_SOURCE[0]}")")" && pwd)"
readonly TMP_WORK_DIR="$(mktemp -d "/tmp/dokku-release.XXXXXX")"
readonly DOKKU_GIT_REV="$(git rev-parse HEAD)"
trap 'rm -rf "$TMP_WORK_DIR" >/dev/null' RETURN INT TERM EXIT
trap "rm -rf '$TMP_WORK_DIR' >/dev/null" RETURN INT TERM EXIT
log-info() {
# shellcheck disable=SC2034
@@ -49,6 +49,7 @@ fn-build-dokku() {
--build-arg IS_RELEASE="$IS_RELEASE" \
--build-arg PLUGIN_MAKE_TARGET="build" \
--build-arg GOLANG_VERSION="$GOLANG_VERSION" \
--progress plain \
-f "contrib/build-dokku.Dockerfile" \
-t "$NAME" .
return "$?"
@@ -133,10 +134,20 @@ fn-publish-package() {
local OS_ID ex
[[ "$IS_RELEASE" == "true" ]] && REPOSITORY=dokku/dokku
[[ "$RELEASE_TYPE" == "rpm" ]] && DIST=el/7
[[ "$RELEASE_TYPE" == "raspbian" ]] && DIST=raspbian
if [[ "$DIST" == "ubuntu" ]]; then
OS_IDS=("xenial" "bionic" "focal")
if [[ "$RELEASE_TYPE" == "raspbian" ]]; then
OS_IDS=("buster" "bullseye")
for OS_ID in "${OS_IDS[@]}"; do
log-info "(release-dokku) pushing deb to packagecloud.com/${REPOSITORY}/${DIST}"
package_cloud push "${REPOSITORY}/${DIST}/${OS_ID}" "$PACKAGE_NAME"
ex="$?"
if [[ "$ex" -ne "0" ]]; then
EXIT_CODE="$ex"
fi
done
elif [[ "$DIST" == "ubuntu" ]]; then
OS_IDS=("bionic" "focal" "jammy")
for OS_ID in "${OS_IDS[@]}"; do
log-info "(release-dokku) pushing ${RELEASE_TYPE} to packagecloud.com/${REPOSITORY}/${DIST}"
package_cloud push "${REPOSITORY}/${DIST}/${OS_ID}" "$PACKAGE_NAME"
@@ -147,7 +158,7 @@ fn-publish-package() {
done
DIST=debian
OS_IDS=("stretch" "buster")
OS_IDS=("buster" "bullseye")
for OS_ID in "${OS_IDS[@]}"; do
log-info "(release-dokku) pushing ${RELEASE_TYPE} to packagecloud.com/${REPOSITORY}/${DIST}"
package_cloud push "${REPOSITORY}/${DIST}/${OS_ID}" "$PACKAGE_NAME"
@@ -204,7 +215,6 @@ fn-repo-update() {
return
fi
fn-replace-version "$CURRENT_VERSION" "$NEXT_VERSION" contrib/dokku-installer.py
fn-replace-version "$CURRENT_VERSION" "$NEXT_VERSION" debian/control
fn-replace-version "$CURRENT_VERSION" "$NEXT_VERSION" Dockerfile
fn-replace-version "$CURRENT_VERSION" "$NEXT_VERSION" docs/advanced-usage/plugin-management.md
@@ -213,7 +223,7 @@ fn-repo-update() {
fn-replace-version "$CURRENT_VERSION" "$NEXT_VERSION" docs/assets/style.css
fn-replace-version "$CURRENT_VERSION" "$NEXT_VERSION" docs/development/release-process.md
fn-replace-version "$CURRENT_VERSION" "$NEXT_VERSION" docs/getting-started/install/docker.md
fn-replace-version "$CURRENT_VERSION" "$NEXT_VERSION" docs/getting-started/installation.md
fn-replace-version "$CURRENT_VERSION" "$NEXT_VERSION" docs/getting-started/installation/index.md
fn-replace-version "$CURRENT_VERSION" "$NEXT_VERSION" docs/home.html
fn-replace-version "$CURRENT_VERSION" "$NEXT_VERSION" docs/template.html
fn-replace-version "$CURRENT_VERSION" "$NEXT_VERSION" README.md
@@ -339,8 +349,22 @@ fn-require-bin() {
fn-build-docker-image() {
declare desc="Builds the dokku docker image and tags it with the given version"
declare VERSION="$1"
docker build -t "dokku/dokku:$VERSION" .
declare VERSION="$1" IS_RELEASE="$2"
if [[ "$IS_RELEASE" == "true" ]]; then
docker buildx build \
--platform linux/arm,linux/arm64,linux/amd64 \
--progress plain \
--push \
--tag "dokku/dokku:latest" \
--tag "dokku/dokku:$VERSION" .
else
docker buildx build \
--platform linux/arm,linux/arm64,linux/amd64 \
--progress plain \
--tag "dokku/dokku:latest" \
--tag "dokku/dokku:$(echo "$VERSION" | tr + -)" .
fi
}
main() {
@@ -376,32 +400,33 @@ main() {
NEXT_VERSION="$(fn-version-next "$CURRENT_VERSION" "$RELEASE")"
IS_RELEASE="$(fn-is-release "$RELEASE")"
echo "v${NEXT_VERSION}" >build/next-version
fn-repo-update "$IS_RELEASE" "$CURRENT_VERSION" "$NEXT_VERSION"
fn-build-dokku "$IS_RELEASE" "$NEXT_VERSION" || log-fail "Error building package"
fn-extract-package "$IS_RELEASE" "dokku_${NEXT_VERSION}_armhf.deb" || log-fail "Error extracting deb package"
fn-extract-package "$IS_RELEASE" "dokku_${NEXT_VERSION}_arm64.deb" || log-fail "Error extracting deb package"
fn-extract-package "$IS_RELEASE" "dokku_${NEXT_VERSION}_amd64.deb" || log-fail "Error extracting deb package"
fn-extract-package "$IS_RELEASE" "dokku-${NEXT_VERSION}-1.x86_64.rpm" || log-fail "Error extracting rpm package"
cp -f "build/dokku_${NEXT_VERSION}_amd64.deb" build/dokku.deb
mkdir -p build/package
cp -f "build/dokku_${NEXT_VERSION}_amd64.deb" build/package/dokku-amd64.deb
cp -f "build/dokku_${NEXT_VERSION}_arm64.deb" build/package/dokku-arm64.deb
cp -f "build/dokku_${NEXT_VERSION}_armhf.deb" build/package/dokku-armhf.deb
if [[ "$RELEASE" != "build" ]]; then
fn-publish-package "$IS_RELEASE" "raspbian" "build/dokku_${NEXT_VERSION}_armhf.deb" || log-fail "Error publishing deb package"
fn-publish-package "$IS_RELEASE" "deb" "build/dokku_${NEXT_VERSION}_arm64.deb" || log-fail "Error publishing deb package"
fn-publish-package "$IS_RELEASE" "deb" "build/dokku_${NEXT_VERSION}_amd64.deb" || log-fail "Error publishing deb package"
fn-publish-package "$IS_RELEASE" "rpm" "build/dokku-${NEXT_VERSION}-1.x86_64.rpm" || log-fail "Error publishing rpm package"
fn-build-docker-image "$NEXT_VERSION" || log-fail "Error building docker image"
fn-build-docker-image "$NEXT_VERSION" "$IS_RELEASE" || log-fail "Error building docker image"
if [[ "$IS_RELEASE" == "true" ]]; then
docker tag "dokku/dokku:$NEXT_VERSION" "dokku/dokku:latest"
docker push "dokku/dokku:$NEXT_VERSION"
docker push "dokku/dokku:latest"
fi
fn-repo-push-tags "$IS_RELEASE"
else
fn-build-docker-image "$NEXT_VERSION" "$IS_RELEASE" || log-fail "Error building docker image"
fi
if [[ "$IS_RELEASE" != "true" ]]; then
git reset -q HEAD plugins/*/plugin.toml
git checkout -- plugins/*/plugin.toml
fi
echo "build/dokku_${NEXT_VERSION}_amd64.deb" >build/deb-filename
echo "build/dokku-${NEXT_VERSION}-1.x86_64.rpm" >build/rpm-filename
}
main "$@"

View File

@@ -1,160 +0,0 @@
#!/usr/bin/env bash
set -eo pipefail
[[ $TRACE ]] && set -x
readonly ROOT_DIR="$(cd "$(dirname "$(dirname "${BASH_SOURCE[0]}")")" && pwd)"
readonly TMP_WORK_DIR="$(mktemp -d "/tmp/dokku-release.XXXXXX")"
readonly DOKKU_GIT_REV="$(git rev-parse HEAD)"
trap 'rm -rf "$TMP_WORK_DIR" >/dev/null' RETURN INT TERM EXIT
log-info() {
# shellcheck disable=SC2034
declare desc="Log info formatter"
echo "$*"
}
log-error() {
# shellcheck disable=SC2034
declare desc="Log error formatter"
echo "! $*" 1>&2
}
log-fail() {
# shellcheck disable=SC2034
declare desc="Log fail formatter"
log-error "$*"
exit 1
}
fn-build-dokku() {
declare desc="Builds dokku packages within a docker container"
pushd "$ROOT_DIR" >/dev/null
docker build \
-f "contrib/build-dokku-update.Dockerfile" \
-t dokku-update:build .
return "$?"
}
fn-extract-package() {
declare desc="Extract packages from a docker container to the root directory"
declare PACKAGE_NAME="$1"
if [[ -z "$PACKAGE_NAME" ]]; then
log-error "Invalid deb file specified"
return 1
fi
log-info "(extract-package) writing ${PACKAGE_NAME} to correct path"
docker run --rm --entrypoint cat dokku-update:build "/tmp/${PACKAGE_NAME}" >"${ROOT_DIR}/build/${PACKAGE_NAME}"
return "$?"
}
fn-publish-package() {
declare desc="Publishes a package to packagecloud"
declare IS_RELEASE="$1" RELEASE_TYPE="$2" PACKAGE_NAME="$3"
local REPOSITORY=dokku/dokku-betafish DIST=ubuntu
local OS_ID ex EXIT_CODE=0
[[ "$IS_RELEASE" == "true" ]] && REPOSITORY=dokku/dokku
[[ "$RELEASE_TYPE" == "rpm" ]] && DIST=el/7
if [[ "$DIST" == "ubuntu" ]]; then
OS_IDS=("xenial" "bionic" "focal")
for OS_ID in "${OS_IDS[@]}"; do
log-info "(release-dokku-update) pushing ${RELEASE_TYPE} to packagecloud.com/${REPOSITORY}/${DIST}"
package_cloud push "${REPOSITORY}/${DIST}/${OS_ID}" "$PACKAGE_NAME"
ex="$?"
if [[ "$ex" -ne "0" ]]; then
EXIT_CODE="$ex"
fi
done
DIST=debian
OS_IDS=("stretch" "buster")
for OS_ID in "${OS_IDS[@]}"; do
log-info "(release-dokku-update) pushing ${RELEASE_TYPE} to packagecloud.com/${REPOSITORY}/${DIST}"
package_cloud push "${REPOSITORY}/${DIST}/${OS_ID}" "$PACKAGE_NAME"
ex="$?"
if [[ "$ex" -ne "0" ]]; then
EXIT_CODE="$ex"
fi
done
else
log-info "(release-dokku-update) pushing ${RELEASE_TYPE} to packagecloud.com/${REPOSITORY}/${DIST}"
package_cloud push "${REPOSITORY}/${DIST}" "$PACKAGE_NAME"
EXIT_CODE="$?"
fi
return "$EXIT_CODE"
}
fn-in-array() {
declare desc="return true if value ($1) is in list (all other arguments)"
local e
for e in "${@:2}"; do
[[ "$e" == "$1" ]] && return 0
done
return 1
}
fn-is-release() {
declare desc="Checks if a given run is a release run"
declare RELEASE="$1"
local IS_RELEASE=false
if [[ "$RELEASE" == "major" ]] || [[ "$RELEASE" == "minor" ]] || [[ "$RELEASE" == "patch" ]]; then
IS_RELEASE=true
fi
echo "$IS_RELEASE"
}
fn-require-bin() {
declare desc="Checks that a binary exists"
declare BINARY="$1"
if ! command -v "$BINARY" &>/dev/null; then
log-fail "Missing ${BINARY}, please install it"
fi
}
main() {
declare RELEASE="$1"
local NEXT_VERSION
local VALID_RELEASE_LEVELS=("major" "minor" "patch" "betafish" "build")
if [[ "$RELEASE" == '--trace' ]]; then
shift 1
RELEASE="$1"
TRACE=1 && set -x
fi
if [[ -z "$RELEASE" ]]; then
log-fail "Argument 1 must be one of [major, minor, patch, betafish, build], none given"
fi
if ! fn-in-array "$RELEASE" "${VALID_RELEASE_LEVELS[@]}"; then
log-fail "Argument 1 must be one of [major, minor, patch, betafish, build], '${RELEASE}' given"
fi
mkdir -p "build"
fn-require-bin "docker"
if [[ "$RELEASE" != "build" ]]; then
fn-require-bin "package_cloud"
[[ -n "$PACKAGECLOUD_TOKEN" ]] || log-fail "Missing PACKAGECLOUD_TOKEN environment variable"
fi
NEXT_VERSION="$(grep DOKKU_UPDATE_VERSION deb.mk | head -n1 | cut -d'=' -f2 | xargs)"
IS_RELEASE="$(fn-is-release "$RELEASE")"
fn-build-dokku || log-fail "Error building package"
fn-extract-package "dokku-update_${NEXT_VERSION}_amd64.deb" || log-fail "Error extracting deb package"
fn-extract-package "dokku-update-${NEXT_VERSION}-1.x86_64.rpm" || log-fail "Error extracting rpm package"
if [[ "$RELEASE" != "build" ]]; then
fn-publish-package "$IS_RELEASE" "deb" "build/dokku-update_${NEXT_VERSION}_amd64.deb" || log-fail "Error publishing deb package"
fn-publish-package "$IS_RELEASE" "rpm" "build/dokku-update-${NEXT_VERSION}-1.x86_64.rpm" || log-fail "Error publishing rpm package"
fi
}
main "$@"

View File

@@ -4,7 +4,7 @@ set -eo pipefail
readonly TMP_WORK_DIR="$(mktemp -d "/tmp/dokku-plugin-release.XXXXXX")"
trap 'rm -rf "$TMP_WORK_DIR" >/dev/null' RETURN INT TERM EXIT
trap "rm -rf '$TMP_WORK_DIR' >/dev/null" RETURN INT TERM EXIT
log-info() {
# shellcheck disable=SC2034

View File

@@ -0,0 +1,38 @@
#!/usr/bin/env python
import json
def main():
version_file = "tmp/docs-build/versions.json"
data = []
with open(version_file) as f:
data = json.load(f)
versions = []
for info in data:
if info["title"] == "latest":
continue
versions.append(info["title"].removeprefix("v"))
versions.sort(key=lambda x: list(map(int, x.split('.'))), reverse=True)
data = [
{
"aliases": ["latest"],
"title": "latest",
"version": "docs",
}
]
for version in versions:
data.append({
"aliases": [],
"title": f"v{version}",
"version": f"docs~v{version}",
})
with open(version_file, "w") as f:
json.dump(data, f, indent=4)
if __name__ == "__main__":
main()

344
contrib/write-mkdocs Normal file
View File

@@ -0,0 +1,344 @@
#!/usr/bin/env python
from bs4 import BeautifulSoup
import os
import pathlib
import shutil
import sys
import yaml
def get_nav_from_selector(soup, selector, docs_dir):
navigation = []
header_name = ""
for anchor in soup.select(selector):
classes = anchor.get("class", [])
if classes is None:
continue
if "disabled" in classes:
header_name = anchor.text
navigation.append({header_name: []})
href = anchor.get("href", "")
if href is None:
continue
href = str(href)
if href == "#":
continue
url = href.replace("{{NAME}}", "")
filename = url.replace("http://progrium.viewdocs.io/dokku/", "")
filename = filename.replace("http://dokku.viewdocs.io/dokku/", "")
filename = filename.strip("/") + ".md"
filename = filename.removeprefix("dokku/")
ignore_errors_for = [
"getting-started/installation.md",
"getting-started/upgrading.md",
]
if not os.path.exists(docs_dir + "/" + filename):
if filename not in ignore_errors_for:
print("error fetching markdown file:", filename)
continue
for nav in navigation:
if header_name in nav:
if filename == "getting-started/installation.md":
child_dir = "getting-started/install/"
children = os.listdir(docs_dir + "/" + child_dir)
children = [child_dir + c for c in children]
children.sort()
children.insert(
0, "getting-started/advanced-installation.md")
if os.path.exists(docs_dir + "/" + filename):
children.insert(0, filename)
else:
children.insert(
0, "getting-started/installation/index.md")
nav[header_name].append({
"Getting Started with Dokku": children,
})
continue
elif filename == "getting-started/upgrading.md":
child_dir = "appendices/"
children = os.listdir(docs_dir + "/" + child_dir)
children.sort(key=lambda x: list(
map(int, x.split("-")[0].split('.'))),
reverse=True)
children = [child_dir + c for c in children]
if os.path.exists(docs_dir + "/" + filename):
children.insert(0, filename)
else:
children.insert(
0, "getting-started/upgrading/index.md")
nav[header_name].append({
"Upgrading": children,
})
continue
else:
nav[header_name].append(filename)
return navigation
def generate_nav(src, dest):
navigation = []
repo_dir = pathlib.Path(__file__).parent.parent.resolve()
docs_dir = str(repo_dir) + "/docs"
with open(docs_dir + "/template.html") as response:
soup = BeautifulSoup(response, "html.parser")
selectors = [
".container .row .list-group a",
".container-fluid .row .list-group a",
]
for selector in selectors:
navigation = get_nav_from_selector(soup, selector, docs_dir)
if len(navigation) > 0:
break
if len(navigation) == 0:
print("No navigation found")
sys.exit(1)
with open(src) as f:
data = yaml.unsafe_load(f)
data["nav"] = [
{"Docs": navigation},
{"Pro": "https://pro.dokku.com/docs/getting-started/"},
{"Blog": "https://dokku.com/blog/"},
{"Purchase Dokku Pro": "https://dokku.dpdcart.com/cart/add?product_id=217344&method_id=236878"},
]
with open(dest, mode="wt", encoding="utf-8") as f:
yaml.dump(data, f)
def modify_content_noop(lines, _):
modified = False
updated_lines = []
for line in lines:
updated_lines.append(line)
return updated_lines, modified
def modify_content_links(lines, filename):
filename = filename.replace("/usr/src/source/docs/", "")
parts = filename.split("/")
parts.pop()
replacement = "](" + '/'.join([".." for _ in parts]) + "/"
modified = False
updated_lines = []
for line in lines:
if "](/docs/" in line:
line = line.replace("](/docs/", replacement)
modified = True
updated_lines.append(line)
return updated_lines, modified
def modify_content_stripspace(lines, _):
modified = False
updated_lines = []
for line in lines:
line = line.rstrip()
updated_lines.append(line)
return updated_lines, modified
def modify_content_inject_newlines(lines, _):
modified = False
updated_lines = []
for line in lines:
updated_lines.append(line.rstrip() + "\n")
return updated_lines, modified
def is_info(line):
return line.startswith("> ")
def is_new(line):
return line.startswith("> ") and "new as of" in line.lower()
def is_note(line):
return line.startswith("> Note:")
def is_warning(line):
return line.startswith("> Warning:")
def modify_content_admonition(lines, _):
modified = False
updated_lines = []
admonition_lines = []
is_admonition = False
for line in lines:
if is_info(line) or is_new(line) or is_note(line) or is_warning(line):
if is_new(line):
line = line.replace("> ", "!!! tip \"New\"\n\n ")
line = line.replace("New as of", "Introduced in")
line = line.replace("new as of", "introduced in")
if is_note(line):
line = line.replace(
"> Note: ", "!!! note \"Note\"\n\n ")
elif is_warning(line):
line = line.replace(
"> Warning: ", "!!! warning \"Warning\"\n\n ")
elif is_info(line):
if not is_admonition:
line = line.replace("> ", "!!! info \"Info\"\n\n ")
elif line in [">", "> "]:
line = ""
else:
line = " " + line.removeprefix("> ")
is_admonition = True
admonition_lines.append(line)
elif is_admonition and line in [">", "> "]:
line = ""
admonition_lines.append(line)
elif is_admonition and line.startswith("> "):
line = " " + line.removeprefix("> ")
admonition_lines.append(line)
elif line == "":
is_admonition = False
if len(admonition_lines) > 0:
updated_lines.extend(admonition_lines)
admonition_lines = []
updated_lines.append("")
else:
updated_lines.append(line)
return updated_lines, modified
def is_shell_codeblock_start(line):
return line == "```shell"
def modify_content_terminal_example(lines, _):
modified = False
updated_lines = []
command_block = []
example_block = []
in_command_block = False
in_example_block = False
previous_block = ""
next_line_must_be = None
for line in lines:
if is_shell_codeblock_start(line):
command_block.append(line)
modified = True
in_command_block = True
continue
elif in_command_block:
command_block.append(line)
if line == "```":
in_command_block = False
previous_block = "command_block"
next_line_must_be = ""
continue
elif line == "```":
if previous_block == "":
updated_lines.append(line)
continue
elif previous_block == "command_block":
example_block.append(line)
if in_example_block:
previous_block = ""
in_example_block = False
updated_lines.append("=== \"Shell\"")
updated_lines.append("")
for command_line in command_block:
updated_lines.append(f" {command_line}")
command_block = []
updated_lines.append("")
updated_lines.append("=== \"Output\"")
updated_lines.append("")
for example_line in example_block:
updated_lines.append(f" {example_line}")
example_block = []
else:
in_example_block = True
continue
elif previous_block == "command_block":
if next_line_must_be is None:
if in_example_block:
example_block.append(line)
else:
updated_lines.extend(command_block)
updated_lines.append("")
updated_lines.append(line)
command_block = []
previous_block = ""
continue
elif next_line_must_be == "":
if line == "":
next_line_must_be = None
continue
updated_lines.append(line)
if len(command_block) > 0:
updated_lines.extend(command_block)
return updated_lines, modified
def update_markdown(src):
markdown_files = []
allowed_extensions = [".md"]
for subdir, _, files in os.walk(src):
for file in files:
ext = os.path.splitext(file)[-1].lower()
file_path = os.path.join(subdir, file)
if ext in allowed_extensions:
markdown_files.append(file_path)
modifiers = [
modify_content_noop,
modify_content_links,
modify_content_stripspace,
modify_content_admonition,
modify_content_terminal_example,
modify_content_inject_newlines,
]
for file in markdown_files:
modified = False
lines = []
with open(file, 'r') as f:
lines = f.readlines()
for modifier in modifiers:
lines, m = modifier(lines, file)
if m:
modified = True
if modified:
with open(file, 'w') as fp:
fp.writelines(lines)
def main():
print("----> Copying mkdocs.yml")
print(" Generating navigation")
generate_nav("/usr/src/source/mkdocs.yml", "/usr/src/app/mkdocs.yml")
print("----> Copying docs folder")
update_markdown("/usr/src/source/docs",)
if os.path.exists("/usr/src/app/docs"):
print(" Removing old docs folder")
shutil.rmtree("/usr/src/app/docs")
print(" Performing copy")
shutil.copytree("/usr/src/source/docs", "/usr/src/app/docs")
if __name__ == "__main__":
main()

75
deb.mk
View File

@@ -1,35 +1,14 @@
BUILD_DIRECTORY ?= /tmp
DOKKU_DESCRIPTION = 'Docker powered PaaS that helps you build and manage the lifecycle of applications'
DOKKU_REPO_NAME ?= dokku/dokku
DOKKU_ARCHITECTURE = amd64
DOKKU_UPDATE_DESCRIPTION = 'Binary that handles updating Dokku and related systems'
DOKKU_UPDATE_REPO_NAME ?= dokku/dokku
DOKKU_UPDATE_VERSION ?= 0.2.0
DOKKU_UPDATE_ARCHITECTURE = amd64
DOKKU_UPDATE_PACKAGE_NAME = dokku-update_$(DOKKU_UPDATE_VERSION)_$(DOKKU_UPDATE_ARCHITECTURE).deb
define SIGIL_DESCRIPTION
Standalone string interpolator and template processor
Sigil is a command line tool for template processing
and POSIX-compliant variable expansion. It was created
for configuration templating, but can be used for any
text processing.
endef
SIGIL_REPO_NAME ?= gliderlabs/sigil
SIGIL_VERSION ?= 0.4.0
SIGIL_ARCHITECTURE = amd64
SIGIL_PACKAGE_NAME = gliderlabs_sigil_$(SIGIL_VERSION)_$(SIGIL_ARCHITECTURE).deb
SIGIL_URL = https://github.com/gliderlabs/sigil/releases/download/v$(SIGIL_VERSION)/sigil_$(SIGIL_VERSION)_Linux_x86_64.tgz
BUILD_DIRECTORY ?= /tmp
DOKKU_DESCRIPTION = 'Docker powered PaaS that helps you build and manage the lifecycle of applications'
DOKKU_REPO_NAME ?= dokku/dokku
DOKKU_ARCHITECTURE ?= amd64
ifndef IS_RELEASE
IS_RELEASE = true
endif
export SIGIL_DESCRIPTION
.PHONY: install-from-deb deb-all deb-dokku deb-dokku-update deb-setup deb-sigil
.PHONY: install-from-deb deb-all deb-dokku deb-setup
install-from-deb:
@echo "--> Initial apt-get update"
@@ -40,12 +19,12 @@ install-from-deb:
wget -nv -O - https://get.docker.com/ | sh
@echo "--> Installing dokku"
wget -nv -O - https://packagecloud.io/dokku/dokku/gpgkey | apt-key add -
wget -qO- https://packagecloud.io/dokku/dokku/gpgkey | sudo tee /etc/apt/trusted.gpg.d/dokku.asc
@echo "deb https://packagecloud.io/dokku/dokku/ubuntu/ $(shell lsb_release -cs 2>/dev/null || echo "bionic") main" | sudo tee /etc/apt/sources.list.d/dokku.list
sudo apt-get update -qq >/dev/null
sudo DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true apt-get -qq -y --no-install-recommends install dokku
deb-all: deb-setup deb-dokku deb-sigil deb-dokku-update
deb-all: deb-setup deb-dokku
mv $(BUILD_DIRECTORY)/*.deb .
@echo "Done"
@@ -65,45 +44,9 @@ ifneq (,$(findstring false,$(IS_RELEASE)))
endif
cp -r debian /tmp/build-dokku/DEBIAN
sed -i.bak "s/^Architecture: .*/Architecture: $(DOKKU_ARCHITECTURE)/g" /tmp/build-dokku/DEBIAN/control && rm /tmp/build-dokku/DEBIAN/control.bak
rm -f /tmp/build-dokku/DEBIAN/lintian-overrides
cp debian/lintian-overrides /tmp/build-dokku/usr/share/lintian/overrides/dokku
sed -i.bak "s/^Version: .*/Version: `cat /tmp/build-dokku/var/lib/dokku/STABLE_VERSION`/g" /tmp/build-dokku/DEBIAN/control && rm /tmp/build-dokku/DEBIAN/control.bak
dpkg-deb --build /tmp/build-dokku "$(BUILD_DIRECTORY)/dokku_`cat /tmp/build-dokku/var/lib/dokku/VERSION`_$(DOKKU_ARCHITECTURE).deb"
lintian "$(BUILD_DIRECTORY)/dokku_`cat /tmp/build-dokku/var/lib/dokku/VERSION`_$(DOKKU_ARCHITECTURE).deb"
deb-dokku-update:
rm -rf /tmp/dokku-update*.deb dokku-update*.deb
echo "${DOKKU_UPDATE_VERSION}" > contrib/dokku-update-version
sudo fpm -t deb -s dir -n dokku-update \
--version $(DOKKU_UPDATE_VERSION) \
--architecture $(DOKKU_UPDATE_ARCHITECTURE) \
--package $(BUILD_DIRECTORY)/$(DOKKU_UPDATE_PACKAGE_NAME) \
--depends 'dokku' \
--url "https://github.com/$(DOKKU_UPDATE_REPO_NAME)" \
--description $(DOKKU_UPDATE_DESCRIPTION) \
--license 'MIT License' \
contrib/dokku-update=/usr/local/bin/dokku-update \
contrib/dokku-update-version=/var/lib/dokku-update/VERSION
deb-sigil:
rm -rf /tmp/tmp /tmp/build $(SIGIL_PACKAGE_NAME)
mkdir -p /tmp/tmp /tmp/build /tmp/build/usr/bin
@echo "-> Downloading package"
wget -q -O /tmp/tmp/sigil-$(SIGIL_VERSION).tgz $(SIGIL_URL)
cd /tmp/tmp/ && tar zxf /tmp/tmp/sigil-$(SIGIL_VERSION).tgz
@echo "-> Copying files into place"
cp /tmp/tmp/sigil /tmp/build/usr/bin/sigil && chmod +x /tmp/build/usr/bin/sigil
@echo "-> Creating $(SIGIL_PACKAGE_NAME)"
sudo fpm -t deb -s dir -C /tmp/build -n gliderlabs-sigil \
--version $(SIGIL_VERSION) \
--architecture $(SIGIL_ARCHITECTURE) \
--package $(BUILD_DIRECTORY)/$(SIGIL_PACKAGE_NAME) \
--url "https://github.com/$(SIGIL_REPO_NAME)" \
--maintainer "Jose Diaz-Gonzalez <dokku@josediazgonzalez.com>" \
--category utils \
--description "$$SIGIL_DESCRIPTION" \
--license 'MIT License' \
.
lintian "$(BUILD_DIRECTORY)/dokku_`cat /tmp/build-dokku/var/lib/dokku/VERSION`_$(DOKKU_ARCHITECTURE).deb" || true

8
debian/config vendored
View File

@@ -10,14 +10,6 @@ fi
readonly ACTION="${1:-configure}"
readonly VERSION="${2:-dev}"
db_input "high" "dokku/web_config" || true
db_go || true
db_get "dokku/web_config"
if [ $RET = "true" ]; then
exit 0
fi
db_input "high" "dokku/nginx_enable" || true
db_input "high" "dokku/hostname" || true
db_input "high" "dokku/vhost_enable" || true

6
debian/control vendored
View File

@@ -1,10 +1,10 @@
Package: dokku
Version: 0.23.3
Version: 0.28.2
Section: web
Priority: optional
Architecture: amd64
Depends: locales, git, cpio, curl, man-db, netcat, sshcommand (>= 0.12.0), docker-engine-cs (>= 17.05.0) | docker-engine (>= 17.05.0) | docker-io (>= 17.05.0) | docker.io (>= 17.05.0) | docker-ce (>= 17.05.0) | docker-ee (>= 17.05.0) | moby-engine, docker-image-labeler (>= 0.2.2), net-tools, software-properties-common, procfile-util (>= 0.11.0), python-software-properties | python3-software-properties, rsyslog, dos2unix, jq
Recommends: herokuish (>= 0.3.4), parallel, dokku-update, dokku-event-listener
Depends: apache2-utils, locales, git, cpio, curl, man-db, netcat, sshcommand (>= 0.12.0), docker-engine-cs (>= 17.05.0) | docker-engine (>= 17.05.0) | docker-io (>= 17.05.0) | docker.io (>= 17.05.0) | docker-ce (>= 17.05.0) | docker-ee (>= 17.05.0) | moby-engine, docker-image-labeler (>= 0.2.2), lambda-builder, net-tools, netrc, software-properties-common, parallel, procfile-util (>= 0.11.0), python-software-properties | python3-software-properties, rsync, rsyslog, dos2unix, jq, unzip
Recommends: herokuish (>= 0.3.4), bash-completion, dokku-update, dokku-event-listener
Pre-Depends: gliderlabs-sigil, nginx (>= 1.8.0) | openresty, dnsutils, cgroupfs-mount | cgroup-lite, plugn (>= 0.3.0), sudo, python3, debconf
Maintainer: Jose Diaz-Gonzalez <dokku@josediazgonzalez.com>
Description: Docker-powered PaaS that helps build and manage the lifecycle of applications

View File

@@ -10,6 +10,3 @@ dokku: hardening-no-relro
# Built golang binaries link to libc
dokku: missing-dependency-on-libc
# Temporary python dependency until #2247 is resolved
dokku: python-script-but-no-python-dep usr/share/dokku/contrib/dokku-installer.py

55
debian/postinst vendored
View File

@@ -43,6 +43,20 @@ setup-storage() {
}
setup-plugins() {
echo "Deleting invalid plugins"
if [ -f "${DOKKU_LIB_ROOT}/core-plugins/available/" ]; then
find "${DOKKU_LIB_ROOT}/core-plugins/available/" -type d -empty -delete
fi
if [ -f "${DOKKU_LIB_ROOT}/core-plugins/enabled/" ]; then
find "${DOKKU_LIB_ROOT}/core-plugins/enabled/" -type d -empty -delete
fi
if [ -f "${DOKKU_LIB_ROOT}/plugins/available/" ]; then
find "${DOKKU_LIB_ROOT}/plugins/available/" -type d -empty -delete
fi
if [ -f "${DOKKU_LIB_ROOT}/plugins/enabled/" ]; then
find "${DOKKU_LIB_ROOT}/plugins/enabled/" -type d -empty -delete
fi
echo "Setting up plugin directories"
# should be replaced by `plugn init`
mkdir -p "${DOKKU_LIB_ROOT}/core-plugins/available" "${DOKKU_LIB_ROOT}/plugins/available"
@@ -88,40 +102,7 @@ setup-sshcommand() {
fi
}
setup-dokku-installer() {
NGINX_ROOT="/etc/nginx"
[[ -x /usr/bin/openresty ]] && NGINX_ROOT="/usr/local/openresty/nginx/conf"
if command -v "python3" &>/dev/null; then
sed -i '1 s/^.*$/#!\/usr\/bin\/env python3/' /usr/share/dokku/contrib/dokku-installer.py
elif command -v "python2.7" &>/dev/null; then
sed -i '1 s/^.*$/#!\/usr\/bin\/env python2.7/' /usr/share/dokku/contrib/dokku-installer.py
fi
if [[ -f "$NGINX_ROOT/conf.d/dokku-installer.conf" ]]; then
echo "Setting up dokku-installer"
/usr/share/dokku/contrib/dokku-installer.py onboot
if command -v systemctl &>/dev/null; then
echo "Enabling dokku-installer"
systemctl enable dokku-installer
fi
installer_status="$(service dokku-installer status 2>/dev/null || true)"
if echo $installer_status | grep -Eq "(inactive|waiting)" >/dev/null; then
echo "Starting dokku-installer"
service dokku-installer start || echo "Unable to start dokku-installer"
fi
fi
}
dpkg-handling() {
db_get "dokku/web_config"
if [ "$RET" = "true" ]; then
db_stop
exit 0
fi
if [ -f "${DOKKU_ROOT}/VHOST" ]; then
echo "VHOST file detected, skipping modification"
else
@@ -130,12 +111,10 @@ dpkg-handling() {
db_get "dokku/hostname"
echo "Setting VHOST contents to $RET"
echo "$RET" >"${DOKKU_ROOT}/VHOST"
chown dokku:dokku "${DOKKU_ROOT}/VHOST"
fi
fi
db_get "dokku/hostname"
echo "$RET" >"${DOKKU_ROOT}/HOSTNAME"
if [ -z "${DEBCONF_RECONFIGURE}" ]; then
db_get "dokku/key_file"
if [ -f "$RET" ]; then
@@ -157,10 +136,10 @@ case "$1" in
setup-user
setup-storage
dpkg-handling
setup-plugins
setup-sshcommand
setup-dokku-installer
dpkg-handling
;;
*)

47
debian/preinst vendored
View File

@@ -7,55 +7,8 @@ if [[ -e /usr/share/debconf/confmodule ]]; then
. /usr/share/debconf/confmodule
fi
setup_dokku_installer() {
NGINX_BASE_PATH="$1"
NGINX_INIT_NAME="$2"
NGINX_CONF="${NGINX_BASE_PATH}/conf.d/dokku-installer.conf"
rm -f $NGINX_CONF
touch $NGINX_CONF
{
echo 'upstream dokku-installer { server 127.0.0.1:2000; }'
echo 'server {'
echo ' listen 80;'
echo ' location / {'
echo ' proxy_pass http://dokku-installer;'
echo ' }'
echo '}'
} >>$NGINX_CONF
rm -f $NGINX_BASE_PATH/sites-enabled/*
DOKKU_DISTRO="$(
. /etc/os-release >/dev/null 2>&1 || true
echo "$ID"
)"
case "$DOKKU_DISTRO" in
debian)
/usr/sbin/invoke-rc.d "$NGINX_INIT_NAME" reload || /usr/sbin/invoke-rc.d "$NGINX_INIT_NAME" start
;;
ubuntu)
if [[ -x /usr/bin/sv ]]; then
/usr/bin/sv reload "$NGINX_INIT_NAME" || /usr/bin/sv start "$NGINX_INIT_NAME"
else
"/etc/init.d/$NGINX_INIT_NAME" reload || "/etc/init.d/$NGINX_INIT_NAME" start
fi
;;
esac
}
case "$1" in
install)
db_get "dokku/web_config"
if [ "$RET" = "true" ]; then
if [[ -x /usr/bin/openresty ]]; then
setup_dokku_installer "/usr/local/openresty/nginx/conf" "openresty"
else
setup_dokku_installer "/etc/nginx" "nginx"
fi
fi
db_get "dokku/skip_key_file"
if [ -z "${DEBCONF_RECONFIGURE}" ] && [ "$RET" != "true" ]; then
db_get "dokku/key_file"

5
debian/templates vendored
View File

@@ -1,8 +1,3 @@
Template: dokku/web_config
Description: Enable the web-based config page?
Type: boolean
Default: true
Template: dokku/vhost_enable
Description: Enable vhost-based deployments?
Type: boolean

View File

@@ -12,9 +12,20 @@ log-fail() {
exit 1
}
support-userns() {
chown 0:0 /usr/bin/sudo
chmod 4755 /usr/bin/sudo
chown 0:0 /usr/lib/sudo/sudoers.so
chown -R 0:0 /etc/sudoers
chown -R 0:0 /etc/sudoers.d
chown -R 0:0 /run/sshd
}
main() {
local NGINX_ROOT
support-userns
if [[ ! -d /mnt/dokku ]]; then
log-info "Creating missing /mnt/dokku"
mkdir -p /mnt/dokku
@@ -51,6 +62,12 @@ main() {
echo "export DOCKER_BIN=/usr/local/bin/docker" >"/home/dokku/.dokkurc/DOCKER_BIN"
fi
if [[ -n "$DOKKU_HOST_ROOT" ]]; then
touch /etc/default/dokku
echo "export DOKKU_HOST_ROOT=$DOKKU_HOST_ROOT" >>/etc/default/dokku
chown dokku:dokku /etc/default/dokku
fi
NGINX_ROOT="/etc/nginx"
if [[ -x /usr/bin/openresty ]]; then
NGINX_ROOT="/usr/local/openresty/nginx/conf"

View File

@@ -1 +1 @@
dokku ALL=NOPASSWD:SETENV:/usr/bin/docker,/usr/bin/docker-image-labeler
dokku ALL=NOPASSWD:SETENV:/usr/bin/docker,/usr/bin/docker-image-labeler,/usr/bin/pack,/usr/bin/crontab

20
docker/usr/local/bin/pack Executable file
View File

@@ -0,0 +1,20 @@
#!/usr/bin/env bash
set -eo pipefail
[[ $TRACE ]] && set -x
main() {
declare desc="re-runs pack commands as sudo"
local PACK_BIN=""
if [[ -x "/usr/bin/pack" ]]; then
PACK_BIN="/usr/bin/pack"
fi
if [[ -z "$PACK_BIN" ]]; then
echo "! No pack binary found" 1>&2
exit 1
fi
sudo -E "$PACK_BIN" "$@"
}
main "$@"

19
docs.mk Normal file
View File

@@ -0,0 +1,19 @@
.PHONY: docs-build-image
docs-build-image:
docker build -f docs/_build/Dockerfile --progress plain -t app/mkdocs .
.PHONY: docs-build
docs-build:
@docker run --rm -p 3487:3487 -v "$(PWD):/usr/src/source" --name docs-serve app/mkdocs build
.PHONY: docs-serve
docs-serve:
docker run --rm -p 3487:3487 -v "$(PWD):/usr/src/source" --name docs-serve app/mkdocs serve
.PHONY: docs-deps
docs-deps:
@docker run --rm -p 3487:3487 -v "$(PWD):/usr/src/app" app/mkdocs deps
.PHONY: docs-enter
docs-enter:
docker exec -it docs-serve bash

12
docs/_build/Dockerfile vendored Normal file
View File

@@ -0,0 +1,12 @@
FROM python:3.10-alpine
WORKDIR /usr/src/app
COPY docs/_build/requirements.txt .
RUN apk add --no-cache bash yaml && \
pip install --no-cache-dir -r requirements.txt
COPY docs/_build/entrypoint /bin/entrypoint
ENTRYPOINT [ "/bin/entrypoint" ]

30
docs/_build/app-nginx.conf.sigil vendored Normal file
View File

@@ -0,0 +1,30 @@
worker_processes 1;
error_log stderr;
pid nginx.pid;
daemon off;
events {
worker_connections 768;
}
http {
types_hash_max_size 2048;
include mime.types;
charset UTF-8;
server {
listen {{ $.PORT }};
server_name _;
root /app/www;
index index.html;
port_in_redirect off;
include /app/www/nginx.conf.d/*.conf;
location ^~ /nginx.conf.d/ {
return 404;
}
location / {
try_files $uri $uri/ =404;
}
}
}

39
docs/_build/entrypoint vendored Executable file
View File

@@ -0,0 +1,39 @@
#!/usr/bin/env bash
set -eo pipefail
write-mkdocs() {
if [[ -f /usr/src/source/contrib/write-mkdocs ]]; then
if ! python /usr/src/source/contrib/write-mkdocs; then
exit 0
fi
fi
}
main() {
declare CMD="$1" ARGS=("${@:2}")
if [[ "$CMD" == "build" ]]; then
write-mkdocs
echo "----> Executing mkdocs build"
mkdocs build
site_dir="$(grep site_dir mkdocs.yml | awk '{print $2}')"
cp -r "/usr/src/app/${site_dir}" "/usr/src/source/${site_dir}"
return $?
fi
if [[ "$CMD" == "deps" ]]; then
pip freeze
return $?
fi
if [[ "$CMD" == "serve" ]]; then
write-mkdocs
mkdocs serve -a 0.0.0.0:3487
return $?
fi
"$CMD" "${ARGS[@]}"
}
main "$@"

23
docs/_build/requirements.txt vendored Normal file
View File

@@ -0,0 +1,23 @@
beautifulsoup4==4.11.1
click==8.1.3
ghp-import==2.1.0
importlib-metadata==4.12.0
Jinja2==3.1.2
Markdown==3.3.7
MarkupSafe==2.1.1
mergedeep==1.3.4
mkdocs==1.3.1
mkdocs-exclude==1.0.2
mkdocs-material==8.4.2
mkdocs-material-extensions==1.0.3
packaging==21.3
Pygments==2.13.0
pymdown-extensions==9.5
pyparsing==3.0.9
python-dateutil==2.8.2
PyYAML==6.0
pyyaml_env_tag==0.1
six==1.16.0
soupsieve==2.3.2.post1
watchdog==2.1.9
zipp==3.8.1

56
docs/_overrides/main.html Normal file
View File

@@ -0,0 +1,56 @@
<!--
Copyright (c) 2016-2022 Martin Donath <martin.donath@squidfunk.com>
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
deal in the Software without restriction, including without limitation the
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE SOFTWARE.
-->
{% extends "base.html" %}
<!-- Custom front matter -->
{% block extrahead %}
<!-- Extra style sheets (can't be set in mkdocs.yml due to content hash) -->
<link
rel="stylesheet"
href="{{ 'overrides/assets/stylesheets/main.css' | url }}"
/>
{% endblock %}
<!-- Announcement bar -->
{% block announce %}
<a href="https://twitter.com/dokku">
For updates follow <strong>@dokku</strong> on
<span class="twemoji twitter">
{% include ".icons/fontawesome/brands/twitter.svg" %}
</span>
<strong>Twitter</strong>
</a>
{% endblock %}
<!-- Theme-related JavaScript -->
{% block scripts %}
{{ super() }}
<!-- Extra JavaScript (can't be set in mkdocs.yml due to content hash) -->
<script src="{{ 'overrides/assets/javascripts/bundle.js' | url }}"></script>
{% endblock %}
{% block outdated %}
You're not viewing the latest version.
<a href="{{ page.abs_url }}">
<strong>Click here to go to latest.</strong>
</a>
{% endblock %}

View File

@@ -32,7 +32,7 @@ To extract the backup onto another server, copy the backup to the server and ext
sudo tar -xzvf path/to/dokku/backup.tar.gz -C /
```
At this point, all datastores should be individually started and checked for data integrity. Once this is complete, individual applications can be rebuilt. Please consult the [process management documentation](/docs/deployment/process-management.md#rebuilding-apps) for more information on how to rebuild applications.
At this point, all datastores should be individually started and checked for data integrity. Once this is complete, individual apps can be rebuilt. Please consult the [process management documentation](/docs/processes/process-management.md#rebuilding-apps) for more information on how to rebuild apps.
## Caveats
@@ -56,9 +56,15 @@ git remote add dokku dokku@[dokku.me:dokku.me]
git push dokku [master]
```
### Docker Networks
Docker networks generated by Dokku should be recreated. Running `dokku network:report` will output all networks in use by various apps, which can then be used to recreate them via `dokku network:create $NETWORK`.
Networks created by tools other than Dokku may be created as they initially were.
### Docker Image and Tar-based Apps
These applications may fail to rebuild via the normal `ps:rebuild` method. Redeploy these apps by running the original commands used to deploy them
These apps may fail to rebuild via the normal `ps:rebuild` method. Redeploy these apps by running the original commands used to deploy them
### Datastores
@@ -81,14 +87,13 @@ The plugin directory is contained at the `/var/lib/dokku/plugins` directory. Cor
Note that restoring a plugin will not trigger any `install` or `dependencies` triggers. You will need to run these manually. See the [plugin management documentation](/docs/advanced-usage/plugin-management.md#installing-a-plugin) for more information on how to trigger these two hooks.
### Volumes and Static Assets
Dokku doesn't enforce a [300mb](https://devcenter.heroku.com/articles/slug-compiler#slug-size) limit on apps, but it's best practice to keep binary assets outside of git. Since containers are considered volatile in Dokku, external stores like s3 or storage mounts should be used for non-volatile items like user uploads. The Dokku storage core plugin can be used to mount local directories / volumes inside the docker container.
System administrators are highly encouraged to store persistent data in app-specific subdirectories of the path `/var/lib/dokku/data/storage`. This will help ensure restores of the aforementioned primary Dokku directories will restore service to all apps.
See the [persistent storage documentation](/docs/advanced-usage/persistent-storage.md) for more information on how to attach persistent storage to your application.
See the [persistent storage documentation](/docs/advanced-usage/persistent-storage.md) for more information on how to attach persistent storage to your app.
## Recovering app code

View File

@@ -2,11 +2,15 @@
> New as of 0.5.0
## Usage
### Overview
Sometimes you need to run a command on deployment time, but before an app is completely deployed. Common use cases include:
* Checking a database is initialized
* Running database migrations
* Any commands required to set up the server (e.g. something like a Django `collectstatic`)
- Checking a database is initialized
- Running database migrations
- Any commands required to set up the server (e.g. something like a Django `collectstatic`)
To support this, Dokku provides support for a special `release` command within your app's `Procfile`, as well as a special `scripts.dokku` key inside of your app's `app.json` file. Be aware that all commands are run within the context of the built docker image - no commands affect the host unless there are volume mounts attached to your app.
@@ -22,8 +26,14 @@ Each "phase" has different expectations and limitations:
- When to use: This should be used in conjunction with external systems to signal the completion of your deploy.
- Are changes committed to the image at this phase: No
- Example use-cases
- Notifying slack that your app is deployed
- Coordinating traffic routing with a central load balancer
- Notifying slack that your app is deployed
- Coordinating traffic routing with a central load balancer
- `app.json`: `scripts.postdeploy`
- When to use: This should be used when you wish to run a command _once_, after the app is created and not on subsequent deploys to the app.
- Are changes committed to the image at this phase: No
- Example use-cases
- Setting up OAuth clients and DNS
- Loading seed/test data into the app’s test database
- `Procfile`: `release`
- When to use: This should be used in conjunction with external systems to signal the completion of your app image build.
- Are changes committed to the image at this phase: No
@@ -32,18 +42,100 @@ Each "phase" has different expectations and limitations:
- Priming or invalidating cache stores
- Running database migrations
Additionally, if using a Dockerfile with an `ENTRYPOINT`, the deployment task is passed to that entrypoint as is.
Additionally, if using a Dockerfile with an `ENTRYPOINT`, the deployment task is passed to that entrypoint as is. The exceptions are if the entrypoint is one of the following:
- `["/tini", "--"]`
- `["/bin/tini", "--"]`
- `["/usr/bin/tini", "--"]`
- `["/usr/local/bin/tini", "--"]`
Please keep the above in mind when utilizing deployment tasks.
> To execute commands on the host during a release phase, see the [plugin creation documentation](/docs/development/plugin-creation.md) docs for more information on building your own custom plugin.
## `app.json` deployment tasks
### Changing the `app.json` location
When deploying a monorepo, it may be desirable to specify the specific path of the `app.json` file to use for a given app. This can be done via the `app-json:set` command. If a value is specified and that file does not exist within the repository, Dokku will continue the build process as if the repository has no `app.json` file.
```shell
dokku app-json:set node-js-app appjson-path second-app.json
```
The default value may be set by passing an empty value for the option:
```shell
dokku app-json:set node-js-app appjson-path
```
The `appjson-path` property can also be set globally. The global default is `app.json`, and the global value is used when no app-specific value is set.
```shell
dokku app-json:set --global appjson-path global-app.json
```
The default value may be set by passing an empty value for the option.
```shell
dokku app-json:set --global appjson-path
```
### Displaying app-json reports for an app
> New as of 0.25.0
You can get a report about the app's storage status using the `app-json:report` command:
```shell
dokku app-json:report
```
```
=====> node-js-app app-json information
App-json computed appjson path: app2.json
App-json global appjson path: app.json
App-json appjson path: app2.json
=====> python-sample app-json information
App-json computed appjson path: app.json
App-json global appjson path: app.json
App-json appjson path:
=====> ruby-sample app-json information
App-json computed appjson path: app.json
App-json global appjson path: app.json
App-json appjson path:
```
You can run the command for a specific app also.
```shell
dokku app-json:report node-js-app
```
```
=====> node-js-app app-json information
App-json computed appjson path: app2.json
App-json global appjson path: app.json
App-json appjson path: app2.json
```
You can pass flags which will output only the value of the specific information you want. For example:
```shell
dokku app-json:report node-js-app --app-json-appjson-path
```
```
app2.json
```
### Deployment tasks
#### `app.json` deployment tasks
Dokku provides limited support for the `app.json` manifest from Heroku (documentation available [here](https://devcenter.heroku.com/articles/app-json-schema)). The keys available for use with Deployment Tasks are:
- `scripts.dokku.predeploy`: This is run _after_ an app's docker image is built, but _before_ any containers are scheduled. Changes made to your image are committed at this phase.
- `scripts.dokku.postdeploy`: This is run _after_ an app's containers are scheduled. Changes made to your image are *not* committed at this phase.
- `scripts.dokku.postdeploy`: This is run _after_ an app's containers are scheduled. Changes made to your image are _not_ committed at this phase.
- `scripts.postdeploy`: This is run _after_ an app's containers are scheduled. Changes made to your image are _not_ committed at this phase.
For buildpack-based deployments, the location of the `app.json` file should be at the root of your repository. Dockerfile-based app deploys should have the `app.json` in the configured `WORKDIR` directory; otherwise Dokku defaults to the buildpack app behavior of looking in `/app`.
@@ -57,12 +149,13 @@ The following is an example `app.json` file. Please note that only the `scripts.
"dokku": {
"predeploy": "touch /app/predeploy.test",
"postdeploy": "curl https://some.external.api.service.com/deployment?state=success"
}
},
"postdeploy": "curl https://some.external.api.service.com/created?state=success"
}
}
```
## Procfile Release command
#### Procfile Release command
> New as of 0.14.0
@@ -74,6 +167,6 @@ To use the `release` command, simply add a `release` stanza to your Procfile.
release: curl https://some.external.api.service.com/deployment?state=built
```
Unlike the `scripts.dokku.predeploy` command, changes made during by the `release` command are *not* persisted to disk.
Unlike the `scripts.dokku.predeploy` command, changes made during by the `release` command are _not_ persisted to disk.
> Warning: scaling the release command up will likely result in unspecified issues within your deployment, and is highly discouraged.

View File

@@ -2,7 +2,7 @@
> New as of 0.3.17
Pass [options](https://docs.docker.com/engine/reference/run/) to Docker during Dokku's `build`, `deploy` and `run` phases
Pass [container options](https://docs.docker.com/engine/reference/run/) to the `docker run` command during Dokku's `build`, `deploy` and `run` phases
```
docker-options:add <app> <phase(s)> OPTION # Add Docker option to app for phase (comma-separated phase list)
@@ -29,11 +29,13 @@ Manipulation of docker options will not restart running containers. This enables
More information on supported Docker options can be found here: https://docs.docker.com/engine/reference/commandline/run/.
Container options configured via the `docker-options` plugin are not used to modify the process a container runs. Container options are the `[OPTIONS]` portion of the following, where `[CONTAINER_COMMAND]` and `[ARG]` are the process and the arguments passed to it that are launched in the created container: `docker run [OPTIONS] [CONTAINER_COMMAND] [ARG...]`. Please see the documentation for [customizing the run command](/docs/deployment/builders/dockerfiles.md#customizing-the-run-command) or use a [Procfile](/docs/deployment/builders/dockerfiles.md#procfiles-and-multiple-processes) to modify the command used by a Dockerfile-based container.
## Examples
### Add Docker options
Add some options for the deployed/running app and when executing [`dokku run`](/docs/deployment/one-off-processes.md):
Add some options for the deployed/running app and when executing [`dokku run`](/docs/processes/one-off-tasks.md):
```shell
# Mount a host volume in a Docker container: "-v /host/path:/container/path"

View File

@@ -4,12 +4,12 @@
The preferred method to mount external containers to a Dokku managed container, is to use the Dokku storage plugin.
```
storage:list <app> # List bind mounts for app's container(s) (host:container)
storage:mount <app> <host-dir:container-dir> # Create a new bind mount
storage:report [<app>] [<flag>] # Displays a checks report for one or more apps
storage:unmount <app> <host-dir:container-dir> # Remove an existing bind mount
storage:ensure-directory [--chown option] <directory> # Creates a persistent storage directory in the recommended storage path
storage:list <app> # List bind mounts for app's container(s) (host:container)
storage:mount <app> <host-dir:container-dir> # Create a new bind mount
storage:report [<app>] [<flag>] # Displays a checks report for one or more apps
storage:unmount <app> <host-dir:container-dir> # Remove an existing bind mount
```
> The storage plugin is compatible with storage mounts created with the docker-options. The storage plugin will only list mounts from the deploy/run phase.
@@ -19,51 +19,79 @@ The storage plugin supports the following mount points:
- explicit paths that exist on the host
- docker volumes
There are a few caveats to using the persistent storage plugin:
- Using implicit paths that do not exist are no longer supported, and actually deprecated in [Docker 1.9.0](https://github.com/docker/docker/releases/tag/v1.9.0). When you specify a persistent storage mount, the host directory is **not** autocreated by either Dokku or Docker.
- We recommend using the directory `/var/lib/dokku/data/storage` directory as the root host path for mounts, and we create this on Dokku installation.
- Mounts are only available at run and deploy times, and you **must** redeploy (restart) an app to mount or unmount to an existing app's container.
- When a directory is mounted, any existing files within the container will be overwritten. If you are writing assets during the build process and then replace the directory with a mount, those files will no longer exist. This is a Docker limitation.
- Paths are mounted within the container at the root of the disk - `/` - and are **not** relative to `/app` (for buildpacks deploys) or the `WORKDIR` (for Dockerfile/Docker images).
- For applications using buildpack deploys, the host directory should be owned by the user and group id `32767`. This is due to how permissions within Herokuish - which builds the Docker images - works. For Dockerfile or Docker image deployments, please use the user and group id which corresponds to the one running the process within the container.
## Usage
This example demonstrates how to mount the recommended directory to `/storage` inside an application called `node-js-app`:
### Creating storage directories
> New as of 0.25.5
A storage directory can be created with the `storage:ensure-directory` command. This command will create a subdirectory in the recommended `/var/lib/dokku/data/storage` path - created during Dokku installation - and prepare it for use with an app.
```shell
# we use a subdirectory inside of the host directory to scope it to just the app
dokku storage:mount node-js-app /var/lib/dokku/data/storage/node-js-app:/storage
dokku storage:ensure-directory lollipop
```
Dokku will then mount the shared contents of `/var/lib/dokku/data/storage/node-js-app` to `/storage` inside the container.
```
-----> Ensuring /var/lib/dokku/data/storage/lollipop exists
Setting directory ownership to 32767:32767
Directory ready for mounting
```
Once you have mounted persistent storage, you will also need to restart the application. See the
[process scaling documentation](/docs/deployment/process-management.md) for more information.
By default, permissions are set for usage with Herokuish buildpacks. These permissions can be changed via the `--chown` option according to the following table:
- `--chown herokuish` (default): Use `32767:32767` as the folder permissions.
- This is used for apps deployed with Buildpacks via Herokuish.
- `--chown heroku`: Use `1000:1000` as the folder permissions.
- This is used for apps deployed with Cloud Native Buildpacks using the `heroku/buildpacks` builder.
- `--chown packeto`: Use `2000:2000` as the folder permissions.
- This is used for apps deployed with Cloud Native Buildpacks using the `cloudfoundry/cnb` or `packeto` builders.
- `--chown false`: Skips the `chown` call.
Users deploying via Dockerfile will want to specify `--chown false` and manually `chown` the created directory if the user and/or group id of the runnning process in the deployed container do not correspond to any of the above options.
> Warning: Failing to set the correct directory ownership may result in issues in persisting files written to the mounted storage directory.
### Mounting storage into apps
Dokku supports mounting both explicit host paths as well as docker volumes via the `storage:mount` command. This takes two arguments, an app name and a `host-path:container-path` or `docker-volume:container-path` combination.
```shell
# mount the directory into your container's /app/storage directory, relative to the container root (/)
# explicit host paths _must_ exist prior to usage.
dokku storage:mount node-js-app /var/lib/dokku/data/storage/node-js-app:/app/storage
# mount the docker volume into your container's /app/storage directory, relative to the container root (/)
# docker volumes _must_ exist prior to usage.
dokku storage:mount node-js-app some-docker-volume:/app/storage
```
In the first example, Dokku will then mount the shared contents of `/var/lib/dokku/data/storage/node-js-app` to `/app/storage` inside the container. The mount point is *not* relative to your app's working directory, and is instead relative to the root (`/`) of the container. Mounts are only available for containers created via `run` and by the deploy process, and not during the build process. In addition, the host path is never auto-created by either Dokku or Docker, and should be an explicit path, not one relative to the current working directory.
> If the `/storage` path within the container had pre-existing content, the container files will be over-written. This may be an issue for users that create assets at build time but then mount a directory at the same place during runtime. Files are not merged.
Once persistent storage is mounted, the app requires a restart. See the [process scaling documentation](/docs/processes/process-management.md) for more information.
```shell
dokku ps:restart app-name
```
A more complete workflow may require making a custom directory for your application and mounting it within your `/app/storage` directory instead. The mount point is *not* relative to your application's working directory, and is instead relative to the root of the container.
### Unmounting storage
If an app no longer requires a mounted volume or directory, the `storage:unmount` command can be called. This takes the same arguments as the `storage:mount` command, an app name and a `host-path:container-path` or `docker-volume:container-path` combination.
```shell
# creating storage for the app 'node-js-app'
mkdir -p /var/lib/dokku/data/storage/node-js-app
# unmount the directory from your container's /app/storage directory, relative to the container root (/)
dokku storage:unmount node-js-app /var/lib/dokku/data/storage/node-js-app:/app/storage
# ensure the proper user has access to this directory
chown -R dokku:dokku /var/lib/dokku/data/storage/node-js-app
# as of 0.7.x, you should chown using the `32767` user and group id for buildpack deploys
# For dockerfile deploys, substitute the user and group id in use within the image
chown -R 32767:32767 /var/lib/dokku/data/storage/node-js-app
# mount the directory into your container's /app/storage directory, relative to root
dokku storage:mount app-name /var/lib/dokku/data/storage/node-js-app:/app/storage
# unmount the docker volume from your container's /app/storage directory, relative to the container root (/)
dokku storage:unmount node-js-app some-docker-volume:/app/storage
```
You can mount one or more directories as desired by following the above pattern.
Once persistent storage is unmounted, the app requires a restart. See the [process scaling documentation](/docs/processes/process-management.md) for more information.
```shell
dokku ps:restart app-name
```
### Displaying storage reports for an app
@@ -111,9 +139,9 @@ dokku storage:report node-js-app --storage-deploy-mounts
## Use Cases
### Persistent storage
### Sharing storage across deploys
Dokku is powered by Docker containers, which recommends in their [best practices](https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/#containers-should-be-ephemeral) that containers be treated as ephemeral. In order to manage persistent storage for web applications, like user uploads or large binary assets like images, a directory outside the container should be mounted.
Dokku is powered by Docker containers, which recommends in their [best practices](https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/#containers-should-be-ephemeral) that containers be treated as ephemeral. In order to manage persistent storage for web apps, like user uploads or large binary assets like images, a directory outside the container should be mounted.
### Shared storage between containers
@@ -139,12 +167,12 @@ You cannot use mounted volumes during the build phase of a Dockerfile deploy. Th
> Note: **This can cause data loss** if you bind a mount under `/app` in buildpack apps as herokuish will attempt to remove the original app path during the build phase.
## Application User and Persistent Storage file ownership (buildpack apps only)
## App User and Persistent Storage file ownership (buildpack apps only)
> New as of 0.7.1
By default, Dokku will execute your buildpack application processes as the `herokuishuser` user. You may override this by setting the `DOKKU_APP_USER` config variable.
By default, Dokku will execute your buildpack app processes as the `herokuishuser` user. You may override this by setting the `DOKKU_APP_USER` config variable.
> NOTE: this user must exist in your herokuish image.
Additionally, the default `docker-local` scheduler that comes with Dokku will ensure your storage mounts are owned by either `herokuishuser` or the overridden value you have set in `DOKKU_APP_USER`. See the [docker-local scheduler documentation](/docs/advanced-usage/schedulers/docker-local.md#disabling-chown-of-persistent-storage) docs for more information.
Additionally, the default `docker-local` scheduler that comes with Dokku will ensure your storage mounts are owned by either `herokuishuser` or the overridden value you have set in `DOKKU_APP_USER`. See the [docker-local scheduler documentation](/docs/deployment/schedulers/docker-local.md#disabling-chown-of-persistent-storage) docs for more information.

View File

@@ -35,35 +35,35 @@ dokku plugin:list
```
plugn: dev
00_dokku-standard 0.23.3 enabled dokku core standard plugin
20_events 0.23.3 enabled dokku core events logging plugin
app-json 0.23.3 enabled dokku core app-json plugin
apps 0.23.3 enabled dokku core apps plugin
build-env 0.23.3 enabled dokku core build-env plugin
buildpacks 0.23.3 enabled dokku core buildpacks plugin
certs 0.23.3 enabled dokku core certificate management plugin
checks 0.23.3 enabled dokku core checks plugin
common 0.23.3 enabled dokku core common plugin
config 0.23.3 enabled dokku core config plugin
docker-options 0.23.3 enabled dokku core docker-options plugin
domains 0.23.3 enabled dokku core domains plugin
enter 0.23.3 enabled dokku core enter plugin
git 0.23.3 enabled dokku core git plugin
logs 0.23.3 enabled dokku core logs plugin
network 0.23.3 enabled dokku core network plugin
nginx-vhosts 0.23.3 enabled dokku core nginx-vhosts plugin
plugin 0.23.3 enabled dokku core plugin plugin
proxy 0.23.3 enabled dokku core proxy plugin
ps 0.23.3 enabled dokku core ps plugin
repo 0.23.3 enabled dokku core repo plugin
resource 0.23.3 enabled dokku core resource plugin
scheduler-docker-local 0.23.3 enabled dokku core scheduler-docker-local plugin
shell 0.23.3 enabled dokku core shell plugin
ssh-keys 0.23.3 enabled dokku core ssh-keys plugin
storage 0.23.3 enabled dokku core storage plugin
tags 0.23.3 enabled dokku core tags plugin
tar 0.23.3 enabled dokku core tar plugin
trace 0.23.3 enabled dokku core trace plugin
00_dokku-standard 0.28.2 enabled dokku core standard plugin
20_events 0.28.2 enabled dokku core events logging plugin
app-json 0.28.2 enabled dokku core app-json plugin
apps 0.28.2 enabled dokku core apps plugin
build-env 0.28.2 enabled dokku core build-env plugin
buildpacks 0.28.2 enabled dokku core buildpacks plugin
certs 0.28.2 enabled dokku core certificate management plugin
checks 0.28.2 enabled dokku core checks plugin
common 0.28.2 enabled dokku core common plugin
config 0.28.2 enabled dokku core config plugin
docker-options 0.28.2 enabled dokku core docker-options plugin
domains 0.28.2 enabled dokku core domains plugin
enter 0.28.2 enabled dokku core enter plugin
git 0.28.2 enabled dokku core git plugin
logs 0.28.2 enabled dokku core logs plugin
network 0.28.2 enabled dokku core network plugin
nginx-vhosts 0.28.2 enabled dokku core nginx-vhosts plugin
plugin 0.28.2 enabled dokku core plugin plugin
proxy 0.28.2 enabled dokku core proxy plugin
ps 0.28.2 enabled dokku core ps plugin
repo 0.28.2 enabled dokku core repo plugin
resource 0.28.2 enabled dokku core resource plugin
scheduler-docker-local 0.28.2 enabled dokku core scheduler-docker-local plugin
shell 0.28.2 enabled dokku core shell plugin
ssh-keys 0.28.2 enabled dokku core ssh-keys plugin
storage 0.28.2 enabled dokku core storage plugin
tags 0.28.2 enabled dokku core tags plugin
tar 0.28.2 enabled dokku core tar plugin
trace 0.28.2 enabled dokku core trace plugin
```
> Warning: All plugin commands other than `plugin:list` and `plugin:help` require sudo access and must be run directly from the Dokku server.

View File

@@ -0,0 +1,126 @@
# Registry Management
> New as of 0.25.0
```
registry:login [--password-stdin] <server> <username> [<password>] # Login to a docker registry
registry:report [<app>] [<flag>] # Displays a registry report for one or more apps
registry:set <app> <key> (<value>) # Set or clear a registry property for an app
```
The registry plugin enables interacting with remote registries, which is useful when either deploying images via `git:from-image` or when interacting with custom schedulers to deploy built image artifacts.
## Usage
### Logging into a registry
The `registry:login` command can be used to log into a docker registry. The following are examples for logging into various common registries:
```shell
# hub.docker.com
dokku registry:login docker.io $USERNAME $PASSWORD
# digitalocean
# the username and password are both defined as the same api token
dokku registry:login registry.digitalocean.com $DIGITALOCEAN_API_TOKEN $DIGITALOCEAN_API_TOKEN
# github container registry
# see the following link for information on retrieving a personal access token
# https://docs.github.com/en/packages/guides/pushing-and-pulling-docker-images#authenticating-to-github-container-registry
dokku registry:login ghcr.io $USERNAME $REGISTRY_PAT_TOKEN
# quay
# a robot user may be used to login
dokku registry:login quay.io $USERNAME $PASSWORD
```
For security reasons, the password may also be specified as stdin by specifying the `--password-stdin` flag. This is supported regardless of the registry being logged into.
```shell
echo "$PASSWORD" | dokku registry:login --password-stdin docker.io $USERNAME
```
For certain Docker registries - such as Amazon ECR or Google's GCR registries - users may instead wish to use a docker credential helper to automatically authenticate against a server; please see the documentation regarding the credential helper in question for further setup instructions.
### Setting a remote server
To specify a remote server registry for pushes, set the `server` property via the `registry:set` command. The default value for this property is empty string. Setting the value to `docker.io` or `hub.docker.com` will result in the computed value being empty string (as that is the default, implicit registry), while any non-zero length value will have a `/` appended to it if there is not one already.
```shell
dokku registry:set node-js-app server docker.io
```
This property can be set for a single app or globally via the `--global` flag. When set globally, the app-specific value will always overide the global value. The default global value for this property is empty string.
```shell
dokku registry:set --global server docker.io
```
Setting the property value to an empty string will reset the value to the system default. Resetting the value can be done per app or globally.
```shell
# per-app
dokku registry:set node-js-app server
# globally
dokku registry:set --global server
```
The following are the values that should be used for common remote servers:
- Amazon Elastic Container Registry:
- value: `$AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com/`
- notes: The `$AWS_ACCOUNT_ID` and `$AWS_REGION` should match the values for your account and region, respectively. Additionally, an IAM profile that allows `push` access to the repository specified by `image-repo` should be attached to your Dokku server.
- Azure Container Registry:
- value `$REGISTRY_NAME.azurecr.io/`
- notes: The `$AKS_REGISTRY_NAME` should match the name of the registry created on your account.
- Docker Hub:
- value: `docker.io/`
- notes: Requires owning the namespace used in the `image-repo` value.
- Digitalocean:
- value: `registry.digitalocean.com/`
- notes: Requires setting the correct `image-repo` value for your registry.
- Github Container Registry:
- value: `ghcr.io/`
- notes: Requires that the authenticated user has access to the namespace used in the `image-repo` value.
- Quay.io:
- value: `quay.io/`
### Specifying an image repository name
By default, Dokku uses the value `dokku/$APP_NAME` as the image repository that is pushed and deployed. For certain registries, the `dokku` namespace may not be available to your user. In these cases, the value can be set by changing the value of the `image-repo` property via the `registry:set` command.
```shell
dokku registry:set node-js-app image-repo my-awesome-prefix/node-js-app
```
Setting the property value to an empty string will reset the value to the system default. Resetting the value has to be done per-app.
```shell
# per-app
dokku registry:set node-js-app push-on-release
```
### Pushing images on build
To push the image on release, set the `push-on-release` property to `true` via the `registry:set` command. The default value for this property is `false`. Setting the property to `true` will result in the image being tagged with an ID that is incremented with every release. This tag will be what is used for running app code.
```shell
dokku registry:set node-js-app push-on-release true
```
This property can be set for a single app or globally via the `--global` flag. When set globally, the app-specific value will always overide the global value. The default global value for this property is `false`.
```shell
dokku registry:set --global push-on-release true
```
Setting the property value to an empty string will reset the value to the system default. Resetting the value can be done per app or globally.
```shell
# per-app
dokku registry:set node-js-app push-on-release
# globally
dokku registry:set --global push-on-release
```

View File

@@ -28,7 +28,7 @@ Valid resource options include:
- `--network-egress`
- `--nvidia-gpu`
See the [Supported Resource Management Properties](/docs/advanced-usage/schedulers/docker-local.md#supported-resource-management-properties) section of the docker local scheduler documentation for more information on how each resource limit maps to Docker.
See the [Supported Resource Management Properties](/docs/deployment/schedulers/docker-local.md#supported-resource-management-properties) section of the docker local scheduler documentation for more information on how each resource limit maps to Docker.
Resource limits and reservations are applied only during the `run` and `deploy` phases of an application, and will not impact the `build` phase of an application.
@@ -103,7 +103,6 @@ dokku resource:limit node-js-app
This may also be combined with the `--process-type` flag to see app limits on a process-type level. Note that the displayed values are not merged with the defaults.
```shell
dokku resource:limit --process-type web node-js-app
```

View File

@@ -1,10 +0,0 @@
# Alternative Schedulers
In addition to the built-in [docker-local scheduler](/docs/advanced-usage/schedulers/docker-local.md), Dokku also supports two scheduler plugins:
- [Kubernetes](https://github.com/dokku/dokku-scheduler-kubernetes)
- [Nomad](https://github.com/dokku/dokku-scheduler-nomad)
These scheduler implementations may not be complete, though provide enough functionality for a user to get an app deployed via the underlying scheduler.
For users that require additional functionality, please refer to the [Sponsoring Documentation](https://github.com/dokku/.github/blob/master/SPONSORING.md).

View File

@@ -1,83 +0,0 @@
# Docker Local Scheduler
> Subcommands new as of 0.12.12
```
scheduler-docker-local:report [<app>] [<flag>] # Displays a scheduler-docker-local report for one or more apps
scheduler-docker-local:set <app> <key> (<value>) # Set or clear a scheduler-docker-local property for an app
```
> New as of 0.12.0
Dokku natively includes functionality to manage application lifecycles for a single server using the `scheduler-docker-local` plugin. It is the default scheduler, but as with all schedulers, it is set on a per-application basis. The scheduler can currently be overridden by running the following command:
```shell
dokku config:set node-js-app DOCKER_SCHEDULER=docker-local
```
As it is the default, unsetting the `DOCKER_SCHEDULER` config variable is also a valid way to reset the scheduler.
```shell
dokku config:unset node-js-app DOCKER_SCHEDULER
```
## Usage
### Disabling chown of persistent storage
The `scheduler-docker-local` plugin will ensure your storage mounts are owned by either `herokuishuser` or the overridden value you have set in `DOKKU_APP_USER`. You may disable this by running the following `scheduler-docker-local:set` command for your application:
```shell
dokku scheduler-docker-local:set node-js-app disable-chown true
```
Once set, you may re-enable it by setting a blank value for `disable-chown`:
```shell
dokku scheduler-docker-local:set node-js-app disable-chown
```
## Implemented Triggers
This plugin implements various functionality through `plugn` triggers to integrate with Docker for running apps on a single server. The following functionality is supported by the `scheduler-docker-local` plugin.
- `check-deploy`
- `core-post-deploy`
- `post-app-clone-setup`
- `post-app-rename-setup`
- `post-create`
- `post-delete`
- `pre-deploy`
- `pre-restore`
- `scheduler-app-status`
- `scheduler-deploy`
- `scheduler-docker-cleanup`
- `scheduler-inspect`
- `scheduler-is-deployed`
- `scheduler-logs`
- `scheduler-logs-failed`
- `scheduler-retire`
- `scheduler-run`
- `scheduler-stop`
- `scheduler-tags-create`
- `scheduler-tags-destroy`
## Supported Resource Management Properties
The `docker-local` scheduler supports a minimal list of resource _limits_ and _reservations_. The following properties are supported:
### Resource Limits
- cpu: (docker option: `--cpus`), is specified in number of CPUs a process can access.
- See the ["CPU" section](https://docs.docker.com/config/containers/resource_constraints/#cpu) of the Docker Runtime Options documentation for more information.
- memory: (docker option: `--memory`) should be specified with a suffix of `b` (bytes), `k` (kilobytes), `m` (megabytes), `g` (gigabytes).
- See the ["Memory" section](https://docs.docker.com/config/containers/resource_constraints/#memory) of the Docker Runtime Options documentation for more information.
- memory-swap: (docker option: `--memory-swap`) should be specified with a suffix of `b` (bytes), `k` (kilobytes), `m` (megabytes), `g` (gigabytes)
- See the ["Memory" section](https://docs.docker.com/config/containers/resource_constraints/#memory) of the Docker Runtime Options documentation for more information.
- nvidia-gpus: (docker option: `--gpus`), is specified in number of Nvidia GPUs a process can access.
- See the ["GPU" section](https://docs.docker.com/config/containers/resource_constraints/#gpu) of the Docker Runtime Options documentation for more information.
### Resource Reservations
- memory: (docker option: `--memory-reservation`) should be specified with a suffix of `b` (bytes), `k` (kilobytes), `m` (megabytes), `g` (gigabytes)
- See the ["Memory" section](https://docs.docker.com/config/containers/resource_constraints/#memory) of the Docker Runtime Options documentation for more information.

View File

@@ -4,10 +4,10 @@
By default, Dokku will ship a PCI Compliant nginx configuration. For developers whose users are on older browsers or mobile devices, you may need to ship a custom `nginx.conf.sigil` to enable ciphers for older browsers.
See the [nginx customization](/docs/configuration/nginx/#customizing-the-nginx-configuration) docs for more details.
See the [nginx customization](/docs/networking/proxies/nginx/#customizing-the-nginx-configuration) docs for more details.
## Nginx Error Pages
We now ship with nicer error pages by default. You are free to customize your Dokku installation via a custom `nginx.conf.sigil` to change what error pages are displayed in different circumstances.
See the [nginx customization](/docs/configuration/nginx/#customizing-the-nginx-configuration) docs for more details.
See the [nginx customization](/docs/networking/proxies/nginx/#customizing-the-nginx-configuration) docs for more details.

View File

@@ -50,7 +50,7 @@ Dokku will no longer distribute packages for Debian versions that are not `stabl
- Debian 7 (wheezy)
- Debian 8 (jessie)
### App report flags
### Removed App report flags
The `--git-sha` flag was moved from the `apps:report` command to the `git:report` command.

View File

@@ -0,0 +1,12 @@
# 0.24.0 Migration Guide
## Changes
- The commands `proxy:enable`, `proxy:disable` and `proxy:build-config` now support the `--all` flag in addition to general parallelism.
- The `builder-cnb` plugin has been renamed `builder-pack`, and all related plugin triggers have had the suffix `-cnb` changed to `-pack`.
## Deprecations
- The 1.0.0 release of Dokku will no longer select buildpack builders over dockerfile builders if both builders match. Instead, Dokku will choose the first builder that responds to the `builder-detect` trigger. Users that wish to use a specific builder may set a builder using the `builder:set` command, which will force Dokku to use the specified builder regardless of what might be auto-detected.
- The `tags` plugin is deprecated in favor of the [`git:from-image`](/docs/deployment/methods/git.md#initializing-an-app-repository-from-a-docker-image) command. It will be removed in the next minor release, and is considered unmaintained. Users are highly encouraged to switch their workflows to `git:from-image`.
- The `tar` plugin is deprecated in favor of the [`git:from-archive`](/docs/deployment/methods/git.md#initializing-an-app-repository-from-an-archive-file) command. It will be removed in the next minor release, and is considered unmaintained. Users are highly encouraged to switch their workflows to `git:from-archive`.

View File

@@ -0,0 +1,37 @@
# 0.25.0 Migration Guide
## Registry Plugin
The [dokku-registry](https://github.com/dokku/dokku-registry) plugin is now built-in. This comes with a few changes:
- Builder plugins should call `post-release-builder` at the end of the build.
- The `push` and `pull` command are not implemented. Users wishing to deploy a remote image should use `git:from-image`. Image pushing is not available at this time.
- At this time, remote docker repositories are not automatically created for AWS, and users must create those repositories for their applications as necessary. This may be implemented in the future.
- Docker images are only pushed when configured to do so. See the [registry management documentation](/docs/advanced-usage/registry-management.md) for more details.
Before upgrading, uninstall the registry plugin via `dokku plugin:uninstall registry`. Not doing so will cause issues with Dokku.
## Other
### Changes
- The network plugin can now set an `initial-network` for all containers on creation. This is a replacement for specifying the `--network` flag via the `docker-options` plugin. Please see the [network documentation](/docs/networking/network.md#attaching-an-app-to-a-network) for more information.
- The `dokku run` command now always removes the ephemeral container on exit. Users that need a persistent container should instead specify a `console` process type in their `Procfile` specifying an available shell (usually either `bash` or `sh`) and scale that container appropriately.
- The `pre-deploy` plugin trigger is now called internally by Dokku. Scheduler plugins should avoid calling this trigger, as any image changes introduced by subsequent trigger calls will be ignored.
- The default image used for Herokuish Buildpack builds is now `gliderlabs/herokuish:latest-20`, and is based on both the `heroku-20` stack as well as Ubuntu 20.04. Users that wish to stick with the old, `heroku-18`/Ubuntu 18.04 builder may specify `gliderlabs/herokuish:latest-18` 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.
- This change does not impact any users of Cloud Native Buildpacks.
- We fixed an issue that required extracting Procfiles at the beginning of a deploy. Due to this change, a `Dockerfile` app contains a `Procfile` that does not specify a `web` process will fail to start. Usage of a `Procfile` with _only_ a `release` command should be replaced with a `scripts.dokku.postdeploy` deployment task in the `app.json` file. The alternative is to define the `web` process in the `Procfile`. See the [deployment task documentation](/docs/advanced-usage/deployment-tasks.md) for more information.
### Deprecations
- In previous versions of Dokku, the only way to specify a custom `Dockerfile` was to use the `docker-options` plugin to set the `--file` flag for a docker build. As of 0.25.0, the `builder-dockerfile:set` command should be used instead, as outlined in the [docs here](/docs/deployment/builders/dockerfiles.md#changingthe-dockerfile-location). Usage of the old method should be migrated to the new method.
- The `--rm` and `--rm-container` flags may be specified but no longer have any effect on `dokku run`.
- The `--detach` flag is deprecated in favor of the `run:detached` command.
- The `DOKKU_SCALE` file is deprecated. Please see the [process management documentation](/docs/processes/process-management.md#manually-managing-process-scaling) for more information on it's replacement with the `formation` key of the `app.json` file.
- The hooks `post-release-buildpack`, `post-release-dockerfile`, and `post-release-pack` are deprecated in favor of `post-release-builder`. See the [plugin triggers documentation](https://dokku.com/docs/development/plugin-triggers/#post-release-builder) for more details.
## Removals
- As of April 2021, Ubuntu 16.04 is no longer an LTS release, and support has been removed. Packages may still install on older versions of Ubuntu, but are no longer tested, and therefore no support will be provided.
- The web installer has been removed. Users are now required to setup Dokku via cli commands. This change was made to combat potential security issues where users ignored the web installer, allowing unauthorized users to add their keys to the host.
- The `scheduler-docker-cleanup` plugin trigger has been removed from the scheduler interface, and is no longer invoked.

View File

@@ -0,0 +1,12 @@
# 0.26.0 Migration Guide
## Removals
- The `tags` plugin - deprecated in [0.24.0](/docs/appendices/0.24.0-migration-guide.md) - was removed. Users are highly encouraged to switch their workflows to `git:from-image`.
- The `tar` plugin - deprecated in [0.24.0](/docs/appendices/0.24.0-migration-guide.md) - was removed. Users are highly encouraged to switch their workflows to `git:from-archive`.
## Changes
- The `scheduler` plugin now controls the scheduler in use for deploys. Apps will have their `DOKKU_SCHEDULER` environment variables migrated to the scheduler plugin, after which that value will be removed from said app. Please see the [scheduler documentation](/docs/deployment/schedulers/scheduler-management.md) for more information.
- The `deploy-source` metadata from `apps:report` is now no longer computed on the fly, but hydrated at deploy time via the `deploy-source-set` trigger. This value may be empty until your next deploy.
- Additionally, the `deploy-source` trigger has now been removed.

View File

@@ -0,0 +1,13 @@
# 0.27.0 Migration Guide
## Changes
- Renaming an application will now only rename domains that are associated with global domains. As an example:
```shell
dokku domains:set-global dokku.me
dokku apps:create node-js-app
dokku domains:set node-js-app node-js-app.dokku.me node-js-app.dokku.com
dokku apps:rename node-js-app other-name
dokku domains:report node-js-app --domains-app-vhosts
# output: other-name.dokku.me node-js-app.dokku.com
```

View File

@@ -0,0 +1,25 @@
# 0.28.0 Migration Guide
## Removals
Support for the following operating systems has been removed:
- CentOS 7
- Debian 9 (Stretch)
- Fedora
- OpenSuse
Dokku will no longer provide packages for RPM based systems. Debian 9 users _may_ use new Debian packages, though support is not guaranteed.
All users are encouraged to install Dokku via the [Docker-based installation method](/docs/getting-started/install/docker.md), or switch to a supported operating system.
## Deprecations
Ubuntu 18.04 is now a deprecated installation target. The operating system will be considered EOL by Canonical in April 2023. Users are encouraged to upgrade to Ubuntu 22.04 or consider switching their instllation method to the [Docker-based installation method](/docs/getting-started/install/docker.md) to avoid any disruption in usage.
## Additions
New in 0.28.0 are the Caddy and Traefik plugins. As community plugins wrapping these proxies exist, users should:
- Recommended: Uninstall the community plugin in question and switch all config to the new plugins.
- Upgrade the community plugin to a version that does not use the `proxy:set` value of `caddy` or `traefik`.

View File

@@ -5,11 +5,11 @@
- The nginx-vhosts template language is now [sigil](https://github.com/gliderlabs/sigil)
- No need to escape literal `$` characters (or other "bash-isms")
- Template variables are represented as {{ .VARIABLE_NAME }}
- A detailed list of template variables can be found [here](/docs/configuration/nginx.md#available-template-variables)
- A detailed list of template variables can be found [here](/docs/networking/proxies/nginx.md#available-template-variables)
- A custom nginx-vhosts template must be named `nginx.conf.sigil`
- The default path for this custom template is the root of your repo (i.e. `/app` in the container or `WORKDIR` if defined in a dockerfile app)
- Dokku no longer looks for this file in `/home/dokku/node-js-app` on the Dokku server
- Check out an example template [here](/docs/configuration/nginx.md)
- Check out an example template [here](/docs/networking/proxies/nginx.md)
- Support for server-wide SSL certs have been dropped in favor of using the `certs` plugin
- `dokku certs:add node-js-app < certs.tar`
- All domains for an SSL-enabled app will be redirected to https by default
@@ -20,6 +20,6 @@
## Dockerfile apps with exposed ports
- Dockerfiles with `EXPOSE` clauses will get [all **tcp** ports proxied by default](/docs/deployment/methods/dockerfiles.md#exposed-ports)
- Dockerfiles with `EXPOSE` clauses will get [all **tcp** ports proxied by default](/docs/deployment/builders/dockerfiles.md#exposed-ports)
- Note that nginx will proxy the same port numbers to listen publicly
- UDP ports can be exposed by disabling the [nginx proxy](/docs/advanced-usage/proxy-management.md) with `dokku proxy:disable node-js-app`
- UDP ports can be exposed by disabling the [nginx proxy](/docs/networking/proxy-management.md) with `dokku proxy:disable node-js-app`

View File

@@ -12,21 +12,21 @@
## Proxy port mapping
- You can now configure host -> container proxy port mappings
- The UI is handled by the [proxy](/docs/advanced-usage/proxy-management.md) interface plugin by setting the `DOKKU_PROXY_PORT_MAP` config variable in the format of `scheme:host-port:container-port`. The default `nginx-vhosts` proxy plugin supports both the `http` and `https` schemes.
- The UI is handled by the [proxy](/docs/networking/proxy-management.md) interface plugin by setting the `DOKKU_PROXY_PORT_MAP` config variable in the format of `scheme:host-port:container-port`. The default `nginx-vhosts` proxy plugin supports both the `http` and `https` schemes.
- Default port mappings
- buildpack apps will be set to `http:80:5000` and will also include `https:443:5000` if SSL is enabled.
- dockerfile apps with explicitly exposed ports (i.e. using the `EXPOSE` directive) will be configured with a listener on each exposed port that proxies to the same port of the deployed application container.
- You may override this behavior with the [`proxy:ports-*` commands](/docs/advanced-usage/proxy-management.md) or by directly setting `DOKKU_PROXY_PORT_MAP` with the `config:set` command
- You may override this behavior with the [`proxy:ports-*` commands](/docs/networking/proxy-management.md) or by directly setting `DOKKU_PROXY_PORT_MAP` with the `config:set` command
- dockerfile apps without explicitly exposed ports will behave the same as a buildpack app
- NOTE: These defaults **are not** automatically changed on subsequent pushes and must be manipulated with the aforementioned commands
## Calling the `dokku` binary
- Plugins should *not* call the `dokku` binary directly. Clients using the `--app` argument are potentially broken, amongst others, when doing so. Instead, please source the `functions` file for a given plugin when attempting to call Dokku internal functions. As a result, the following Dokku commands are no longer publicly exposed:
- `dokku build`
- `dokku receive`
- `dokku release`
- `dokku tar:build`
- `dokku tar:build-locked`
- `dokku git:build`
- `dokku git:build-locked`
- `dokku build`
- `dokku receive`
- `dokku release`
- `dokku tar:build`
- `dokku tar:build-locked`
- `dokku git:build`
- `dokku git:build-locked`

View File

@@ -6,7 +6,7 @@ We should now properly handle file ownership for mounted directories. This was e
## Restart Policies
If you previously managed container restart policies via docker-options, these can now be managed natively via the built-in `ps` plugin. There is no migration necessary. See the [restart policy documentation](/docs/deployment/process-management.md#restart-policies) for more details.
If you previously managed container restart policies via docker-options, these can now be managed natively via the built-in `ps` plugin. There is no migration necessary. See the [restart policy documentation](/docs/processes/process-management.md#restart-policies) for more details.
## SSH Keys

View File

@@ -0,0 +1,31 @@
<svg width="89" height="62" viewBox="0 0 89 62" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M78.4046 17.1912C84.738 21.1608 86.2188 20.7419 87.6794 19.9955C88.5202 19.5664 88.8496 18.5392 88.4243 17.6985C86.4622 13.818 78.212 0.118992 59.5364 0.118992C43.8588 0.118992 34.4377 13.3435 31.5684 18.0766C31.0067 19.0027 31.4447 20.2158 32.4755 20.5543C34.1357 21.0995 35.9508 21.216 39.8333 18.8625C52.5306 11.8038 78.4046 17.1912 78.4046 17.1912Z" fill="#F15B55"/>
<mask id="mask0_55_415" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="31" y="0" width="58" height="21">
<path d="M78.4212 17.0723C84.7546 21.0418 86.2354 20.6229 87.696 19.8766C88.5368 19.4474 88.8662 18.4202 88.4409 17.5795C86.4788 13.699 78.2286 3.8147e-06 59.553 3.8147e-06C43.8754 3.8147e-06 34.4543 13.2245 31.585 17.9576C31.0233 18.8837 31.4613 20.0969 32.4921 20.4353C34.1523 20.9805 35.9674 21.097 39.8499 18.7436C52.5472 11.6848 78.4212 17.0723 78.4212 17.0723Z" fill="#F15B55"/>
</mask>
<g mask="url(#mask0_55_415)">
<path d="M43.7907 2.62413C49.4945 9.99967 33.5952 13.8544 45.8049 22.3539" stroke="#FF9580" stroke-width="1.5" stroke-miterlimit="10"/>
<path d="M56.7977 -1.62458C62.8837 6.0383 46.832 8.92189 53.8305 19.6981" stroke="#FF9580" stroke-width="1.5" stroke-miterlimit="10"/>
<path d="M72.3168 -0.867853C76.7291 7.02473 58.5477 8.73199 64.5571 18.3322" stroke="#FF9580" stroke-width="1.5" stroke-miterlimit="10"/>
<path d="M84.2603 7.02465C84.2603 15.1449 71.708 10.5128 72.3169 19.6982" stroke="#FF9580" stroke-width="1.5" stroke-miterlimit="10"/>
</g>
<g opacity="0.399994">
<g opacity="0.399994">
<path opacity="0.399994" d="M31.3365 18.747C31.2415 19.5146 31.6815 20.2937 32.4751 20.5544C34.1353 21.0993 35.9508 21.2158 39.8333 18.8623C52.5302 11.8039 78.4042 17.1914 78.4042 17.1914C84.7377 21.1606 86.2184 20.7416 87.6795 19.9957C88.3903 19.6328 88.7337 18.8419 88.5657 18.0976C78.1555 10.8635 54.5866 3.8145 31.3365 18.747Z" fill="black"/>
</g>
</g>
<path d="M67.274 14.8087H56.4204C44.6233 14.8087 38.4193 18.2775 33.8378 24.2005L29.4542 29.8671L27.7038 32.1805C26.3653 33.9491 24.2728 34.9885 22.0517 34.9885C18.6867 34.9885 15.8194 32.6685 15.0623 29.48C15.0512 29.433 15.0385 29.359 15.025 29.2679C14.9103 28.4884 15.5203 27.7899 16.3099 27.7899H18.4798C22.2049 27.7899 25.2246 24.7776 25.2246 21.0614V20.5325C25.2246 19.8467 24.667 19.2904 23.979 19.2904H17.6005C15.0492 19.2904 13.2669 20.6106 12.6674 22.0612C12.0676 20.6106 10.2853 19.2904 7.73397 19.2904H1.35542C0.667492 19.2904 0.109863 19.8467 0.109863 20.5325V21.0614C0.109863 24.7776 3.12951 27.7899 6.85471 27.7899H9.05492C9.75186 27.7899 10.3443 28.2988 10.4476 28.9867L10.6905 30.604C13.3361 48.2223 28.5057 61.2576 46.3638 61.2576H47.2697H59.4081C71.7445 61.2576 82.2727 52.3616 84.302 40.2227L85.8397 31.0254C87.259 22.5369 81.2902 14.8087 67.274 14.8087Z" fill="#07CBCF"/>
<path d="M81.4705 48.3116C79.3404 48.386 77.5986 49.0698 75.2239 51.4388C72.2001 54.4552 67.1794 57.8702 59.4197 57.8702H45.0417C39.2224 57.8702 35.1162 53.5434 35.1162 53.5434C35.1162 53.5434 31.7479 53.7154 24.4261 49.5603C12.4254 41.9906 11.9501 29.2979 11.7788 27.7043C11.6076 26.1106 10.7517 25.2568 9.04025 25.2568H6.70074C2.34293 25.2568 1.16088 23.1183 0.893741 19.3792C0.434853 19.5628 0.110352 20.0095 0.110352 20.5327V21.0612C0.110352 24.7773 3.13 27.7897 6.85479 27.7897H9.055C9.75235 27.7897 10.3448 28.2986 10.4481 28.9864L10.6906 30.6038C13.3362 48.2221 28.5062 61.2573 46.3643 61.2573H47.2698H59.4086C68.7888 61.2573 77.1226 56.113 81.4705 48.3116Z" fill="#05B7BF"/>
<path d="M15.0249 29.2677C14.9102 28.4883 15.5203 27.7898 16.3098 27.7898H18.4797C22.2049 27.7898 25.2246 24.7774 25.2246 21.0617V20.5328C25.2246 20.0092 24.8997 19.5624 24.4404 19.3793V19.3797C24.1728 23.1184 22.9908 25.2569 18.633 25.2569H16.8376C14.4411 25.2569 14.7549 27.9512 15.0249 29.2677Z" fill="#05B7BF"/>
<path d="M24.4257 49.5606C27.1262 52.1789 25.7188 53.2412 21.2307 53.2412H14.3327C13.2428 53.2412 12.697 54.5557 13.4677 55.3245L14.322 56.1767C16.9737 58.8224 20.5707 60.3085 24.3213 60.3085H24.9584C32.4133 60.3085 37.929 52.8239 37.929 52.8239L24.4257 49.5606Z" fill="#07CBCF"/>
<path d="M35.1162 53.544C32.9984 55.5574 29.4485 58.1536 25.2235 58.1536H24.6339C21.1631 58.1536 17.8345 56.7783 15.3807 54.33L14.59 53.5415C14.497 53.4488 14.4257 53.3474 14.3728 53.2411H14.3327C13.2428 53.2411 12.697 54.5556 13.4677 55.3244L14.322 56.1766C16.9741 58.8223 20.5711 60.3085 24.3213 60.3085H24.9584C29.8025 60.3085 33.8281 57.1482 36.0533 54.9349L36.3528 54.6312L35.1162 53.544Z" fill="#05B7BF"/>
<mask id="mask1_55_415" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="15" width="86" height="47">
<path d="M67.1641 15.1884H56.3106C44.5134 15.1884 38.3094 18.6572 33.7279 24.5802L29.3443 30.2468L27.594 32.5602C26.2554 34.3288 24.163 35.3682 21.9419 35.3682C18.5768 35.3682 15.7096 33.0482 14.9524 29.8597C14.9413 29.8127 14.9286 29.7387 14.9151 29.6476C14.8004 28.8681 15.4105 28.1696 16.2 28.1696H18.3699C22.0951 28.1696 25.1147 25.1573 25.1147 21.4411V20.9122C25.1147 20.2264 24.5571 19.6701 23.8692 19.6701H17.4906C14.9393 19.6701 13.157 20.9903 12.5576 22.4409C11.9577 20.9903 10.1755 19.6701 7.62411 19.6701H1.24555C0.557629 19.6701 0 20.2264 0 20.9122V21.4411C0 25.1573 3.01965 28.1696 6.74484 28.1696H8.94506C9.64199 28.1696 10.2344 28.6785 10.3377 29.3664L10.5807 30.9837C13.2262 48.602 28.3958 61.6373 46.2539 61.6373H47.1598H59.2983C71.6346 61.6373 82.1628 52.7413 84.1922 40.6024L85.7299 31.4051C87.1491 22.9166 81.1803 15.1884 67.1641 15.1884Z" fill="#07CBCF"/>
</mask>
<g mask="url(#mask1_55_415)">
<path d="M48.2573 43.0378C50.1929 48.5818 55.4426 52.9185 61.7015 52.9185C72.2568 52.9185 71.2993 45.7048 82.7326 45.7048H84.3526" stroke="#00576C" stroke-width="1.46" stroke-miterlimit="10" stroke-linecap="round"/>
<path d="M50.1195 43.0151H46.9814" stroke="#00576C" stroke-width="1.46" stroke-miterlimit="10" stroke-linecap="round"/>
<path d="M65.353 42.7305C65.353 41.096 64.0247 39.7709 62.3862 39.7709C60.7478 39.7709 59.4194 41.096 59.4194 42.7305" stroke="#00576C" stroke-width="1.46" stroke-miterlimit="10" stroke-linecap="round"/>
</g>
<path d="M77.4491 19.774C80.7847 21.9824 82.0434 23.4419 85.095 23.7701C82.9402 18.5919 77.0788 14.8087 67.2741 14.8087H56.4206C45.0819 14.8087 38.9111 18.0148 34.3804 23.5229C37.2443 23.5229 40.3812 21.1661 43.0628 19.698C46.182 17.9907 50.3669 16.3586 59.4197 16.3586C68.4725 16.3586 73.2651 17.004 77.4491 19.774Z" fill="#05B7BF"/>
</svg>

After

Width:  |  Height:  |  Size: 6.3 KiB

5
docs/assets/extra.css Normal file
View File

@@ -0,0 +1,5 @@
:root > * {
--md-primary-fg-color: #2A8FBD;
--md-primary-fg-color--light: #ECB7B7;
--md-primary-fg-color--dark: #90030C;
}

View File

@@ -2,10 +2,10 @@
<browserconfig>
<msapplication>
<tile>
<square70x70logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.23.3/docs/assets/favicons/mstile-70x70.png"/>
<square150x150logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.23.3/docs/assets/favicons/mstile-150x150.png"/>
<square310x310logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.23.3/docs/assets/favicons/mstile-310x310.png"/>
<wide310x150logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.23.3/docs/assets/favicons/mstile-310x150.png"/>
<square70x70logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.28.2/docs/assets/favicons/mstile-70x70.png"/>
<square150x150logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.28.2/docs/assets/favicons/mstile-150x150.png"/>
<square310x310logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.28.2/docs/assets/favicons/mstile-310x310.png"/>
<wide310x150logo src="https://cdn.jsdelivr.net/gh/dokku/dokku@v0.28.2/docs/assets/favicons/mstile-310x150.png"/>
<TileColor>#da532c</TileColor>
</tile>
</msapplication>

View File

@@ -2,37 +2,37 @@
"name": "Dokku",
"icons": [
{
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.23.3\/docs\/assets\/favicons\/android-chrome-36x36.png",
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.28.2\/docs\/assets\/favicons\/android-chrome-36x36.png",
"sizes": "36x36",
"type": "image\/png",
"density": "0.75"
},
{
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.23.3\/docs\/assets\/favicons\/android-chrome-48x48.png",
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.28.2\/docs\/assets\/favicons\/android-chrome-48x48.png",
"sizes": "48x48",
"type": "image\/png",
"density": "1.0"
},
{
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.23.3\/docs\/assets\/favicons\/android-chrome-72x72.png",
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.28.2\/docs\/assets\/favicons\/android-chrome-72x72.png",
"sizes": "72x72",
"type": "image\/png",
"density": "1.5"
},
{
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.23.3\/docs\/assets\/favicons\/android-chrome-96x96.png",
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.28.2\/docs\/assets\/favicons\/android-chrome-96x96.png",
"sizes": "96x96",
"type": "image\/png",
"density": "2.0"
},
{
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.23.3\/docs\/assets\/favicons\/android-chrome-144x144.png",
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.28.2\/docs\/assets\/favicons\/android-chrome-144x144.png",
"sizes": "144x144",
"type": "image\/png",
"density": "3.0"
},
{
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.23.3\/docs\/assets\/favicons\/android-chrome-192x192.png",
"src": "https:\/\/cdn.jsdelivr.net\/dokku\/dokku@v0.28.2\/docs\/assets\/favicons\/android-chrome-192x192.png",
"sizes": "192x192",
"type": "image\/png",
"density": "4.0"

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 825 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 469 B

BIN
docs/assets/social/irc.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 686 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 816 B

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 91 KiB

View File

@@ -20,6 +20,11 @@
"0.20.4",
"0.21.4",
"0.22.9",
"0.23.3"
"0.23.9",
"0.24.10",
"0.25.7",
"0.26.8",
"0.27.10",
"0.28.2"
]
}

View File

@@ -18,16 +18,6 @@ npm install -g dokku-toolbelt
See [documentation here](https://www.npmjs.com/package/dokku-toolbelt) for more information.
## (python) dokku-client
dokku-client is an extensible python-based cli wrapper for remote Dokku hosts. You can install it via the following shell command (assuming you have python and pip installed):
```shell
pip install dokku-client
```
See [documentation here](https://github.com/adamcharnock/dokku-client) for more information.
## (ruby) Dokku CLI
Dokku CLI is a rubygem that acts as a client for your Dokku installation. You can install it via the following shell command (assuming you have ruby and rubygems installed):

View File

@@ -47,112 +47,26 @@ The following plugins are available and provided by Dokku maintainers. Please f
> Warning: The following plugins have been supplied by our community and may not have been tested by Dokku maintainers.
[256dpi]: https://github.com/256dpi
[abossard]: https://github.com/dudagroup
[ademuk]: https://github.com/ademuk
[agco-adm]: https://github.com/agco-adm
[alessio]: https://github.com/alessio
[alex-sherwin]: https://github.com/alex-sherwin
[alexanderbeletsky]: https://github.com/alexanderbeletsky
[alexkruegger]: https://github.com/alexkruegger
[Aluxian]: https://github.com/Aluxian
[Aomitayo]: https://github.com/Aomitayo
[apmorton]: https://github.com/apmorton
[artofrawr]: https://github.com/artofrawr
[badsyntax]: https://github.com/badsyntax
[basgys]: https://github.com/basgys
[Benjamin-Dobell]: https://github.com/Benjamin-Dobell
[blag]: https://github.com/blag
[cameron-martin]: https://github.com/cameron-martin
[candlewaster]: https://notabug.org/candlewaster
[cedricziel]: https://github.com/cedricziel
[cef]: https://github.com/cef
[cjblomqvist]: https://github.com/cjblomqvist
[crisward]: https://github.com/crisward
[cu12]: https://github.com/cu12
[darkpixel]: https://github.com/darkpixel
[dokku]: https://github.com/dokku
[dokku-community]: https://github.com/dokku-community
[dyson]: https://github.com/dyson
[fermuch]: https://github.com/fermuch
[fgrehm]: https://github.com/fgrehm
[Flink]: https://github.com/Flink
[fomojola]: https://github.com/fomojola
[gdi2290]: https://github.com/gdi2290
[hughfletcher]: https://github.com/hughfletcher
[iamale]: https://github.com/iamale
[ignlg]: https://github.com/ignlg
[iloveitaly]: https://github.com/iloveitaly
[investtools]: https://github.com/investtools
[iskandar]: https://github.com/iskandar
[jagandecapri]: https://github.com/jagandecapri
[jeffutter]: https://github.com/jeffutter
[jlachowski]: https://github.com/jlachowski
[josegonzalez]: https://github.com/josegonzalez
[Kloadut]: https://github.com/Kloadut
[krisrang]: https://github.com/krisrang
[luxifer]: https://github.com/luxifer
[m0rth1um]: https://github.com/m0rth1um
[Maciej Łebkowski]: https://github.com/mlebkowski
[matto1990]: https://github.com/matto1990
[mbreit]: https://github.com/mbreit
[mbriskar]: https://github.com/mbriskar
[michaelshobbs]: https://github.com/michaelshobbs
[mikecsh]: https://github.com/mikecsh
[mikexstudios]: https://github.com/mikexstudios
[mimischi]: https://github.com/mimischi
[mixxorz]: https://github.com/mixxorz
[mlebkowski]: https://github.com/mlebkowski
[motin]: https://github.com/motin
[mrname]: https://github.com/mrname
[musicglue]: https://github.com/musicglue
[neam]: https://github.com/neam
[nickcharlton]: https://github.com/nickcharlton
[nickstenning]: https://github.com/nickstenning
[nornagon]: https://github.com/nornagon
[ohardy]: https://github.com/ohardy
[pauldub]: https://github.com/pauldub
[pnegahdar]: https://github.com/pnegahdar
[RaceHub]: https://github.com/racehub
[ribot]: https://github.com/ribot
[rlaneve]: https://github.com/rlaneve
[robv]: https://github.com/robv
[scottatron]: https://github.com/scottatron
[sehrope]: https://github.com/sehrope
[sekjun9878]: https://github.com/sekjun9878
[sgulseth]: https://github.com/sgulseth
[sseemayer]: https://github.com/sseemayer
[statianzo]: https://github.com/statianzo
[stuartpb]: https://github.com/stuartpb
[thrashr888]: https://github.com/thrashr888
[wmluke]: https://github.com/wmluke
[Zenedith]: https://github.com/Zenedith
[fteychene]: https://github.com/fteychene
[sarendsen]: https://github.com/sarendsen
[baikunz]: https://github.com/baikunz
[lazyatom]: https://github.com/lazyatom
[ollej]: https://github.com/ollej
### Datastores
#### Relational
| Plugin | Author | Compatibility |
| ------------------------------------------------------------------------------------------------- | --------------------- | --------------------- |
| [MariaDB](https://github.com/Kloadut/dokku-md-plugin) | [Kloadut][] | 0.3.x |
| [MariaDB](https://github.com/Kloadut/dokku-md-plugin) | [kloadut][] | 0.3.x |
| [MariaDB (single container)](https://github.com/ohardy/dokku-mariadb) | [ohardy][] | 0.3.x |
| [MariaDB (single container)](https://github.com/krisrang/dokku-mariadb) | [krisrang][] | 0.3.26+ |
| [PostgreSQL](https://github.com/jlachowski/dokku-pg-plugin) | [jlachowski][] | 0.3.x |
| [PostgreSQL (single container)](https://github.com/ohardy/dokku-psql) | [ohardy][] | 0.3.x |
| [PostgreSQL (single container)](https://github.com/Flink/dokku-psql-single-container) | [Flink][] | 0.3.26+ |
| [PostgreSQL (single container)](https://github.com/Flink/dokku-psql-single-container) | [flink][] | 0.3.26+ |
#### Caching
| Plugin | Author | Compatibility |
| ------------------------------------------------------------------------------------------------- | --------------------- | --------------------- |
| [Nginx Cache](https://github.com/Aluxian/dokku-nginx-cache) | [Aluxian][] | 0.5.0+ |
| [Nginx Cache](https://github.com/Aluxian/dokku-nginx-cache) | [aluxian][] | 0.5.0+ |
| [Redis (single container)](https://github.com/ohardy/dokku-redis) | [ohardy][] | 0.3.x |
| [Varnish](https://github.com/Zenedith/dokku-varnish-plugin) | [Zenedith][] | Varnish cache between nginx and application with base configuration|
| [Varnish](https://github.com/Zenedith/dokku-varnish-plugin) | [zenedith][] | Varnish cache between nginx and application with base configuration|
#### Queuing
@@ -173,10 +87,6 @@ The following plugins are available and provided by Dokku maintainers. Please f
| [RethinkDB](https://github.com/stuartpb/dokku-rethinkdb-plugin) | [stuartpb][] | 0.3.x |
| [Headless Chrome](https://github.com/lazyatom/dokku-chrome) | [lazyatom][] | 0.8.1+ |
[dccee02]: https://github.com/jeffutter/dokku-riakcs-plugin/commit/dccee02702e7001851917b7814e78a99148fb709
[c77cbf1]: https://github.com/dokku/dokku/commit/c77cbf1d3ae07f0eafb85082ed7edcae9e836147
[28de3ec]: https://github.com/dokku/dokku/commit/28de3ecaa3231a223f83fd8d03f373308673bc40
### Plugins Implementing New Dokku Functionality
| Plugin | Author | Compatibility |
@@ -185,13 +95,14 @@ The following plugins are available and provided by Dokku maintainers. Please f
| [Docker Direct](https://github.com/josegonzalez/dokku-docker-direct) | [josegonzalez][] | 0.4.0+ |
| [Dokku Clone](https://github.com/crisward/dokku-clone) | [crisward][] | 0.4.0+ |
| [Dokku Copy App Config Files](https://github.com/josegonzalez/dokku-supply-config) | [josegonzalez][] | 0.4.0+ |
| [Dockerfile custom path](https://github.com/mimischi/dokku-dockerfile) | [mimischi][] | 0.8.0+ |
| [Dockerfile custom path](https://github.com/mimischi/dokku-dockerfile) | [mimischi][] | 0.8.0+ |
| [Dokku Require](https://github.com/crisward/dokku-require)<sup>1</sup> | [crisward][] | 0.4.0+ |
| [Global Certificates](https://github.com/josegonzalez/dokku-global-cert) | [josegonzalez][] | 0.5.0+ |
| [Graduate (Environment Management)](https://github.com/glassechidna/dokku-graduate) | [Benjamin-Dobell][] | 0.4.0+ |
| [Graduate (Environment Management)](https://github.com/glassechidna/dokku-graduate) | [benjamin-dobell][] | 0.4.0+ |
| [Haproxy tcp load balancer](https://github.com/256dpi/dokku-haproxy) | [256dpi][] | 0.4.0+ |
| [Hostname](https://github.com/michaelshobbs/dokku-hostname) | [michaelshobbs][] | 0.4.0+ |
| [HTTP Auth Secure Apps](https://github.com/matto1990/dokku-secure-apps) | [matto1990][] | 0.4.0+ |
| [Litestream](https://github.com/AxelTheGerman/dokku-litestream)<sup>2</sup> | [AxelTheGerman][] | 0.27.0+ |
| [Monit (Health Checks)](https://github.com/mbreit/dokku-monit) | [mbreit][] | 0.8.0+ |
| [Nuke Containers](https://github.com/josegonzalez/dokku-nuke) | [josegonzalez][] | 0.4.0+ |
| [Open App Ports](https://github.com/josegonzalez/dokku-ports) | [josegonzalez][] | 0.3.x |
@@ -199,28 +110,28 @@ The following plugins are available and provided by Dokku maintainers. Please f
| [robots.txt](https://notabug.org/candlewaster/dokku-robots.txt) | [candlewaster][] | 0.4.x |
| [SSH Deployment Keys](https://github.com/cedricziel/dokku-deployment-keys)<sup>2</sup> | [cedricziel][] | 0.4.0+ |
| [SSH Hostkeys](https://github.com/cedricziel/dokku-hostkeys-plugin)<sup>3</sup> | [cedricziel][] | 0.3.x |
| [Application build hook](https://github.com/fteychene/dokku-build-hook) | [fteychene][] | 0.4.0+ |
| [Post Deploy Script](https://github.com/baikunz/dokku-post-deploy-script) | [baikunz][] | 0.4.0+ |
| [Application build hook](https://github.com/fteychene/dokku-build-hook) | [fteychene][] | 0.4.0+ |
| [Post Deploy Script](https://github.com/baikunz/dokku-post-deploy-script) | [baikunz][] | 0.4.0+ |
| [Auto Sync](https://github.com/IdeaSynthesis/dokku-autosync)<sup>4</sup> | [fomojola][] | 0.8.1+ |
| [Deploy Webhook](https://github.com/IdeaSynthesis/dokku-deploy-webhook)<sup>5</sup> | [fomojola][] | 0.8.1+ |
[217d00a]: https://github.com/dokku/dokku/commit/217d00a1bc47a7e24d8847617bb08a1633025fc7
<sup>1</sup> Extends app.json support to include creating volumes and creating / linking databases on push
<sup>2</sup> Adds the possibility to add SSH deployment keys to receive private hosted packages
<sup>2</sup> Adds SQLite replication to external object storage via [Litestream](https://litestream.io)
<sup>3</sup> Adds the ability to add custom hosts to the containers known_hosts file to be able to ssh them easily (useful with deployment keys)
<sup>3</sup> Adds the possibility to add SSH deployment keys to receive private hosted packages
<sup>4</sup> Adds the ability to sync an application repo with a remote Github repo (useful for automated rebuilds without needing a git push from an external system
<sup>4</sup> Adds the ability to add custom hosts to the containers known_hosts file to be able to ssh them easily (useful with deployment keys)
<sup>5</sup> Adds the ability to invoke a post-deploy webhook with the IP, port and app name, all with a single config:set).
<sup>5</sup> Adds the ability to sync an application repo with a remote GitHub repo (useful for automated rebuilds without needing a git push from an external system
<sup>6</sup> Adds the ability to invoke a post-deploy webhook with the IP, port and app name, all with a single config:set).
### Other Plugins
| Plugin | Author | Compatibility |
| ------------------------------------------------------------------------------------------------- | --------------------- | --------------------- |
| [Airbrake deploy](https://github.com/Flink/dokku-airbrake-deploy) | [Flink][] | 0.4.0+ |
| [Airbrake deploy](https://github.com/Flink/dokku-airbrake-deploy) | [flink][] | 0.4.0+ |
| [APT](https://github.com/dokku-community/dokku-apt) | [dokku-community][] | 0.18.x+ |
| [Bower install](https://github.com/alexanderbeletsky/dokku-bower-install) | [alexanderbeletsky][] | 0.3.x |
| [Bower/Grunt](https://github.com/thrashr888/dokku-bower-grunt-build-plugin) | [thrashr888][] | 0.3.x |
@@ -228,7 +139,7 @@ The following plugins are available and provided by Dokku maintainers. Please f
| [Bower/Gulp](https://github.com/jagandecapri/dokku-bower-gulp-build-plugin) | [jagandecapri][] | 0.3.x |
| [Builders: bower, compass, gulp, grunt](https://github.com/ignlg/dokku-builders-plugin) | [ignlg][] | 0.4.0+ |
| [Chef cookbook](https://github.com/nickcharlton/dokku-cookbook) | [nickcharlton][] | |
| [Docker auto persist volumes](https://github.com/Flink/dokku-docker-auto-volumes) | [Flink][] | 0.4.0+ |
| [Docker auto persist volumes](https://github.com/Flink/dokku-docker-auto-volumes) | [flink][] | 0.4.0+ |
| [Hostname](https://github.com/michaelshobbs/dokku-hostname) | [michaelshobbs][] | 0.4.0+ |
| [Limit (Resource management)](https://github.com/sarendsen/dokku-limit) | [sarendsen][] | 0.9.0+ |
| [Logspout](https://github.com/michaelshobbs/dokku-logspout) | [michaelshobbs][] | 0.4.0+ |
@@ -243,16 +154,15 @@ The following plugins are available and provided by Dokku maintainers. Please f
| [Slack Notifications](https://github.com/ribot/dokku-slack) | [ribot][] | 0.4.0+ |
| [Telegram Notifications](https://github.com/m0rth1um/dokku-telegram) | [m0rth1um][] | 0.4.0+ |
| [Tor](https://github.com/michaelshobbs/dokku-tor) | [michaelshobbs][] | 0.4.0+ |
| [User ACL](https://github.com/dokku-community/dokku-acl) | [Maciej Łebkowski][] | 0.4.0+ |
| [User ACL](https://github.com/dokku-community/dokku-acl) | [maciej łebkowski][] | 0.4.0+ |
| [Webhooks](https://github.com/nickstenning/dokku-webhooks) | [nickstenning][] | 0.3.x |
| [Wkhtmltopdf](https://github.com/mbriskar/dokku-wkhtmltopdf) | [mbriskar][] | 0.4.0+ |
| [Dokku Wordpress](https://github.com/dokku-community/dokku-wordpress) | [dokku-community][] | 0.4.0+ |
| [Access](https://github.com/mainto/dokku-access) | [mainto](https://github.com/mainto) | 0.4.0+ |
| [Dokku Nginx Trust Proxy](https://github.com/kingsquare/dokku-nginx-vhost-trustproxy) | [kingsquare](https://github.com/kingsquare) | 0.4.0+ |
| [Fonts](https://github.com/ollej/dokku-fonts) | [ollej] | 0.19.11+ |
| [Dokku Wordpress](https://github.com/dokku-community/dokku-wordpress) | [dokku-community][] | 0.4.0+ |
| [Access](https://github.com/mainto/dokku-access) | [mainto][] | 0.4.0+ |
| [Dokku Nginx Trust Proxy](https://github.com/kingsquare/dokku-nginx-vhost-trustproxy) | [kingsquare][] | 0.4.0+ |
| [Fonts](https://github.com/ollej/dokku-fonts) | [ollej][] | 0.19.11+ |
| [Discourse](https://github.com/badsyntax/dokku-discourse) | [badsyntax][] | 0.21.4+ |
### Deprecated Plugins
The following plugins have been removed as their functionality is now in Dokku Core.
@@ -260,7 +170,7 @@ The following plugins have been removed as their functionality is now in Dokku C
| Plugin | Author | In Dokku Since |
| ------------------------------------------------------------------------------------------------- | --------------------- | ----------------------------------------- |
| [App User](https://github.com/michaelshobbs/dokku-app-user) | [michaelshobbs][] | v0.7.1 (herokuish 0.3.18) |
| [Custom Domains](https://github.com/neam/dokku-custom-domains) | [motin][] | v0.3.10 (domains plugin) |
| [Custom Domains](https://github.com/neam/dokku-custom-domains) | [neam][] | v0.3.10 (domains plugin) |
| [Debug](https://github.com/josegonzalez/dokku-debug) | [josegonzalez][] | v0.3.9 (trace command) |
| [Docker Options](https://github.com/dyson/dokku-docker-options) | [dyson][] | v0.3.17 (docker-options plugin) |
| [Dokku Name](https://github.com/alex-sherwin/dokku-name) | [alex-sherwin][] | v0.4.2 (named containers plugin) |
@@ -271,31 +181,27 @@ The following plugins have been removed as their functionality is now in Dokku C
| [List Containers](https://github.com/josegonzalez/dokku-list) | [josegonzalez][] | v0.3.14 (ps plugin) |
| [Multi-Buildpack](https://github.com/pauldub/dokku-multi-buildpack) | [pauldub][] | v0.4.0 (herokuish) |
| [Multiple Domains](https://github.com/wmluke/dokku-domains-plugin)<sup>1</sup> | [wmluke][] | v0.3.10 (domains plugin) |
| [Named-containers](https://github.com/Flink/dokku-named-containers) | [Flink][] | v0.4.2 (named-containers plugin) |
| [Named-containers](https://github.com/Flink/dokku-named-containers) | [flink][] | v0.4.2 (named-containers plugin) |
| [Nginx-Alt](https://github.com/mikexstudios/dokku-nginx-alt) | [mikexstudios][] | v0.3.10 (domains plugin) |
| [Persistent Storage](https://github.com/dyson/dokku-persistent-storage) | [dyson][] | v0.3.17 (docker-options plugin) |
| [Pre-Deploy Tasks](https://github.com/michaelshobbs/dokku-app-predeploy-tasks) | [michaelshobbs][] | v0.5.0 (deployment tasks) |
| [PrimeCache](https://github.com/darkpixel/dokku-prime-cache) | [darkpixel][] | v0.3.0 (zero downtime deploys) |
| [Process Manager: Circus](https://github.com/apmorton/dokku-circus) | [apmorton][] | v0.3.14/0.7.0 (ps/restart policy plugin) |
| [Process Manager: Forego](https://github.com/Flink/dokku-forego) | [Flink][] | v0.3.14/0.7.0 (ps plugin) |
| [Process Manager: Forego](https://github.com/Flink/dokku-forego) | [flink][] | v0.3.14/0.7.0 (ps plugin) |
| [Process Manager: Forego](https://github.com/iskandar/dokku-forego) | [iskandar][] | v0.3.14/0.7.0 (ps plugin) |
| [Process Manager: Logging Supervisord](https://github.com/sehrope/dokku-logging-supervisord) | [sehrope][] | v0.3.14/0.7.0 (ps plugin) |
| [Process Manager: Shoreman ](https://github.com/statianzo/dokku-shoreman) | [statianzo][] | v0.3.14/0.7.0 (ps plugin) |
| [Process Manager: Shoreman](https://github.com/statianzo/dokku-shoreman) | [statianzo][] | v0.3.14/0.7.0 (ps plugin) |
| [Process Manager: Supervisord](https://github.com/statianzo/dokku-supervisord) | [statianzo][] | v0.3.14/0.7.0 (ps plugin) |
| [Rebuild application](https://github.com/scottatron/dokku-rebuild) | [scottatron][] | v0.3.14 (ps plugin) |
| [Reset mtime](https://github.com/mixxorz/dokku-docker-reset-mtime) | [mixxorz][] | Docker 1.8+ |
| [Supply env vars to buildpacks](https://github.com/cameron-martin/dokku-build-env)<sup>2</sup> | [cameron-martin][] | v0.3.9 (build-env plugin) |
| [user-env-compile](https://github.com/motin/dokku-user-env-compile)<sup>2</sup> | [motin][] | v0.3.9 (build-env plugin) |
| [user-env-compile](https://github.com/musicglue/dokku-user-env-compile)<sup>2</sup> | [musicglue][] | v0.3.9 (build-env plugin) |
| [VHOSTS Custom Configuration](https://github.com/neam/dokku-nginx-vhosts-custom-configuration) | [motin][] | v0.3.10 (domains plugin) |
| [Volume (persistent storage)](https://github.com/ohardy/dokku-volume) | [ohardy][] | v0.5.0 (storage plugin) |
<sup>1</sup> Conflicts with [VHOSTS Custom Configuration](https://github.com/neam/dokku-nginx-vhosts-custom-configuration)
<sup>2</sup> Similar to the heroku-labs feature (see https://devcenter.heroku.com/articles/labs-user-env-compile)
[a043e98]: https://github.com/stuartpb/dokku-bind-port/commit/a043e9892f4815b6525c850131e09fd64db5c1fa
### Unmaintained Plugins
The following plugins are no longer maintained by their developers.
@@ -304,22 +210,106 @@ The following plugins are no longer maintained by their developers.
| ------------------------------------------------------------------------------------------------- | --------------------- | --------------------- |
| [app-url](https://github.com/mikecsh/dokku-app-url) | [mikecsh][] | Works with 0.2.0 |
| [Chef cookbooks](https://github.com/fgrehm/chef-dokku) | [fgrehm][] | |
| [CouchDB (multi containers)](https://github.com/Flink/dokku-couchdb-multi-containers) | [Flink][] | 0.4.0+ |
| [CouchDB](https://github.com/racehub/dokku-couchdb-plugin) | [RaceHub][] | Compatible with 0.2.0 |
| [CouchDB (multi containers)](https://github.com/Flink/dokku-couchdb-multi-containers) | [flink][] | 0.4.0+ |
| [CouchDB](https://github.com/racehub/dokku-couchdb-plugin) | [raceHub][] | Compatible with 0.2.0 |
| [Dokku Copy App Config Files](https://github.com/alexkruegger/dokku-app-configfiles) | [alexkruegger][] | Compatible with 0.3.17+ |
| [Dokku Registry](https://github.com/agco-adm/dokku-registry) | [agco-adm][] | 0.4.0+
| [Elasticsearch](https://github.com/robv/dokku-elasticsearch) | [robv][] | Not compatible with >= 0.3.0 (still uses /home/git) |
| [Elasticsearch](https://github.com/blag/dokku-elasticsearch-plugin)<sup>1</sup> | [blag][] | Compatible with 0.2.0 |
| [Graphite/statsd](https://github.com/jlachowski/dokku-graphite-plugin) | [jlachowski][] | < 0.4.0 |
| [HipChat Notifications](https://github.com/cef/dokku-hipchat) | [cef][] | |
| [Memcached](https://github.com/Flink/dokku-memcached-plugin) | [Flink][] | 0.4.0+ |
| [Memcached](https://github.com/Flink/dokku-memcached-plugin) | [flink][] | 0.4.0+ |
| [MongoDB (single container)](https://github.com/jeffutter/dokku-mongodb-plugin) | [jeffutter][] | |
| [MySQL](https://github.com/hughfletcher/dokku-mysql-plugin) | [hughfletcher][] | |
| [Neo4j](https://github.com/Aomitayo/dokku-neo4j-plugin) | [Aomitayo][] | |
| [Neo4j](https://github.com/Aomitayo/dokku-neo4j-plugin) | [aomitayo][] | |
| [PostGIS](https://github.com/fermuch/dokku-pg-plugin) | [fermuch][] | |
| [PostgreSQL (single container)](https://github.com/jeffutter/dokku-postgresql-plugin) | [jeffutter][] | This plugin creates a single postgresql container that all your apps can use. Thus only one instance of postgresql running (good for servers without a ton of memory). |
| [RiakCS (single container)](https://github.com/jeffutter/dokku-riakcs-plugin) | [jeffutter][] | Incompatible with 0.2.0 (checked at [dccee02][]) |
| [RiakCS (single container)](https://github.com/jeffutter/dokku-riakcs-plugin) | [jeffutter][] | Incompatible with 0.2.0 |
| [Redis](https://github.com/luxifer/dokku-redis-plugin) | [luxifer][] | |
| [Redis](https://github.com/sekjun9878/dokku-redis-plugin) | [sekjun9878][] | 0.3.26+ |
<sup>1</sup> Forked from [jezdez/dokku-elasticsearch-plugin](https://github.com/jezdez/dokku-elasticsearch-plugin): uses Elasticsearch 1.2 (instead of 0.90), doesn't depend on dokku-link, runs as elasticsearch user instead of root, and turns off multicast autodiscovery for use in a VPS environment.
[256dpi]: https://github.com/256dpi
[ademuk]: https://github.com/ademuk
[agco-adm]: https://github.com/agco-adm
[alessio]: https://github.com/alessio
[alex-sherwin]: https://github.com/alex-sherwin
[alexanderbeletsky]: https://github.com/alexanderbeletsky
[alexkruegger]: https://github.com/alexkruegger
[aluxian]: https://github.com/aluxian
[aomitayo]: https://github.com/aomitayo
[apmorton]: https://github.com/apmorton
[artofrawr]: https://github.com/artofrawr
[AxelTheGerman]: https://github.com/AxelTheGerman
[badsyntax]: https://github.com/badsyntax
[basgys]: https://github.com/basgys
[benjamin-dobell]: https://github.com/benjamin-dobell
[blag]: https://github.com/blag
[cameron-martin]: https://github.com/cameron-martin
[candlewaster]: https://notabug.org/candlewaster
[cedricziel]: https://github.com/cedricziel
[cef]: https://github.com/cef
[cjblomqvist]: https://github.com/cjblomqvist
[crisward]: https://github.com/crisward
[cu12]: https://github.com/cu12
[darkpixel]: https://github.com/darkpixel
[dokku]: https://github.com/dokku
[dokku-community]: https://github.com/dokku-community
[dyson]: https://github.com/dyson
[fermuch]: https://github.com/fermuch
[fgrehm]: https://github.com/fgrehm
[flink]: https://github.com/flink
[fomojola]: https://github.com/fomojola
[gdi2290]: https://github.com/gdi2290
[hughfletcher]: https://github.com/hughfletcher
[iamale]: https://github.com/iamale
[ignlg]: https://github.com/ignlg
[iloveitaly]: https://github.com/iloveitaly
[investtools]: https://github.com/investtools
[iskandar]: https://github.com/iskandar
[jagandecapri]: https://github.com/jagandecapri
[jeffutter]: https://github.com/jeffutter
[jlachowski]: https://github.com/jlachowski
[josegonzalez]: https://github.com/josegonzalez
[kingsquare]: https://github.com/kingsquare
[kloadut]: https://github.com/kloadut
[krisrang]: https://github.com/krisrang
[luxifer]: https://github.com/luxifer
[m0rth1um]: https://github.com/m0rth1um
[maciej łebkowski]: https://github.com/mlebkowski
[mainto]: https://github.com/mainto
[matto1990]: https://github.com/matto1990
[mbreit]: https://github.com/mbreit
[mbriskar]: https://github.com/mbriskar
[michaelshobbs]: https://github.com/michaelshobbs
[mikecsh]: https://github.com/mikecsh
[mikexstudios]: https://github.com/mikexstudios
[mimischi]: https://github.com/mimischi
[mixxorz]: https://github.com/mixxorz
[motin]: https://github.com/motin
[mrname]: https://github.com/mrname
[musicglue]: https://github.com/musicglue
[neam]: https://github.com/neam
[nickcharlton]: https://github.com/nickcharlton
[nickstenning]: https://github.com/nickstenning
[ohardy]: https://github.com/ohardy
[pauldub]: https://github.com/pauldub
[pnegahdar]: https://github.com/pnegahdar
[racehub]: https://github.com/racehub
[ribot]: https://github.com/ribot
[rlaneve]: https://github.com/rlaneve
[robv]: https://github.com/robv
[scottatron]: https://github.com/scottatron
[sehrope]: https://github.com/sehrope
[sekjun9878]: https://github.com/sekjun9878
[statianzo]: https://github.com/statianzo
[stuartpb]: https://github.com/stuartpb
[thrashr888]: https://github.com/thrashr888
[wmluke]: https://github.com/wmluke
[zenedith]: https://github.com/zenedith
[fteychene]: https://github.com/fteychene
[sarendsen]: https://github.com/sarendsen
[baikunz]: https://github.com/baikunz
[lazyatom]: https://github.com/lazyatom
[ollej]: https://github.com/ollej

View File

@@ -32,7 +32,6 @@ If an FQDN such as `dokku.org` is used as the application name, the global virtu
You can optionally override this in a plugin by implementing the `nginx-hostname` plugin trigger. If the `nginx-hostname` plugin has no output, the normal hostname algorithm will be executed. See the [plugin trigger documentation](/docs/development/plugin-triggers.md#nginx-hostname) for more information.
## Disabling VHOSTS
If desired, it is possible to disable vhosts with the domains plugin.
@@ -43,7 +42,6 @@ dokku domains:disable node-js-app
On subsequent deploys, the nginx virtualhost will be discarded. This is useful when deploying internal-facing services that should not be publicly routeable. As of 0.4.0, nginx will still be configured to proxy your app on some random high port. This allows internal services to maintain the same port between deployments. You may change this port by setting `DOKKU_PROXY_PORT` and/or `DOKKU_PROXY_SSL_PORT` (for services configured to use SSL.)
The domains plugin allows you to specify custom domains for applications. This plugin is aware of any ssl certificates that are imported via `certs:add`. Be aware that disabling domains (with `domains:disable`) will override any custom domains.
```shell
@@ -115,4 +113,4 @@ dokku domains:report node-js-app --domains-app-enabled
## Default site
This is specific to your proxy plugin of choice. See the [nginx documentation](/docs/configuration/nginx.md#default-site) for more information on how to configure this for the default nginx proxy implementation.
This is specific to your proxy plugin of choice. See the [nginx documentation](/docs/networking/proxies/nginx.md#default-site) for more information on how to configure this for the default nginx proxy implementation.

View File

@@ -5,7 +5,7 @@ Typically an application will require some configuration to run properly. Dokku
The `config` plugin provides the following commands to manage your variables:
```
config (<app>|--global) Pretty-print an app or global environment
config:show (<app>|--global) Pretty-print an app or global environment
config:bundle (<app>|--global) [--merged] Bundle environment into tarfile
config:clear (<app>|--global) Clears environment variables
config:export (<app>|--global) [--envfile] Export a global or app environment
@@ -14,11 +14,11 @@ config:keys (<app>|--global) [--merged]
config:set [--encoded] [--no-restart] (<app>|--global) KEY1=VALUE1 [KEY2=VALUE2 ...] Set one or more config vars
config:unset [--no-restart] (<app>|--global) KEY1 [KEY2 ...] Unset one or more config vars
```
> For security reasons - and as per [docker recommendations](https://github.com/docker/docker/issues/13490) - Dockerfile-based deploys have variables available *only* during runtime, as noted in [this issue](https://github.com/dokku/dokku/issues/1860).
> For security reasons - and as per [docker recommendations](https://github.com/docker/docker/issues/13490) - Dockerfile-based deploys have variables available _only_ during runtime, as noted in [this issue](https://github.com/dokku/dokku/issues/1860). Consider using [build arguments](/docs/deployment/builders/dockerfiles.md#build-time-configuration-variables) to expose variables during build-time for Dockerfile apps.
Environment variables are available both at run time and during the application build/compilation step for buildpack-based deploys.
For buildpack deploys, Dokku will create a `/app/.env` file that can be used for legacy buildpacks. Note that this is *not* updated when `config:set` or `config:unset` is called, and is only written during a `deploy` or `ps:rebuild`. Developers are encouraged to instead read from the application environment directly, as the proper values will be available then.
For buildpack deploys, Dokku will create a `/app/.env` file that can be used for legacy buildpacks. Note that this is _not_ updated when `config:set` or `config:unset` is called, and is only written during a `deploy` or `ps:rebuild`. Developers are encouraged to instead read from the application environment directly, as the proper values will be available then.
> Note: Global `ENV` files are sourced before app-specific `ENV` files. This means that app-specific variables will take precedence over global variables. Configuring your global `ENV` file is manual, and should be considered potentially dangerous as configuration applies to all applications.
@@ -91,11 +91,11 @@ The following config variables have special meanings and can be set in a variety
| `DOKKU_EVENTS_LOGFILE` | `$DOKKU_LOGS_DIR/events.log` | `/etc/environment` <br /> `~dokku/.dokkurc` <br /> `~dokku/.dokkurc/*` | Where the events log file is written to. |
| `DOKKU_APP_NAME` | none | `--app APP` flag | Name of application to work on. Respected by core plugins. |
| `DOKKU_APPS_FORCE_DELETE` | none | `--force` flag | Whether to force delete an application. Also used by other plugins for destructive actions. |
| `DOKKU_CHECKS_URL` | `http://dokku.viewdocs.io/dokku/deployment/zero-downtime-deploys/` | `/etc/environment` <br /> `~dokku/.dokkurc` <br /> `~dokku/.dokkurc/*` | Url displayed during deployment when no CHECKS file exists. |
| `DOKKU_DETACH_CONTAINER` | none | `--detach` flag | Whether to detach a container started via `dokku run`. |
| `DOKKU_CHECKS_URL` | `https://dokku.com/docs/deployment/zero-downtime-deploys/` | `/etc/environment` <br /> `~dokku/.dokkurc` <br /> `~dokku/.dokkurc/*` | Url displayed during deployment when no CHECKS file exists. |
| `DOKKU_DETACH_CONTAINER` | none | `--detach` flag | Deprecated: Whether to detach a container started via `dokku run`. |
| `DOKKU_QUIET_OUTPUT` | none | `--quiet` flag | Silences certain header output for `dokku` commands. |
| `DOKKU_RM_CONTAINER` | none | `dokku config:set` <br /> `--rm-container` flag <br /> `--rm` flag | Whether to keep `dokku run` containers around or not. |
| `DOKKU_TRACE` | none | `dokku trace:on` <br /> `dokku trace:off` <br /> `--trace` flag | Turn on very verbose debugging. |
| `DOKKU_RM_CONTAINER` | none | `dokku config:set` <br /> | Deprecated: Whether to keep `dokku run` containers around or not. |
| `DOKKU_TRACE` | none | `dokku trace:on` <br /> `dokku trace:off` <br /> `--trace` flag | Turn on very verbose debugging. |
| `DOKKU_APP_PROXY_TYPE` | `nginx` | `dokku proxy:set` | |
| `DOKKU_APP_RESTORE` | `1` | `dokku config:set` <br /> `dokku ps:stop` | |
| `DOKKU_APP_SHELL` | `/bin/bash` | `dokku config:set` | Allows users to change the default shell used by Dokku for `dokku enter` and execution of deployment tasks. |

View File

@@ -18,7 +18,7 @@ certs:update <app> CRT KEY # Update an SSL Endpoint on an app. Can
dokku nginx:import-ssl <app> < certs.tar
```
> Adding an ssl certificate before deploying an application will result in port mappings being updated. This may cause issues for applications that use non-standard ports, as those may not be automatically detected. Please refer to the [proxy documentation](/docs/advanced-usage/proxy-management.md) for information as to how to reconfigure the mappings.
> Adding an ssl certificate before deploying an application will result in port mappings being updated. This may cause issues for applications that use non-standard ports, as those may not be automatically detected. Please refer to the [proxy documentation](/docs/networking/proxy-management.md) for information as to how to reconfigure the mappings.
## Per-application certificate management
@@ -41,9 +41,9 @@ cat yourdomain_com.crt yourdomain_com.ca-bundle > server.crt
#### SSL and Multiple Domains
When an SSL certificate is associated to an application, the certificate will be associated with *all* domains currently associated with said application. Your certificate _should_ be associated with all of those domains, otherwise accessing the application will result in SSL errors. If you wish to remove one of the domains from the application, refer to the [domain configuration documentation](/docs/configuration/domains.md).
When an SSL certificate is associated to an application, the certificate will be associated with _all_ domains currently associated with said application. Your certificate _should_ be associated with all of those domains, otherwise accessing the application will result in SSL errors. If you wish to remove one of the domains from the application, refer to the [domain configuration documentation](/docs/configuration/domains.md).
Note that with the default nginx template, requests will be redirected to the `https` version of the domain. If this is not the desired state of request resolution, you may customize the nginx template in use. For more details, see the [nginx documentation](/docs/configuration/nginx.md).
Note that with the default nginx template, requests will be redirected to the `https` version of the domain. If this is not the desired state of request resolution, you may customize the nginx template in use. For more details, see the [nginx documentation](/docs/networking/proxies/nginx.md).
### Certificate generation
@@ -126,7 +126,7 @@ dokku certs:report node-js-app --ssl-enabled
The [HSTS header](https://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security) is an HTTP header that can inform browsers that all requests to a given site should be made via HTTPS. Dokku does enables this header by default for HTTPS requests.
See the [NGINX HSTS documentation](/docs/configuration/nginx.md#hsts-header) for more information on how the HSTS configuration can be managed for your application.
See the [NGINX HSTS documentation](/docs/networking/proxies/nginx.md#hsts-header) for more information on how the HSTS configuration can be managed for your application.
## HTTP/2 support
@@ -150,6 +150,19 @@ Only use this option if:
If it's possible to make HTTP(S) requests directly to Nginx, bypassing the load balancer, or if the load balancer is not configured to set these headers, then it becomes possible for a client to set these headers to arbitrary values.
The `x-forwarded-ssl` property may also be set for application frameworks that require this value. Note that this is a non-standard version of setting `x-forwarded-proto` to `https`, and should only be done as a last resort.
```shell
# force-setting value to `on`
dokku nginx:set node-js-app x-forwarded-ssl on
# force-setting value to `off`
dokku nginx:set node-js-app x-forwarded-ssl on
# removing the value from nginx.conf (default)
dokku nginx:set node-js-app x-forwarded-ssl
```
### SSL Port Exposure
When your app is served from port `80` then the `/home/dokku/APP/nginx.conf` file will automatically be updated to instruct nginx to respond to ssl on port 443 as a new cert is added. If your app uses a non-standard port (perhaps you have a dockerfile deploy exposing port `99999`) you may need to manually expose an ssl port via `dokku proxy:ports-add <APP> https:443:99999`.

View File

@@ -1,4 +1,4 @@
# Deploying to Dokku
# Deploying an Application
> Note: This walkthrough uses the hostname `dokku.me` in commands. When deploying to your own server, you should substitute the domain `dokku.me` for the domain name or IP address associated with your server. Users of the Vagrant VM included with Dokku can use `dokku.me` which points to the IP of the VM.
@@ -102,10 +102,41 @@ Once the deploy is complete, the application's web URL will be generated as abov
Dokku supports deploying applications in a few ways:
- [Heroku buildpacks](https://devcenter.heroku.com/articles/buildpacks) via [Herokuish](https://github.com/gliderlabs/herokuish#buildpacks): See the [herokuish buildpacks documentation](/docs/deployment/methods/herokuish-buildpacks.md) to learn about the different ways to specify a buildpack.
- [Heroku buildpacks](https://devcenter.heroku.com/articles/buildpacks) via [Herokuish](https://github.com/gliderlabs/herokuish#buildpacks): See the [herokuish buildpacks documentation](/docs/deployment/builders/herokuish-buildpacks.md) to learn about the different ways to specify a buildpack.
- This is the default method used by Dokku.
- [Dockerfile](https://docs.docker.com/reference/builder/): See the [dockerfile documentation](/docs/deployment/methods/dockerfiles.md) to learn about the different ways to configure Dockerfile-based deploys.
- [Docker Image](https://docs.docker.com/get-started/overview/#docker-objects): See the [docker image documentation](/docs/deployment/methods/images.md) to learn about how to deploy a Docker Image.
- [Dockerfile](https://docs.docker.com/reference/builder/): See the [dockerfile documentation](/docs/deployment/builders/dockerfiles.md) to learn about the different ways to configure Dockerfile-based deploys.
- [Docker Image](https://docs.docker.com/get-started/overview/#docker-objects): See the [docker image documentation](/docs/deployment/methods/git.md#initializing-an-app-repository-from-a-docker-image) to learn about how to deploy a Docker Image.
### Setting up SSL
> While SSL certificates can be imported, automated SSL via Letsencrypt requires that all domains on an app correctly point at your server's public ip address. Please keep this in mind when using Letsencrypt.
For many users, responding to requests via `https` will be desirable. Dokku has a complete [ssl plugin](/docs/configuration/ssl.md) built in that can be used to import SSL certificates (below is a short example, please refer to the [ssl documentation](/docs/configuration/ssl.md) for more information):
```shell
dokku certs:add ruby-getting-started server.crt server.key
```
As an alternative, the Dokku project offers an optional letsencrypt plugin that can be used to automate SSL certificate retrieval and renewal.
```shell
# on the Dokku host
# install the letsencrypt plugin
# plugin installation requires root, hence the user change
sudo dokku plugin:install https://github.com/dokku/dokku-letsencrypt.git
# configure the plugin
dokku config:set --global DOKKU_LETSENCRYPT_EMAIL=your-email@your.domain.com
# set a custom domain that you own for your application
dokku domains:set ruby-getting-started ruby-getting-started.your.domain.com
# enable letsencrypt
dokku letsencrypt:enable ruby-getting-started
# enable auto-renewal
dokku letsencrypt:cron-job --add
```
### Skipping deployment
@@ -125,7 +156,7 @@ If you need to redeploy or restart your app:
dokku ps:rebuild ruby-getting-started
```
See the [process scaling documentation](/docs/deployment/process-management.md) for more information on how to manage your app processes.
See the [process scaling documentation](/docs/processes/process-management.md) for more information on how to manage your app processes.
### Deploying with private Git submodules
@@ -180,10 +211,12 @@ git remote add dokku dokku@dokku.me:dokku.me
git push dokku main:master
```
... deployment ...
```
... deployment ...
remote: -----> Application deployed:
remote: http://dokku.me
remote: -----> Application deployed:
remote: http://dokku.me
```
## Dokku/Docker container management compatibility
@@ -205,15 +238,15 @@ See the [Git documentation](/docs/deployment/methods/git.md#changing-the-deploy-
## Dockerfile deployment
See the [Dockerfile documentation](/docs/deployment/methods/dockerfiles.md) for information Dokku's Dockerfile support.
See the [Dockerfile documentation](/docs/deployment/builders/dockerfiles.md) for information Dokku's Dockerfile support.
## Image tagging
See the [image tagging documentation](/docs/deployment/methods/images.md) for more information on how Docker images can be tagged and deployed for a given application.
See the [image tagging documentation](/docs/deployment/methods/git.md#initializing-an-app-repository-from-a-docker-image) for more information on how Docker images can be tagged and deployed for a given application.
## Specifying a custom buildpack
See the [herokuish buildpack documentation](/docs/deployment/methods/herokuish-buildpacks.md) for more information on how to specify a set of custom buildpacks for your application.
See the [herokuish buildpack documentation](/docs/deployment/builders/herokuish-buildpacks.md) for more information on how to specify a set of custom buildpacks for your application.
## Removing a deployed app

Some files were not shown because too many files have changed in this diff Show More