Can't access to server starting on inside docker, but work with

I have container
docker run -d -p 3000:3000 -p 3001:3001 myapp

Inside container is running http server on

Why can’t I get access from the outside to my http server inside docker.
But if I start http server on it works good for me.

I’m confused why it happen.

If you run a web server without Docker and bind it to would you expect to have access through the “real” IP address of the host? If you bind your webserver to inside a Docker container, you can only access it from inside.