Updating MemSQL cluster-in-a-box Docker image throws an error


I’ve updated my cluster-in-a-box Docker image, and now I’m not able to run the container, do you have any ideas on this? Thanks!!!


Because you’re bind-mounting a local directory at /home (-v $LOCAL_DIR:/home), the setup script that runs when the container starts is colliding with the existing memsql-toolbox state file from the previous container. The setup script expects /home/memsql/ to be completely empty when it starts up.

Node data and metadata is stored in /var/lib/memsql in the container, so you can make this persistent by using volumes or bind-mounts. For example, if you start a cluster-in-a-box with -v /path/to/memsql/metadata:/var/lib/memsql, you can stop the container, update the image, and start a new container with the same mount to preserve the data.