Closed izaac closed 3 years ago
This is the version that's embedded into the container, which is rarely updated for master and therefore quite old.
You shouldn't be getting that though, because master-head is a non-release, the ui-preferred-offline=dynamic
setting should cause it to look at if it's a release, see that it's not, and then serve up the index from the CDN, which would be the current dashboard master.
So something's wrong with the server logic, in a way that's not 100% reproducible ( I ran the same build on my computer and got new remotely hosted UI as expected). Maybe if you try to hit the page before all the settings have been created or some race condition like that.
@izaac - Can you test this again in a fresh browser (with cleared cache/cookies)? And, what may actually work as well is if you do it with an incognito window and start fresh. See if you still get the error showing the incorrect version in the UI.
@vincent99 is correct that this will be difficult to address if we can't consistently reproduce it.
If you are able to reproduce it, please put some steps on what you did to make it happen consistently and we will take a look.
@Jono-SUSE-Rancher @vincent99 I am able to always reproduce it on a Linode CentOS Stream 8
machine.
This machine IP address is accessible from a Route53 A record. I am using this script to deploy master
./re-deploy-master
(this defaults to master-head
)
cat ./re-deploy-rancher.sh
#!/bin/bash
#set -x
#set -e
defaultvalue=master
name=${1:-$defaultvalue}
docker stop "$(docker ps -a -q)"
docker rm "$(docker ps -a -q)"
docker system prune -a -f
docker system prune --volumes -f
if [[ $name == *"master"* ]]
then
docker run -d -p 80:80 -p 443:443 --privileged --name="$name" --restart=unless-stopped rancher/rancher:"$name"-head --trace
else
docker run -d -p 80:80 -p 443:443 --privileged --name="$name" --restart=unless-stopped rancher/rancher:"$name" --trace
fi
Docker logs: test.log
Docker info:
Client:
Debug Mode: false
Server:
Containers: 1
Running: 1
Paused: 0
Stopped: 0
Images: 1
Server Version: 19.03.15
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 05f951a3781f4f2c1911b05e61c160e9c30eaa8e
runc version: 12644e614e25b05da6fd08a38ffa0cfe1903fdec
init version: fec3683
Security Options:
seccomp
Profile: default
Kernel Version: 4.18.0-277.el8.x86_64
Operating System: CentOS Stream 8
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 7.586GiB
Name: li1242-231.members.linode.com
ID: 2JEC:NY76:GELG:ID54:LO4I:6TS2:OT6X:NWTC:Q54B:P6CU:IZ4M:B2OU
Docker Root Dir: /var/lib/docker
Debug Mode: false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
Thanks for the additional info Izaac. The UI in the Docker install is not dynamically updating to the master version of the UI. We should test this when we officially tag a UI release and embed in it in the Rancher Build.
@Jono-SUSE-Rancher That doesn't really work...
The master build is supposed to fetch https://releases.rancher.com/dashboard/latest/index.html (because that's what ui-dashboard-index
and ui-preferred-offline
are set to) and return that (which then loads other assets off the CDN). It should not be serving up the one baked into the container at all, which is what @izaac's install ends up with (and I saw hitting his install myself, but also can't reproduce locally). The fact that the copy you get happens to be outdated is an unrelated concern.
RCs and real releases are supposed to do the opposite, always load from the copy in the container.
@izaac It looks to be because outbound internet access isn't working on your machine; there are several things that fail to load in the log (and that's the part that other people wouldn't be able to just reproduce). When it can't download it fails back to the local copy (as the message says).
2021/05/20 19:54:37 [WARNING] failed to refresh data from upstream https://releases.rancher.com/kontainer-driver-metadata/dev-v2.6/data.json: driverMetadata err Get "https://releases.rancher.com/kontainer-driver-metadata/dev-v2.6/data.json": context deadline exceeded (Client.Timeout exceeded while awaiting headers), Fallback to refresh from local file path /var/lib/rancher-data/driver-metadata/data.json
2021/05/20 19:55:39 [ERROR] Failed to download https://releases.rancher.com/dashboard/latest/index.html, falling back to packaged UI
@vincent99 @Jono-SUSE-Rancher ok i created a new VM and made sure the VM had proper outgoing connection.
That made it work for me. I think the previous VM had a very strict firewall configuration.
Closing.
Rancher version 2.6 master-head (05/21/2021)
4f9850d
What kind of request is this: bug
Steps to reproduce:
docker run -d -p 80:80 -p 443:443 --privileged --name=master --restart=unless-stopped rancher/rancher:master-head --trace
Result:
UI is an older Dashboard
Environment information
master-head (05/13/2021)
f223834