CDN pages get indexed

I have read a lot of posts around this and I am not sure what is the correct approach about this.
The problem is that for one domain and it’s normal indexed pages there are also many related cdn pages that have been indexed.

I understand that the canonical tag should be the solution, but then we have the problem of the different languages.
So, let’s set an example.
Our original domain is: Example Domain and the cdn domain is
Under this cdn domain there are subpages, like: and each one has different versions for every locale:
So logically the canonical for all these above should be the:

But what about the original domain Example Domain.
How should all the previous be connected to the original one?

Maybe a robots file would be the solution after all?
With a parameter of : Disallow: /