-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
IPv6 not supported #149
Comments
Resolved in v2.2.2 |
I still receive the mentioned Internal Error when trying to access the web ui using IPv6. However the IPv6 configuration is valid and works for other docker containers. Accessing the UI via IPv4 works without any issues. The ajax request to /api/tokens seems to be the issue. It returns an error code 400. |
That's strange - if you can inspect the files inside your running docker container, specifcally Are you accessing the admin interface directly on port 81 or do you have it behind a Proxy Host? |
This is the content of the file you mentioned:
I am directly accesing the admin UI without any proxy This is the response from the ajax request to /api/tokens: |
So the docker logs for that container should have some more info about the internal error? |
Fix the login, it was a cors issue which wasn't expecting a ipv6 address in the referring url. |
Support ipv6 address as a origin header, hopefully fixes #149
Pull the |
Thank you very much. The issue is now fixed. |
I have a very similar Problem. but pulling
the webinterface doesn't start, the app is marked as 'unhealthy' and it produces this Error in the log files:
The weird thing is, that this used to work without problems two days ago, but after restarting the server the error emerged. |
I did some a little bit more research. I don't really know what I am talking about but here is what I found.
I Think this file is copied from the file As I said before I don't really know, how that %2 came into the resolv.conf file in the first place, but I will try to figure that out. This Problem might be fixed by changing the conversion from the resolv.conf to resolvers.conf. in the file |
Describe the bug
To Reproduce
Steps to reproduce the behavior:
$ docker network create --subnet 2a02::/80 --ipv6 network_name
Replace
2a02::
with the IPv6 block given by your ISP, or, in case you don't have IPv6 support use a block reserved for NAT, (for example:fe80:10::/80
). I will use2a02:10::/80
in this example.$ docker pull mariadb
$ docker create --name=mariadb -e MYSQL_ROOT_PASSWORD=your_password -v ~/docker_data/mariadb:/var/lib/mysql --network network_name --ip6 2a02:10::10 mariadb
$ docker start mariadb
$ docker run -it --network network_name --rm mariadb mysql -hmariadb -uroot -p
Enter your password
MariaDB [(none)]> CREATE DATABASE nginx;
$ docker pull jc21/nginx-proxy-manager:latest
$ docker create --name=reverse_proxy --restart unless-stopped -v ~/docker_data/proxy/config.json:/app/config/production.json -v ~/docker_data/proxy/data:/data -v ~/docker_data/proxy/letsencrypt:/etc/letsencrypt --network network_name --ip6 2a02:10::11 jc21/nginx-proxy-manager
$ docker start reverse_proxy
Everything should work until this point.
Access the web ui with Google Chrome using the IPv6 address of the docker.
http://[2a02:10::11]:81
Try to login with admin@example.com and changeme as credentials.
The web responds with an Internal Error. And if you check the logs of the docker you should see the following message:
[Express ] › ⚠ warning data should match pattern "^[a-z\-]+:\/\/(?:[\w\-\.]+(:[0-9]+)?/?)?$"
Now restart the docker:
$ docker stop reverse_proxy
$ docker start reverse_proxy
And now the following error apears:
[emerg] 320#320: invalid port in resolver "fe80::something%2" in /etc/nginx/conf.d/include/resolvers.conf:1 nginx: [emerg] invalid port in resolver "fe80::something%2" in /etc/nginx/conf.d/include/resolvers.conf:1
Beeing
fe80::something
the local IPv6 of the docker created before.Operating System
Important comments about IPv6
In order to get access from outside the host you probably need to run the following commands:
(Replace eth0 with your network adapter name (see
ifconfig
))(Replace 2a02:10::11 with the address used for the container)
$ sysctl net.ipv6.conf.eth0.accept_ra=2
$ sysctl net.ipv6.conf.eth0.proxy_ndp=1
$ ip -6 neigh add proxy 2a02:10::11 dev eth0
If you are using a local IPv6 block (fe80::/80) you don't need this commands.
I know that IPv6 is not an easy thing to work with but I hope you can fix this bug.
The text was updated successfully, but these errors were encountered: