mirror of
https://github.com/dokku/dokku.git
synced 2025-12-29 00:25:08 +01:00
Merge pull request #3148 from dokku/consistent-voice
Use consistent terms for domains, apps, and commands
This commit is contained in:
@@ -8,10 +8,10 @@
|
||||
- A detailed list of template variables can be found [here](/docs/configuration/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/myapp` on the Dokku server
|
||||
- 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)
|
||||
- Support for server-wide SSL certs have been dropped in favor of using the `certs` plugin
|
||||
- `dokku certs:add myapp < certs.tar`
|
||||
- `dokku certs:add node-js-app < certs.tar`
|
||||
- All domains for an SSL-enabled app will be redirected to https by default
|
||||
- This can be overridden with a custom template
|
||||
- Replaced "magic" `NO_VHOST` variable with `domains:enable/disable`
|
||||
@@ -22,4 +22,4 @@
|
||||
|
||||
- Dockerfiles with `EXPOSE` clauses will get [all **tcp** ports proxied by default](/docs/deployment/methods/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 myapp`
|
||||
- UDP ports can be exposed by disabling the [nginx proxy](/docs/advanced-usage/proxy-management.md) with `dokku proxy:disable node-js-app`
|
||||
|
||||
@@ -48,7 +48,7 @@ If the `nginx-hostname` plugin has no output, the normal hostname algorithm will
|
||||
If desired, it is possible to disable vhosts with the domains plugin.
|
||||
|
||||
```shell
|
||||
dokku domains:disable myapp
|
||||
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.)
|
||||
@@ -57,22 +57,22 @@ On subsequent deploys, the nginx virtualhost will be discarded. This is useful w
|
||||
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
|
||||
# where `myapp` is the name of your app
|
||||
# where `node-js-app` is the name of your app
|
||||
|
||||
# add a domain to an app
|
||||
dokku domains:add myapp example.com
|
||||
dokku domains:add node-js-app dokku.me
|
||||
|
||||
# list custom domains for app
|
||||
dokku domains myapp
|
||||
dokku domains node-js-app
|
||||
|
||||
# clear all custom domains for app
|
||||
dokku domains:clear myapp
|
||||
dokku domains:clear node-js-app
|
||||
|
||||
# remove a custom domain from app
|
||||
dokku domains:remove myapp example.com
|
||||
dokku domains:remove node-js-app dokku.me
|
||||
|
||||
# set all custom domains for app
|
||||
dokku domains:set myapp example.com example.org
|
||||
dokku domains:set node-js-app dokku.me dokku.org
|
||||
```
|
||||
|
||||
## Displaying domains reports about an app
|
||||
@@ -88,19 +88,19 @@ dokku domains:report
|
||||
```
|
||||
=====> node-js-app domains information
|
||||
Domains app enabled: true
|
||||
Domains app vhosts: ruby-sample.example.org
|
||||
Domains app vhosts: ruby-sample.dokku.org
|
||||
Domains global enabled: true
|
||||
Domains global vhosts: example.org
|
||||
Domains global vhosts: dokku.org
|
||||
=====> python-sample domains information
|
||||
Domains app enabled: true
|
||||
Domains app vhosts: ruby-sample.example.org
|
||||
Domains app vhosts: ruby-sample.dokku.org
|
||||
Domains global enabled: true
|
||||
Domains global vhosts: example.org
|
||||
Domains global vhosts: dokku.org
|
||||
=====> ruby-sample domains information
|
||||
Domains app enabled: true
|
||||
Domains app vhosts: ruby-sample.example.org
|
||||
Domains app vhosts: ruby-sample.dokku.org
|
||||
Domains global enabled: true
|
||||
Domains global vhosts: example.org
|
||||
Domains global vhosts: dokku.org
|
||||
```
|
||||
|
||||
You can run the command for a specific app also.
|
||||
@@ -112,9 +112,9 @@ dokku domains:report node-js-app
|
||||
```
|
||||
=====> node-js-app domains information
|
||||
Domains app enabled: true
|
||||
Domains app vhosts: node-js-app.example.org
|
||||
Domains app vhosts: node-js-app.dokku.org
|
||||
Domains global enabled: true
|
||||
Domains global vhosts: example.org
|
||||
Domains global vhosts: dokku.org
|
||||
```
|
||||
|
||||
You can pass flags which will output only the value of the specific information you want. For example:
|
||||
|
||||
@@ -53,13 +53,13 @@ include {{ .DOKKU_ROOT }}/{{ .APP }}/nginx.conf.d/*.conf;
|
||||
That means you can put additional configuration in separate files, for example to limit the uploaded body size to 50 megabytes, do
|
||||
|
||||
```shell
|
||||
mkdir /home/dokku/myapp/nginx.conf.d/
|
||||
echo 'client_max_body_size 50m;' > /home/dokku/myapp/nginx.conf.d/upload.conf
|
||||
chown dokku:dokku /home/dokku/myapp/nginx.conf.d/upload.conf
|
||||
mkdir /home/dokku/node-js-app/nginx.conf.d/
|
||||
echo 'client_max_body_size 50m;' > /home/dokku/node-js-app/nginx.conf.d/upload.conf
|
||||
chown dokku:dokku /home/dokku/node-js-app/nginx.conf.d/upload.conf
|
||||
service nginx reload
|
||||
```
|
||||
|
||||
The example above uses additional configuration files directly on the Dokku host. Unlike the `nginx.conf.sigil` file, these additional files will not be copied over from your application repo, and thus need to be placed in the `/home/dokku/myapp/nginx.conf.d/` directory manually.
|
||||
The example above uses additional configuration files directly on the Dokku host. Unlike the `nginx.conf.sigil` file, these additional files will not be copied over from your application repo, and thus need to be placed in the `/home/dokku/node-js-app/nginx.conf.d/` directory manually.
|
||||
|
||||
For PHP Buildpack users, you will also need to provide a `Procfile` and an accompanying `nginx.conf` file to customize the nginx config *within* the container. The following are example contents for your `Procfile`
|
||||
|
||||
|
||||
@@ -97,11 +97,11 @@ dokku certs:report node-js-sample
|
||||
=====> node-js-sample ssl information
|
||||
Ssl dir: /home/dokku/node-js-sample/tls
|
||||
Ssl enabled: true
|
||||
Ssl hostnames: *.example.org example.org
|
||||
Ssl hostnames: *.dokku.org dokku.org
|
||||
Ssl expires at: Oct 5 23:59:59 2019 GMT
|
||||
Ssl issuer: C=GB, ST=Greater Manchester, L=Salford, O=COMODO CA Limited, CN=COMODO RSA Domain Validation Secure Server CA
|
||||
Ssl starts at: Oct 5 00:00:00 2016 GMT
|
||||
Ssl subject: OU=Domain Control Validated; OU=PositiveSSL Wildcard; CN=*.example.org
|
||||
Ssl subject: OU=Domain Control Validated; OU=PositiveSSL Wildcard; CN=*.dokku.org
|
||||
Ssl verified: self signed.
|
||||
```
|
||||
|
||||
|
||||
@@ -162,7 +162,7 @@ dokku apps:clone --skip-deploy node-js-app io-js-app
|
||||
|
||||
> New as of 0.11.6
|
||||
|
||||
If you wish to disable deploying for a period of time, this can be done via deploy locks. Normally, deploy locks exist only for the duration of a deploy so as to avoid deploys from colliding, but a deploy lock can be created by running the `apps:lock` subcommand.
|
||||
If you wish to disable deploying for a period of time, this can be done via deploy locks. Normally, deploy locks exist only for the duration of a deploy so as to avoid deploys from colliding, but a deploy lock can be created by running the `apps:lock` command.
|
||||
|
||||
|
||||
```shell
|
||||
@@ -177,7 +177,7 @@ dokku apps:lock node-js-app
|
||||
|
||||
> New as of 0.11.6
|
||||
|
||||
In some cases, it may be necessary to remove an existing deploy lock. This can be performed via the `apps:unlock` subcommand.
|
||||
In some cases, it may be necessary to remove an existing deploy lock. This can be performed via the `apps:unlock` command.
|
||||
|
||||
> Warning: Removing the deploy lock _will not_ stop in progress deploys. At this time, in progress deploys will need to be manually terminated by someone with server access.
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ GIT-based deployment has been the traditional method of deploying applications i
|
||||
|
||||
### Initializing an Application
|
||||
|
||||
When an application is created via `git push`, Dokku will create the proper `pre-receive` hook in order to execute the build pipeline. In certain cases - such as when fronting deploys with the [`git-http-backend`](https://git-scm.com/docs/git-http-backend) - this may not be correctly created. As an alternative, the `git:initialize` subcommand can be used to trigger this creation:
|
||||
When an application is created via `git push`, Dokku will create the proper `pre-receive` hook in order to execute the build pipeline. In certain cases - such as when fronting deploys with the [`git-http-backend`](https://git-scm.com/docs/git-http-backend) - this may not be correctly created. As an alternative, the `git:initialize` command can be used to trigger this creation:
|
||||
|
||||
```shell
|
||||
# on the Dokku host
|
||||
@@ -38,7 +38,7 @@ By default, Dokku will deploy code pushed to the `master` branch. In order to qu
|
||||
git push dokku SOME_BRANCH_NAME:master
|
||||
```
|
||||
|
||||
In `0.12.0`, the correct way to change the deploy branch is to use the `git:set` Dokku subcommand.
|
||||
In `0.12.0`, the correct way to change the deploy branch is to use the `git:set` Dokku command.
|
||||
|
||||
```shell
|
||||
# on the Dokku host
|
||||
@@ -59,7 +59,7 @@ Pushing multiple branches can also be supportec by creating a [receive-branch](/
|
||||
|
||||
Application deployments will include a special `GIT_REV` environment variable containing the current deployment sha being deployed. For rebuilds, this sha will remain the same.
|
||||
|
||||
To configure the name of the `GIT_REV` environment variable, run the `git:set` subcommand as follows:
|
||||
To configure the name of the `GIT_REV` environment variable, run the `git:set` command as follows:
|
||||
|
||||
```shell
|
||||
# on the Dokku host
|
||||
|
||||
@@ -140,7 +140,7 @@ The following is a sample cronfile that you can use for your applications:
|
||||
|
||||
```cron
|
||||
# server cron jobs
|
||||
MAILTO="mail@example.com"
|
||||
MAILTO="mail@dokku.me"
|
||||
PATH=/usr/local/bin:/usr/bin:/bin
|
||||
SHELL=/bin/bash
|
||||
|
||||
|
||||
@@ -145,15 +145,15 @@ The `CHECKS` file can contain multiple checks:
|
||||
To check an application that supports multiple hostnames, use relative URLs that include the hostname:
|
||||
|
||||
```
|
||||
//admin.example.com Admin Dashboard
|
||||
//static.example.com/logo.png
|
||||
//admin.dokku.me Admin Dashboard
|
||||
//static.dokku.me/logo.png
|
||||
```
|
||||
|
||||
You can also specify the protocol to explicitly check HTTPS requests:
|
||||
|
||||
```
|
||||
https://admin.example.com Admin Dashboard
|
||||
https://static.example.com/logo.png
|
||||
https://admin.dokku.me Admin Dashboard
|
||||
https://static.dokku.me/logo.png
|
||||
```
|
||||
|
||||
While a full url may be used in order to invoke checks, if you are using relative urls, the port *must* be omitted.
|
||||
@@ -286,7 +286,7 @@ git push dokku master
|
||||
|
||||
```
|
||||
-----> Cleaning up...
|
||||
-----> Building myapp from herokuish...
|
||||
-----> Building node-js-app from herokuish...
|
||||
-----> Adding BUILD_ENV to build environment...
|
||||
-----> Ruby app detected
|
||||
-----> Compiling Ruby/Rails
|
||||
@@ -296,8 +296,8 @@ git push dokku master
|
||||
|
||||
-----> Discovering process types
|
||||
Procfile declares types -> web
|
||||
-----> Releasing myapp...
|
||||
-----> Deploying myapp...
|
||||
-----> Releasing node-js-app...
|
||||
-----> Deploying node-js-app...
|
||||
-----> Running pre-flight checks
|
||||
-----> Attempt 1/6 Waiting for 10 seconds ...
|
||||
CHECKS expected result:
|
||||
@@ -315,7 +315,7 @@ curl: (7) Failed to connect to 172.17.0.155 port 5000: Connection refused
|
||||
CHECKS expected result:
|
||||
http://localhost/check.txt => "simple_check"
|
||||
-----> All checks successful!
|
||||
=====> myapp container output:
|
||||
=====> node-js-app container output:
|
||||
=> Booting Thin
|
||||
=> Rails 4.2.0 application starting in production on http://0.0.0.0:5000
|
||||
=> Run `rails server -h` for more startup options
|
||||
@@ -323,15 +323,15 @@ curl: (7) Failed to connect to 172.17.0.155 port 5000: Connection refused
|
||||
Thin web server (v1.6.3 codename Protein Powder)
|
||||
Maximum connections set to 1024
|
||||
Listening on 0.0.0.0:5000, CTRL+C to stop
|
||||
=====> end myapp container output
|
||||
=====> end node-js-app container output
|
||||
-----> Running post-deploy
|
||||
-----> Configuring myapp.dokku.example.com...
|
||||
-----> Configuring myapp.dokku.me...
|
||||
-----> Creating http nginx.conf
|
||||
-----> Running nginx-pre-reload
|
||||
Reloading nginx
|
||||
-----> Shutting down old container in 60 seconds
|
||||
=====> Application deployed:
|
||||
http://myapp.dokku.example.com
|
||||
http://myapp.dokku.me
|
||||
```
|
||||
|
||||
## Example: Failing Rails Deployment
|
||||
@@ -360,7 +360,7 @@ git push dokku master
|
||||
|
||||
```
|
||||
-----> Cleaning up...
|
||||
-----> Building myapp from herokuish...
|
||||
-----> Building node-js-app from herokuish...
|
||||
-----> Adding BUILD_ENV to build environment...
|
||||
-----> Ruby app detected
|
||||
-----> Compiling Ruby/Rails
|
||||
@@ -370,8 +370,8 @@ git push dokku master
|
||||
|
||||
Discovering process types
|
||||
Procfile declares types -> web
|
||||
Releasing myapp...
|
||||
Deploying myapp...
|
||||
Releasing node-js-app...
|
||||
Deploying node-js-app...
|
||||
Running pre-flight checks
|
||||
-----> Attempt 1/6 Waiting for 10 seconds ...
|
||||
CHECKS expected result:
|
||||
@@ -410,7 +410,7 @@ curl: (22) The requested URL returned error: 500 Internal Server Error
|
||||
curl: (22) The requested URL returned error: 500 Internal Server Error
|
||||
Could not start due to 1 failed checks.
|
||||
! Check attempt 6/6 failed.
|
||||
=====> myapp container output:
|
||||
=====> node-js-app container output:
|
||||
=> Booting Thin
|
||||
=> Rails 4.2.0 application starting in production on http://0.0.0.0:5000
|
||||
=> Run `rails server -h` for more startup options
|
||||
@@ -431,9 +431,9 @@ Could not start due to 1 failed checks.
|
||||
vendor/bundle/ruby/2.0.0/gems/activerecord-4.2.0/lib/active_record/connection_adapters/postgresql_adapter.rb:242:in `initialize'
|
||||
vendor/bundle/ruby/2.0.0/gems/activerecord-4.2.0/lib/active_record/connection_adapters/postgresql_adapter.rb:44:in `new'
|
||||
vendor/bundle/ruby/2.0.0/gems/activerecord-4.2.0/lib/active_record/connection_adapters/postgresql_adapter.rb:44:in `postgresql_connection
|
||||
=====> end myapp container output
|
||||
=====> end node-js-app container output
|
||||
/usr/bin/dokku: line 49: 23409 Killed dokku deploy "$APP"
|
||||
To dokku@dokku.example.com:myapp
|
||||
To dokku@dokku.me:myapp
|
||||
! [remote rejected] dokku -> master (pre-receive hook declined)
|
||||
error: failed to push some refs to 'dokku@dokku.example.com:myapp'
|
||||
error: failed to push some refs to 'dokku@dokku.me:myapp'
|
||||
```
|
||||
|
||||
@@ -998,7 +998,7 @@ set -eo pipefail; [[ $DOKKU_TRACE ]] && set -x
|
||||
|
||||
APP="$1";
|
||||
|
||||
curl "https://example.com/starting/${APP}" || true
|
||||
curl "https://dokku.me/starting/${APP}" || true
|
||||
```
|
||||
|
||||
### `proxy-build-config`
|
||||
@@ -1102,7 +1102,7 @@ plugn trigger receive-app $APP $newrev
|
||||
set -eo pipefail; [[ $DOKKU_TRACE ]] && set -x
|
||||
APP="$1"; HOSTNAME=$(hostname -s)
|
||||
|
||||
mail -s "$APP containers on $HOSTNAME failed to retire" ops@example.com
|
||||
mail -s "$APP containers on $HOSTNAME failed to retire" ops@dokku.me
|
||||
```
|
||||
|
||||
### `report`
|
||||
|
||||
@@ -28,15 +28,15 @@ Don't be afraid to ask if you need help. Create a [new issue](https://github.co
|
||||
|
||||
For the examples, we will use the domain name `example.tld` and the IP address `127.0.0.1`.
|
||||
|
||||
Dokku uses DNS to differentiate between apps on your dokku-powered server. If you are using the domain `example.tld`, and you have two apps `myapp1` and `myapp2`, Dokku will make them available at `myapp1.example.tld` and `myapp2.example.tld`.
|
||||
Dokku uses DNS to differentiate between apps on your dokku-powered server. If you are using the domain `example.tld`, and you have two apps `node-js-app1` and `node-js-app2`, Dokku will make them available at `node-js-app1.example.tld` and `node-js-app2.example.tld`.
|
||||
|
||||
To get started, you need to know the IP address of your Dokku server. Connect to it and run `ifconfig` or `ip addr` to see the IP address.
|
||||
|
||||
Now you have to make a decision about your domain. Do you want everything and anything at `example.tld` to go to your Dokku server, or would you rather use a 'sub domain' for your Dokku server?
|
||||
|
||||
In other words, do you want your applications on your Dokku server accessible via `myapp.example.tld` or via `myapp.myserver.example.tld`?
|
||||
In other words, do you want your applications on your Dokku server accessible via `node-js-app.example.tld` or via `node-js-app.myserver.example.tld`?
|
||||
|
||||
#### Using a sub-domain (myapp.myserver.example.tld)
|
||||
#### Using a sub-domain (node-js-app.myserver.example.tld)
|
||||
|
||||
Using a sub-domain is easy. When you set up your server, you probably gave it a name like `myserver.example.tld`.
|
||||
|
||||
@@ -71,7 +71,7 @@ If they all return your IP address, you have set DNS up properly for dokku. You
|
||||
|
||||
Proceed with the setup instructions in the [installation documentation](/docs/getting-started/installation.md)
|
||||
|
||||
#### Using the root of your domain (myapp.example.tld)
|
||||
#### Using the root of your domain (node-js-app.example.tld)
|
||||
|
||||
This section is a work in progress. It is incomplete.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user