NGINX Unit is a dynamic web application server, designed to run applications in multiple languages.
https://www.nginx.com/products/nginx-unit/
latest, 0.1.1 (docker/Dockerfile)
Run with docker-compose is rightly simple.
$ git clone https://github.com/yousan/nginx-unit
$ cd nginx-unit
$ docker-compose up
Socket file to connect unit server and json files to manage unit server are preserved.
$ sudo curl -X PUT -d @./json/wiki.json --unix-socket ./run/control.unit.sock http://localhost/
you can use docker command
$ docker run --name some-nginx-unit -d yousan/nginx-unit
Create root and run directories, mount those directories.
$ docker run --name some-nginx-unit -v /var/www:/www/root -v /var/run:/var/run:rw -p 8200:8200 -p 8300:8300 yousan/nginx-unit
You can send curl requests from local host into docker container.
$ sudo curl -X PUT -d @./json/wiki.json --unix-socket ./run/control.unit.sock http://localhost/
Make sure directory (/var/run/) which have socket file (/var/run/control.sock) is bound.
$ docker build --rm ./ -t yousan/nginx-unit && \
docker-compose down && docker-compose up -d && \
docker-compose exec nginx-unit curl -X PUT -d @/root/json/start.json --unix-socket /var/run/control.unit.sock http://localhost/ && \
docker-compose exec nginx-unit /bin/bash