gis-ops / valhalla-app

This is the demo web app running on https://valhalla.openstreetmap.de
https://valhalla.openstreetmap.de
MIT License
163 stars 90 forks source link

feat: added docker-compose #101

Closed Ananya2001-an closed 1 year ago

Ananya2001-an commented 1 year ago

🛠️ Fixes Issue

closes #100

👨‍💻 Changes proposed

Added docker-compose.yml file to run app locally without having to install any dependencies. Also updated readme regarding developing locally with docker compose. Updated Dockerfile and .dockerignore accordingly.

📄 Note to reviewers

To test changes run docker-compose up in terminal.

Ananya2001-an commented 1 year ago

Thanks for the reviews @nilsnolde I will work on the requested changes soon.

Ananya2001-an commented 1 year ago

Hm, I don't know. TBH, I'm not a big fan of docker dev stuff in my repos. As any file/byte it's extra overhead and maintenance burden for (IMHO) very little gain.

If you want it, it's fine. Are you actually developing like that or why did you raise this?

Actually many people are incorporating devops practices and atleast have docker compose for ease of development. I felt it can be a good addition. Since I am a newbie I am still not familiar with all the important concepts but I thought this much can be done for the project in terms of helping contributors.

nilsnolde commented 1 year ago

It's a bit painful though to set up an IDE with debug & breakpoint support via docker containers right? If node/npm and the debugger don't live on your machine but the IDE does, it'll have to remotely hook in. I did that before with WebStorm for a bigger WordPress project (where a Docker dev flow really made sense) and can't say it was a pleasure.

Overall, I'd rather not have it in the repo tbh. npm/node comes on many distros already so there's hardly a benefit there for devs (and if they're on Windows, there's likely other problems waiting like line endings), and installing npm dependencies is done locally. IMO it's much easier to remove a node_modules folder than run an entire operating system just to avoid that. Also, we have so many repositories we maintain, I started to be very strict about contributions. Don't take this the wrong way: but most people don't stick around to help maintaining features they added. Then it's all on me and there's already users depending on the stuff I didn't want in the first place, but I can't just remove those without breaking others.

Sorry for the turn-down, as you're so far by far the best communicator and contributor, so don't be discouraged by this please:)

Ananya2001-an commented 1 year ago

Sorry for the turn-down, as you're so far by far the best communicator and contributor, so don't be discouraged by this please:)

I totally understand @nilsnolde you don't have to apologize. I too have still more to learn and improve upon and I will take this as a lesson. I think you are right since this project doesn't have many dependencies like other projects which also have database connections, that's why configuring docker will definitely be a hustle. I will close this PR now. 🙂 Again thanks for the detailed explanation. 👍