You can try `make deps`, which will install deps in apisix's directory.

Thanks,
Ming Wen, Apache APISIX
Twitter: _WenMing


liyong <[email protected]> 于2019年11月21日周四 上午10:43写道:

> The Makefile has already give a recommended way for install dependencies by
> using luarock 3 with the --lua-dir option specified to OpenResty's luajit,
> and the dependencies is installed at current directory(project repo root).
> But how we do this for production environment? The `install` target in
> `Makefile` copy the source to `/usr/local/apisix`(`apisix_home`),I think
> this is very good, but it doesn't copy deps directory to
> `/usr/local/apisix`, I think we should also copy this.
> The OpenResty use `/usr/local/apisix` as its prefix path, the log path
> locate at /var/log/apisix/ may be more compatible with Linux FHS standard.
> As this can be configured by `config.yaml`, we can skip this step now.
>
> So the standard production install like this:
> 1. Ensure `OpenResty` is installed and has the expected version(s)
> 2. Ensure `luarocks 3` is installed
> 3. Use `/usr/local/apisix` as `apisix_home`
>     sudo luarocks install --lua-dir=/usr/local/openresty/luajit
> --tree=/usr/local/apisix apisix
> The directory tree like this:
> /usr/local/apisix
> ├── bin
> │   └── apisix
> ├── conf
> │   ├── cert
> │   │   ├── apisix.crt
> │   │   └── apisix.key
> │   ├── config.yaml
> │   ├── mime.types
> │   └── nginx.conf
> ├── lib
> │   ├── lua
> │   │   └── 5.1
> │   │       ├── lfs.so
> │   │       ├── librestychash.so
> │   │       ├── librestyradixtree.so
> │   │       ├── pb.so
> │   │       └── rapidjson.so
> │   └── luarocks
> │       └── rocks-5.1
> │           ├── apisix
> │           ├── iresty-nginx-lua-prometheus
> │           ├── luafilesystem
> │           ├── lua-protobuf
> │           ├── lua-resty-balancer
> │           ├── lua-resty-cookie
> │           ├── lua-resty-etcd
> │           ├── lua-resty-healthcheck-iresty
> │           ├── lua-resty-http
> │           ├── lua-resty-ipmatcher
> │           ├── lua-resty-jit-uuid
> │           ├── lua-resty-jwt
> │           ├── lua-resty-ngxvar
> │           ├── lua-resty-openidc
> │           ├── lua-resty-radixtree
> │           ├── lua-resty-session
> │           ├── lua-resty-template
> │           ├── lua-resty-worker-events
> │           ├── lua-tinyyaml
> │           ├── lua-typeof
> │           ├── manifest
> │           ├── opentracing-openresty
> │           └── rapidjson
> ├── logs
> └── share
>     └── lua
>         └── 5.1
>             ├── apisix
>             ├── nginx
>             ├── opentracing
>             ├── protoc.lua
>             ├── resty
>             ├── tinyyaml.lua
>             └── typeof.lua
>
>
> What can we do?
> 1. Add install document for production environment
> 2. Support upgrade document for each release
> 3. Modify Makefile to support installation(`make install`) current codebase
> 4. Add some `config.yaml` config item, eg. `tmp_dir`, this would set
> *_temp_path for OpenResty.
> ```
> client_body_temp_path
> fastcgi_temp_path
> uwsgi_temp_path
> scgi_temp_path
> proxy_temp_path
> ```
>

Reply via email to