Skip to main content
Example Repo

Adding NGINX to your Shell

Run devbox add nginx, or add the following to your devbox.json
  "packages": [    "nginx@latest"  ]
This will install the latest version of NGINX. You can find other installable versions of NGINX by running devbox search nginx. You can also view the available versions on Nixhub

NGINX Plugin Details

Services

  • nginx
Use devbox services start|stop nginx to start and stop the NGINX service in the background

Helper Files

The following helper files will be created in your project directory:
  • devbox.d/nginx/nginx.conf
  • devbox.d/nginx/nginx.template
  • devbox.d/nginx/fastcgi.conf
  • devbox.d/web/index.html
Devbox uses envsubst to generate nginx.conf from the nginx.template file every time Devbox starts a shell, service, or script. This allows you to create an NGINX config using environment variables by modifying nginx.template. To edit your NGINX configuration, you should modify the nginx.template file. Note that by default, NGINX is configured with ./devbox.d/web as the root directory. To change this, you should modify ./devbox.d/nginx/nginx.template

Environment Variables

NGINX_CONFDIR=devbox.d/nginx/nginx.confNGINX_PATH_PREFIX=.devbox/virtenv/nginxNGINX_TMPDIR=.devbox/virtenv/nginx/temp

Notes

You can easily configure NGINX by modifying these env variables in your shell’s init_hook To customize:
  • Use $NGINX_CONFDIR to change the configuration directory
  • Use $NGINX_LOGDIR to change the log directory
  • Use $NGINX_PIDDIR to change the pid directory
  • Use $NGINX_RUNDIR to change the run directory
  • Use $NGINX_SITESDIR to change the sites directory
  • Use NGINXTMPDIRtochangethetmpdirectory.UseNGINX_TMPDIR to change the tmp directory. Use NGINX_USER to change the user
  • Use $NGINX_GROUP to customize.
You can also customize the nginx.conf and fastcgi.conf stored in devbox.d/nginx

Disabling the NGINX Plugin

You can disable the NGINX plugin by running devbox add nginx --disable-plugin, or by setting the disable_plugin field in your devbox.json:
{
  "packages": {
    "nginx": {
      "version": "latest",
      "disable_plugin": true
    }
  }
}
Edit this page
I