docker
docker copied to clipboard
App Talk in Nextcloud Hub redirects to internal IP
I have installed Nextcloud Hub from docker-compose. After installation, i've configured reverse proxy in Nginx (using a subdomain).
During the first access (from external URL, not internal), the Nextcloud installation is fine. But, when I login to the application, and clic into Talk button redirects to the internal IP.
How change this comportaiment? Thank you.
Please have a look at https://github.com/nextcloud/docker#using-the-apache-image-behind-a-reverse-proxy-and-auto-configure-server-host-and-protocol
This issue ocuurs with the Talk (Spreed) application. After login in Nextcloud, the Talk application shows the internal IP

This is my Nginx proxy configuration:
server_name cloud.mydomain.ovh;
location / {
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_pass http://192.168.1.33:8086;
proxy_buffering off;
client_max_body_size 0;
proxy_connect_timeout 3600s;
proxy_read_timeout 3600s;
proxy_send_timeout 3600s;
send_timeout 3600s;
}
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/cloud.mydomain.ovh/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/cloud.mydomain.ovh/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
} server { if ($host = cloud.mydomain.ovh) { return 301 https://$host$request_uri; } # managed by Certbot
server_name cloud.mydomain.ovh; listen 80; return 404; # managed by Certbot
} server { if ($host = cloud.mydomain.ovh) { return 301 https://$host$request_uri; } # managed by Certbot
server_name cloud.mydomain.ovh; listen 80; return 404; # managed by Certbot
And the docker-compose file:
version: '2'
volumes: nextcloud: db:
services: db: image: mariadb command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW restart: always volumes: - db:/var/lib/mysql environment: - MYSQL_ROOT_PASSWORD=mypass - MYSQL_PASSWORD=myntpass - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud
app: image: nextcloud ports: - 8086:80 links: - db volumes: - nextcloud:/var/www/html/ restart: always environment: - TRUSTED_PROXIES=192.168.1.33/24 - OVERWRITEHOST=cloud.mydomain.ovh - OVERWRITEPROTOCOL=https - OVERWRITEWEBROOT=cloud.mydomain.ovh
working_dir: /var/www/html/
A greeting
Just a comment, probably not related to your problem.
Why do you have - OVERWRITEWEBROOT=cloud.mydomain.ovh?
https://docs.nextcloud.com/server/22/admin_manual/configuration_server/config_sample_php_parameters.html#proxy-configurations
For example, if www.example.com/nextcloud is the URL pointing to the Nextcloud instance, the webroot is /nextcloud.
But you are using webroot /. The webroot is not the (sub)domain, but the path.