Echo Speaks Local Network Logon/Cookie Authorization Server to replace Heroku

Thank you! I was able to figure out enough to try running docker-compose build from the command line. It did a bunch of stuff, but nothing shows up in the containers section of the docker desktop.

Honestly just installing NodeJS on windows and following the manual install instruction without docker would probably be much easier, but now I am going to try it anyway with docker to remind me of why I hate it.

I'm all about doing it easier, but I have no idea where to find the manual installation instructions. Can you point me in that direction?

Its at the bottom of his article. The instructions are for linux but there is an official NodeJS download for windows. Once that is installed it should give you an icon for a console where you can run the rest of the commands, however not exactly the same. I used to have it running like that and it worked until I moved it over a linux VM.

I would have to play along and jot down modified instructions for windows.

Gotcha, sounds more complicated than I thought. I'll give that a try if I can't figure out the Docker.

I found the docker image in the Docker Desktop app and ran it, but I can't access the webpage at 72.17.0.2:8091 for some reason. Any suggestions?

Possibly the error on the top line, or possibly a routing issue since it's a different network? I can't ping 172.17.0.2 from my windows cmd either.

Ok, I made some progress. Running docker-compose up -d instead of docker-compose build seem to work better. Also, using localhost:8091 works from the windows machine running docker, or the windows ip 192.168.x.xxx/8091 from another machine on the network works to reach the amazon auth page. However, it doesn't work for the server auth because it wants to use the docker ip of 172.17.0.2:8091 which doesn't work from any machine on my network. Do I have a routing issue?

I got the the same spot as you, although I have not tried to actually log in. You would need to run both of these commands to first build it (once) then the second command to start it

docker-compose build
docker-compose up -d

EDIT: Actually although that seems to work it looks like the proper way to do it per the start.sh would be to COPY the contents from env.echo-speaks-server.dist to env.echo-speaks-server and then replace IPADDRESS_TO_CHANGE with the IP of your host machine.

Still trying to work this out exactly, please hold... (see new post below)

No luck. I stopped and deleted the image and container. Made the change to the file. Ran the two commands, but it still sets the ip address to the 172.18.0.2 when I login.

If everything is done besides setting up the env.echo-speaks-server file, you just need stop the container, edit the file and then re-run the docker-compose up -d

Installing on Docker for Windows:

Install Docker for Windows: Install on Windows | Docker Documentation
Download echo-speaks docker image: echo-speaks-server-docker-enablement.zip
Extract zip file to to a directory of your choice

In folder echo-speaks-server-docker-enablement/docker
COPY the contents from env.echo-speaks-server.dist to env.echo-speaks-server and then replace IPADDRESS_TO_CHANGE with the IP of your Docker host machine (ex 192.168.1.20).

Open up terminal or cmd, cd to that folder and into the docker subfolder (example of folder)
cd C:\Docker\echo-speaks-server-docker-enablement\docker

Run, and wait for it to finish
docker-compose build

Run
docker-compose up -d

For container to run at reboot, go into Docker settings and enable "Start Docker Desktop when you log in", and the container should run automatically with docker.

Manual Install on Windows without Docker

So... I started doing this and found out it is slightly more complicated than using Docker. You have to install NodeJS and Git for Windows. Then got all the way up to setting it up in pm2 and realized it does not support auto launching at windows boot. There are other tools to get that going but to just to get this going quick Docker works good enough.

1 Like

BOOM! Copying that whole file must have been the missing piece. It's working now, although it still says I need to login even though when I open the page I'm already logged in?

Crap. Nevermind. Now it says I'm logged out, and when I try to login it redirects to this link instead of the amazon login.
http://localhost:8091/proxy/www.amazon.com/ap/signin?showRmrMe=1&openid.return_to=https%3A%2F%2Falexa.amazon.com%2Fproxy&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.assoc_handle=amzn_dp_project_dee&openid.mode=checkid_setup&openid.claimed_id=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&

I have to run out for a bit, but later I will try actually logging in and switching my ES on my hub over to this instance to see if I can get it to work. Or let us know if you get it figured out.

Thanks so much for all the help. I really appreciate it. I actually have to get going as well, but I'll try again tonight or tomorrow if I possible. Happy Thanksgiving!

Just wanted to say thanks!
Didn't know you could run Linux on a windows 10 pro 64 bit machine. Learn something new everyday.
Been running fine for about a week in Windows 10 with a minimized cmd window.
Haven't tested the batch file I made and put in the windows startup folder yet. Been many years since I made a batch file.
Initially I tried using virtual box and had it running but could not connect. But then I learned I didn't need it.
It was pretty easy to setup just using this thread.
thanks again.

@NoWon did you use Docker on Windows or just straight up through NodeJS installed on windows directly? Or some other method? I may add instructions for doing it on NodeJS in windows as well, IMO it is less complicated than docker and less overhead as well since this app does not NEED linux to run.

Had time for a quick reboot to see if maybe something was cached, and it worked perfectly after the reboot, so I think I'm good to go! Thanks again for all the help!

1 Like

I believe this only works with Windows 10 pro:

I installed Debian from the youtube video @ralph.vasquez posted Echo Speaks / Heroku end anxiety support group. See one solution below. 🙂 - #82 by ralph.vasquez
The video installs Ubuntu but I installed Debian.

Then I install Echo Speaks as per @vmsman instructions Echo Speaks / Heroku end anxiety support group. See one solution below. 🙂 - #58 by vmsman

I also had to use @Scottdogster tip Echo Speaks / Heroku end anxiety support group. See one solution below. 🙂 - #61 by Scottdogster

Then finished off setting up through the Hubitat Echo Speaks app

Just realized I should have posted that thanks on the other thread :face_with_peeking_eye:

Do you know of any guides/instructions - I plan on setting up a DS220+ and would love to get the cookie auth local.

DS220+??? max of 6GB of memory....sadly under-powered with no disk lists for $315. Gee for $263 right now you can get a Minisforum UM350 with 16GB of memory and a 500GB NVMe. The processor is a Ryzen 5 3550H and it can run 20 LXD containers with nested docker without skipping a beat. https://www.amazon.com/UM250-Windows-Computer-Output-Graphics/dp/B08QZC6H8Q. So the intent is wipe the disk clean and install Ubuntu Server with LXD. Cheap Self Hosting Server - YouTube

1 Like