How can I access directories inside a docker container from outside (not the reverse!)?
I think you may be using the wrong tool for the job.  Docker is not designed to be a version control system, it is designed for containerization.  Furthermore, your question makes it sound like the development and support team members are constantly changing the files that are essential to the makeup of the image.  This makes using a volume pointless as the Docker image will always be changing.

If I'm understanding what you are trying to achieve (people should be able to modify the src and eggs folders with whatever editor they want), then you may want to explore adopting a CI/CD workflow:


Committed changes to the src and egg folders trigger a new image to be built.
The new image is pushed to a Docker repository.
Team members can then pull the updated image.


As for your two specific questions:


  Do we usually put build stuff that are actually part of the container into volumes? The container has no meaning without these volumes.


Not usually.  Generally if I have to make changes to a container I would remote into it and then commit the changes.


  Can end users take a copy of these volumes and just modify it according to their convenience without the master copy of these volumes? (Like Image vs Container concept?)


This is sounding like a version control system which Docker is not designed for.  You can have a shared volume that users have access to, but the use case is for persisting data outside of containers (e.g. SQL database data).