Are you planning to deploy everything on one machine? There isn’t going to be a magic number for this so there will be some experimentation needed but I would probably start with at least 4GB of memory and test from there.
For storage you would typically want to make sure you have an SSD and the space will depend on usage but a lot them can scale as needed as well.
That is where testing comes in, there will likely be more to it than just server resources like tweaking OS tcp/ip settings, the database under it and a bunch of other things.
I would really start with 4GB, do the testing and see where the fault comes from (resources, the container, the database under it, reverse proxy if any) then plan from there.
There is also the deployment method, if you are running reach component on different machines to allow for easier scaling then you would need to think about connectivity links and how they interact. If you have everything on one machine you will also need to think about the other services use the resources.