I'm currently moving my backend from polyrepo or multirepo to a monorepo. I've successfully moved the shared packages into the Lerna monorepo, now it's time for microservices. My project structure is simple as that:
root
services
service_written_in_node
Dockerfile
package.json
service_Written_in_something_else
Dockerfile
packages
shared_package_1
package.json
shared_package_2
package.json
So basically everything in the directory packages should be published to the npm, and everything in services dir should be published to the Docker registry.