Should be started with "--link mymgm01:mgm01" to allow it to connect to the management node.

You should create 2 containers of this type to create a nodegroup of 2 nodes.

The API node (mysqld) image:

has a my.cnf

Runs mysqld_safe

Should be started with "--link mymgm01:mgm01" to allow it to connect to the management node.

The ndb-connectstring is given as parameter to mysqld_safe as it comes from an environment variable. It's not possible to use environment variables from within my.cnf. Docker is supposed to also update /etc/hosts but that didn't work for me.

You should expose port 3306 for your application

The management client (ndb_mgm) image:

Runs ndb_mgm as entrypoint

Should be started with "--link mymgm01:mgm01" to allow it to connect to the management node.

Running the ndb_mgm in a container removes the need to publish port 1186 on the management server. More info here.

You can override the entrypoint to run other NDB utilities like ndb_desc or ndb_select_all