Hi
I was running one of the older versions of cells 2.0.x in production. I decided to try the latest version as I needed the cec client to actually work. Now nothing seems to work properly
the gRPC service refuses to start.
When users are trying to upload files they are failing. And I’m getting a bunch of caddy errors
I’m running cells behind NGINX as my reverse proxy as per your instructions on your website.
I’m on centos 7
I’ve explicitly set the -grpc_external=33060 and as an environment variable
But the microservice wont start and
Do you have to enable it in some other config file??
And in my caddy logs I get this error
[ERROR 502 /io/personal-files/201207-GN-PMC66-BUR-1_test_wells/A50363_201215020001_D05f07d2.C01] dial tcp: lookup PENDING on xxx.xxx.xxx.xx:53: no such host
(actual ip of dns server redacted to protect the innocent)
Why is it trying to do a reverse lookup on every file that comes in? Can it be turned off?
Could you please also share your nginx config? Do you use the synchronisation client?
We quickly tested on Debian with nginx and the latest cells but could not reproduce your problems. And by the way, the doc on the website seems to be a little bit outdated, we have to update it soon.
This is the nginx.conf file.
We use the sync client and the cec client
Mainly the cec client. Users tend to get a lot of error 500’s from the cec client. But I’m assuming thats because it also tries to use the gRPC port to update something once it’s transferred a file.
[root@pydio-cells conf.d]# cells version
Warning: no private IP detected for binding broker. Will bind to 115.xxx.xxx.xxx, which may give public access to the broker.
Pydio Cells Home Edition
Version: 2.2.3
Built: 09 Mar 21 17:56 +0000
Git commit: 38059a9c24b1a2b41722b6563122de16615de59e
OS/Arch: linux/amd64
Go version: go1.15.5
There has been a regression we have missed in 2.2.x: launching the App without a private IP is broken.
It will be fixed in 2.2.4 that should be released very soon, together with more doc on the subject (that is already written, but not yet published)
Anyway it is strongly advised to have a private IP and that will fix your setup with 2.2.3.
On CentOS7 it is quite easy:
Assuming your main interface is called eth0, adapt otherwise.
sudo tee /etc/sysconfig/network-scripts/ifcfg-eth0:0 << EOF
DEVICE="eth0:0"
ONBOOT="yes"
BOOTPROTO="static"
IPADDR="10.0.0.1"
NETMASK="255.255.255.0"
BROADCAST="10.0.0.1"
EOF
# Start the interface and check new IP
sudo ifup eth0:0
sudo ip address
Hi
ok, that helped for making the grpc service start up.
The problem is now, how are you actually supposed to pass it through nginx
From what I can gather starting cells with the external grpc environment variable and a port number is really for when cells isn’t behind a reverse proxy.
Since I am behind an nginx proxy and it’s that which is handling my SSL certs. What is the way which this is supposed to work?
It looks as if the service pydio.gateway.grpc.clear is the service which would handle the grpc connections. But this seems to be randomly assigned it’s port?