Access to the Web UI or via faas-cli after installation should be successful.
Access to the web UI returns the body: Get : unsupported protocol scheme "" with status code 500. Using faas-cli commands such as login or list return the response: Server returned unexpected status code: 500 - Get : unsupported protocol scheme ""
It looks like something is overriding the router in gateway/server.go. Even browsing to
./deploy-stack
N/a
faas-cli version ):
CLI:
commit: 893972afffa5ea6672faa6e11743ae46322ec58c
version: 0.9.2
Docker version docker version (e.g. Docker 17.0.05 ): 19.03.1
Are you using Docker Swarm or Kubernetes (FaaS-netes)? Docker Swarm
Operating System and version (e.g. Linux, Windows, MacOS): Linux (Raspbian)
Code example or link to GitHub repo or gist to reproduce problem: N/a
Other diagnostic information / logs from troubleshooting guide
You may join Slack for community support.
Hello Dan.
Can you help with the initial steps required in order to reproduce, please? You mention Portainer, which may or may not be a factor, and if it is then we'd need to assess at that point as to whether it's a supported mode of operation. I think this is the third of this kind that we've seen in recent times so it looks like it may not be an isolated case.
Hi - yep,
Setup as follows (let me know if you want more information):
Access was attempted via domain name, IP address, curl from command line to 127.0.0.1 (initial redirect from / to /ui/, and faas-cli. All demonstrated the same issue.
Setup commands were (running as user that's in the docker group:
git clone https://github.com/openfaas/faascd ./faas./deploy_stack.shDeploy stack successfully completed, including stating that it was deploying for ARM.
Then docker service ls showed:
ID NAME MODE REPLICAS IMAGE PORTS
9x2xuemsrv42 func_alertmanager replicated 1/1 functions/alertmanager:0.15.0-armhf
yemdv4ws7vxr func_basic-auth-plugin replicated 1/1 openfaas/basic-auth-plugin:0.15.4-armhf
sernko5jz2j0 func_faas-swarm replicated 1/1 openfaas/faas-swarm:0.7.1-armhf
2eeg7eerydak func_gateway replicated 1/1 openfaas/gateway:0.15.4-armhf *:8080->8080/tcp
pmxolfwhqzq0 func_nats replicated 1/1 nats-streaming:0.11.2
xdgfeg7tr3tf func_prometheus replicated 1/1 functions/prometheus:2.7.0-armhf *:9090->9090/tcp
snejnnrtimse func_queue-worker replicated 1/1 openfaas/queue-worker:0.7.2-armhf
Only other container running is Portainer - started before docker swarm init and exposing ports 8000 and 9000. Portainer version is 1.22.0.
docker container ls output:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
629d52d4ace3 functions/prometheus:2.7.0-armhf "/bin/prometheus --c…" 2 hours ago Up 2 hours 9090/tcp func_prometheus.1.losxfr8aduc7nja228pee22sh
b14c2d2994f5 openfaas/gateway:0.15.4-armhf "./gateway" 2 hours ago Up 2 hours 8080/tcp, 8082/tcp func_gateway.1.3eugz7bu7mxaevcdr8t0hn372
f660ee10f8ef openfaas/queue-worker:0.7.2-armhf "./app" 2 hours ago Up 2 hours 8080/tcp func_queue-worker.1.z3db7s8d45tyigobwcdyu4zt1
f63542d6c7ad functions/alertmanager:0.15.0-armhf "/bin/alertmanager -…" 2 hours ago Up 2 hours 9093/tcp func_alertmanager.1.2m8trr0tz9fxz0pxg4sa9vbe8
26619957fe9b openfaas/basic-auth-plugin:0.15.4-armhf "./handler" 2 hours ago Up 2 hours func_basic-auth-plugin.1.7fb8xpn8b15epqyck6vvf1usz
a0b1f653341d nats-streaming:0.11.2 "/nats-streaming-ser…" 2 hours ago Up 2 hours 4222/tcp, 8222/tcp func_nats.1.dms1fye7ysfqu4ijfp58hjire
6345a7b9c434 openfaas/faas-swarm:0.7.1-armhf "./faas-swarm" 2 hours ago Up 2 hours 8080/tcp func_faas-swarm.1.dcol7eslzsqwpf4s0cyja9gr6
8e76e78e7e79 portainer/portainer "/portainer --ssl --…" 2 days ago Up 2 days 0.0.0.0:8000->8000/tcp, 0.0.0.0:9000->9000/tcp portainer
Thanks. I've been able to reproduce. Portainer is a red herring.
$ docker service logs func_gateway
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:18 HTTP Read Timeout: 5m5s
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:18 HTTP Write Timeout: 5m5s
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:18 Binding to external function provider: http://faas-swarm:8080/
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:18 Async enabled: Using NATS Streaming.
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:18 Opening connection to nats://nats:4222
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:18 Connect: nats://nats:4222
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:28 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:36 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:36 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:37 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:38 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:40 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:42 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:45 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:46 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:46 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:47 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:48 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:49 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:51 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:54 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:56 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:56 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:57 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:58 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:03:59 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:03 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:06 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:06 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:07 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:08 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:10 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:12 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:14 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:16 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:16 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:17 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:18 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:21 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:25 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:26 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:26 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:27 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:29 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:30 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:33 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:36 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:36 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:37 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:38 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:40 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:41 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:44 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:46 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:46 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:47 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:48 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:50 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:54 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:56 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:56 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:57 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:58 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:04:59 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:05:01 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:05:03 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:05:06 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:05:06 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:05:07 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:05:08 ExternalAuthHandler: Get : unsupported protocol scheme ""
func_gateway.1.kww2dp7be3nu@pi3 | 2019/09/09 20:05:09 ExternalAuthHandler: Get : unsupported protocol scheme ""
Seems this is being triggered:
I've got a fix lined up. Shouldn't be too long...
The PR is up in case you want to make the changes locally to test? It'd be good to get some independent testing feedback.
I’ll check either tomorrow morning at the weekend - and will comment if the issue is not resolved 🙂 thanks for the speedy fix!
@spiazzi fyi this might also resolve your issue
@rgee0 super! it works
i also meet this issue, but i use windows10
i also meet this issue, but i use windows10
I had exactly same problem on windows 10. Checked it on multiple PCs (my and coworkers). Our solution (found it by accident) was to use deploy.sh (not deploy.ps1) on Windows. It works this way.
Perhaps let's delete the powershell script @LucasRoesler @rgee0 ? Most of the automation we have works best with bash such as git bash.
I, personally, have no issue with removing it. But, I don't use windows. _If_ the bash script works just as well on windows, then I say, get rid of the powershell script
Having spent a considerable amount of time trying to get an instance running on Windows using the PS script I am convinced that removing the PS script would have an overall positive effect.
It's also worth noting that the PS script currently is current unable to provide basic auth at all - the user can explicitly decline basic auth but since the env var is never set to true the only mode available is without basic auth. Given the period of time since basic auth was enabled by default it is interesting that this has never been raised.
So I recommend removing the ps script and making that clear
This was a trivial fix to the ps1 script, will raise a PR shortly.
Cheers!
Note that bash in WSL1 currently does not work here, WSL2 should allow the use of the bash script, but you're still going to run into people who are not running WSL at all so there is still value to providing a Powershell script.