kopia lustrzana https://github.com/piku/piku
50 wiersze
2.8 KiB
Markdown
50 wiersze
2.8 KiB
Markdown
# Configuring Piku via ENV
|
|
|
|
You can configure deployment settings by placing special variables in an `ENV` file deployed with your app.
|
|
|
|
## Runtime Settings
|
|
|
|
* `PIKU_AUTO_RESTART` (boolean, defaults to `true`): Piku will restart all workers every time the app is deployed. You can set it to `0`/`false` if you prefer to deploy first and then restart your workers separately.
|
|
|
|
### Python
|
|
|
|
* `PYTHON_VERSION` (int): Forces Python 3
|
|
|
|
### Node
|
|
|
|
* `NODE_VERSION`: installs a particular version of node for your app if `nodeenv` is found on the path.
|
|
|
|
**Note**: you will need to stop and re-deploy the app to change the node version in a running app.
|
|
|
|
## Network Settings
|
|
|
|
* `BIND_ADDRESS`: IP address to which your app will bind (typically `127.0.0.1`)
|
|
* `PORT`: TCP port for your app to listen in (if deploying your own web listener).
|
|
* `DISABLE_IPV6` (boolean): if set to `true`, it will remove IPv6-specific items from the `nginx` config, which will accept only IPv4 connections
|
|
|
|
## uWSGI Settings
|
|
|
|
* `UWSGI_MAX_REQUESTS` (integer): set the `max-requests` option to determine how many requests a worker will receive before it's recycled.
|
|
* `UWSGI_LISTEN` (integer): set the `listen` queue size.
|
|
* `UWSGI_PROCESSES` (integer): set the `processes` count.
|
|
* `UWSGI_ENABLE_THREADS` (boolean): set the `enable-threads` option.
|
|
* `UWSGI_LOG_MAXSIZE` (integer): set the `log-maxsize`.
|
|
* `UWSGI_LOG_X_FORWARDED_FOR` (boolean): set the `log-x-forwarded-for` option.
|
|
* `UWSGI_GEVENT`: enable the Python 2 `gevent` plugin
|
|
* `UWSGI_ASYNCIO` (integer): enable the Python 2/3 `asyncio` plugin and set the number of tasks
|
|
* `UWSGI_INCLUDE_FILE`: a uwsgi config file in the app's dir to include - useful for including custom uwsgi directives.
|
|
* `UWSGI_IDLE` (integer): set the `cheap`, `idle` and `die-on-idle` options to have workers spawned on demand and killed after _n_ seconds of inactivity.
|
|
|
|
## Nginx Settings
|
|
|
|
* `NGINX_SERVER_NAME`: set the virtual host name associated with your app
|
|
* `NGINX_CLOUDFLARE_ACL` (boolean): activate an ACL allowing access only from Cloudflare IPs
|
|
* `NGINX_STATIC_PATHS`: set an array of `/url:path` values
|
|
* `NGINX_HTTPS_ONLY` (boolean, defaults to false): tell nginx to auto-redirect non-SSL traffic to SSL site. **NOTE:** if used with CloudFlare, it will cause an infinite redirect loop - you will need to add a CloudFlare Page Rule to "Always Use HTTPS" for your server (`domain.name/*` to match all URLs).
|
|
* `NGINX_INCLUDE_FILE`: a file in the app's dir to include in nginx config `server` section - useful for including custom nginx directives.
|
|
* `NGINX_ALLOW_GIT_FOLDERS`: (boolean) allow access to `.git` folders (default: false, blocked)
|
|
|
|
## Acme Settings
|
|
|
|
* `ACME_ROOT_CA`: set the certificate authority that Acme should use to generate public ssl certificates (string, default: `letsencrypt.org`)
|