nginx is a very common webserver and reverse proxy which you can easily add to your Lando app by adding an entry to the
services key in your app's
While Lando does not "officially" support specifying a patch version of this service you can try specifying one using overrides if you need to. This is not guaranteed to work so use at your own risk and take some care to make sure you are using a
debian flavored patch version that also matches up with the
minor versions of the service that we indicate above in "Supported versions".
Here are all the tags that are available for this service.
Here is an example of overriding the
nginx service to use a patched version.
# The name of my app name: patchversion # Give me http://patchversion.lndo.site and https://patchversion.lndo.site proxy: appserver: - patchversion.lndo.site # Configure my services services: # Create an nginx service called "appserver" appserver: # Set this to custom so we can override down the stream type: nginx:custom # SSL ssl: true # Override the image with the patch version # Note that this needs to be a correct namespace on the docker hub overrides: services: image: nginx:1.12.1 # Quick comamnd to check the nginx version tooling: nginx: service: appserver
You can check out the full code for this example over here.
# The name of my app name: nginx # Give me http://nginx.lndo.site and https://nginx.lndo.site proxy: appserver: - nginx.lndo.site # Configure my services services: # Create an nginx service called "appserver" appserver: # Use nginx version 1.12 type: nginx:1.12 # Optionally configure nginx to be able to also serve over https ssl: true # Optionally specify a webroot if your index.html is in a subdirectory webroot: www # Optionally use our own config files config: # Use custom nginx server config located in config/server.conf relative # to our app root server: config/server.conf # Use custom nginx http config located in config/http.conf relative # to our app root # http: config/http.conf # Pass in some docker compose overrides so we can map ports and get # more envvars overrides: services: environment: THING: STUFF ports: ['8888:80']
You will need to rebuild your app with
lando rebuild to apply the changes to this file. You can check out the full code for this example over here.