Hot Reload on Docker Desktop Windows

Hello everyone,

I just got a new job at a company that everyone uses Linux. They already have a VueJS application and I´ve just cloned the repository.
The machine that I work, has Window 10. I installed suscesfully Docker Desktop.

In their Linux machines they use this command and works. Including hot reload on save.

“docker-compose run --rm -p 4000:8080 node npm run serve”

I ran it on my machine and works too! The only problem is HOT RELOAD does not work.
I have to stop docker-compose everytime I made a change in code.

I´ve been searching all over internet but I can´t find a solution, because I cannot change ANY configuration file.

Can someone help me with this issue?

Thank you very much!!

edit.: Sorry, I was so tired yesterday that I just wrote the post without reading the rules (and sorry for the bad English, it´s not my native language)

So here it goes,
The Linux distro they use is the Ubuntu, I can´t get the version now because no one is working bc it´s weekend. But I can garantee that hot reload works on their systems.

I found that the system that I use, is a Windows 10 upgraded to version 2004 (I can´t remember the build version, but was enough to make it work, based on information from Docker itself).
Everything works but not the hot reload feature.

When I said before that I can´t change any of the configuration files of the project, it´s bc my boss is afraid that it might corrupt something and stop working on their Linux systems.

The front-end and back-end are two different projects, so, there´s nothing to do with the back-end repository/project. In fact, I´m a full-stack developer but I was hired ONLY for VueJS front-end.

Thanks again guys

If you mount a Windows folder into the container and develop in this folder it will not work. Windows has a different file system and the information needed to recognize file changes is missing.

Got it… thanks…
is there any workaround for this?

Yeap, and it’s not a workaround. Just found out that with Desktop 3.2.1 in combination with WSL 2 and Win 10 20161 (from developer channel) it works.
I didn’t look into this for some time, so I can’t tell exactly when it started working.

1 Like

Hey thanks tekki, I´ll try this at my home computer.
Due to the deadlines of the company, I had to install Ubuntu and give up Windows for now.

As soon as I get some time this week, I´ll install it at home and I post here the results.
Thanks again!

I’ve tested the following with one of my own images, this time in PowerShell:

PS> docker container run --rm -v "$(pwd):/usr/src/app" tekki/mojolicious mojo generate app MyApp
PS> cd .\my_app
PS> code .
PS> docker container run --rm -v "$(pwd):/usr/src/app" -p 3000:3000 tekki/mojolicious morbo -v script/my_app
Web application available at http://127.0.0.1:3000

Edit the message in lib/MyApp/Controller/Example.pm with VS Code, save the file:

File "lib/MyApp/Controller/Example.pm" changed, restarting.

Wow nice, thanks!
I didn´t have the time to test it yet, things are pretty serious at my day job.

But thanks again, I´ll keep this post saved!

Hi! Will this still work? :eyes: I’m about to test this, I don’t know if the Win 10 20161 development channel could damage my machine. My problem is with nodemon :worried: “nodemon --legacy-watch server.js” no longer works.

Please notice that my post is from July 2020. I’ve testet my example now (= February 2021) on Win 20 Version 20H2 and Docker Desktop 3.1.0, and it still works.

The developer channel contains experimental code and you get updates every few day. So yes, it can damage something (for the rest ask Mr. Murphy).

Thank you very much, I followed those steps and everything worked perfectly :ok_hand: