I have a system on Caché, which has about 100TB of data in it, with a couple of thousands of concurrent users. And it's ECM system, which in fact has no developers support for some time, but still able to be modified, as it's kind of low-code system, where all the forms can be configured with UI, all the processes and document's conventions as well, and it has integrations with many other systems. So, probably it can be proof that InterSystems is good enough for such cases.

I have not played with the Foreground feature before, but, I tried to do it right now, and it looks like, you can just publish port 63300 when you run the container, so, your host's telnet client will be able to connect to the Foreground port. 

If you wish, you can change the port number, by setting it directly to the global

Set tPortRangeStart=$G(^Ens.Config("FGTelnetRange","start"),63300)
Set tPortRangeEnd=$G(^Ens.Config("FGTelnetRange","end"),63499)
  set hr=##class(%Net.HttpRequest).%New()
  set hr.Server = "server.com"
  set hr.Location = "method"
  do hr.InsertParam("name","value")
  do hr.InsertParam("name2","value2")
  do hr.Post("",1)

And the result

USER>do ^test
POST /method?name=value&name2=value2 HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; InterSystems IRIS;)
Host: server.com
Accept-Encoding: gzip
Content-Length: 0

Yeah, of course, you can change any class, if it's not a system and not deployed class stored in a read-only database

looks like you already know how to generate classes, so, to edit some method, you have to open a particular method by its id, which can be constructed from the class name and the method name.

USER>set method = ##class(%Dictionary.MethodDefinition).%OpenId("%Library.File||Exists") 

USER>write method.Implementation.Size
56

Well, Axure, is just a prototyping tool. And it does not have anything that would help to create something production-ready, with any kind of backend at all. It would be probably ok for designers to create some prototype of the application, or probably make something working, but only if no database is needed at all, such as a landing page.

So, I don't think that this tool could be considered in this role

The most important thing you have to understand first, that when you use containers-way for running your application (and Docker here is just one of the ways, to run containers). You have to remember, that container should be as simple as possible, and do just only one thing. So, it means, that your NodeJS application, should run in a separate container, even if it connects to IRIS, it still has to be run separately and connected to IRIS over TCP. 

So, you can use any official Debian-based NodeJS image, put InterSystems NodeJS driver in it, as well as your application, and run it. And your IRIS will run in a separate container, no matter which version.