Deployment on a new system

Hi, I'm looking for suggestions on how to deploy a working project to a new system.
I guess I'm looking for the fastest way to create an installation.

But I would like that installation to include some additional things, besides Node-Red.

For example let's say I have a working project running on a raspberry pi including Node-Red with a few flows, a dashboard or uibuilder, nginx and a bunch of other stuff.

I started looking at Docker, which seems like a good solution, but in this case how would I approach creating a container?

Do I create it from scratch or base it on working containers?

And how do I make sure it runs on different architectures ( both newer and older raspberry pi models)?

Docker containers (by design) will almost certainly work regardless of platform/os/hardware.

As for building them (docker images), this is likely NOT the place to ask (the docker forums and stack overflow are more likely a better source of info on this subject)

For deploying, regardless of OS/environment, it's always the same. Either deploy via node-red or drop the flow.json into the working directly. IMO, you wouldn't normally deploy a flow with the docker image anyway (black box situation perhaps). Ps, there is another way to deploy (the API)

@Steve-Mcl, sorry for the late reply.

I've been playing around with Docker and now I know that docker-compose.yml is the way to go to deploy several services.

I'm also looking at balena.io which looks really promising, but limited to 10 devices for free.

Is there an alternative to balena.io to manage remote deployment?

Do you mean the Admin API to post new flows?