This is a very comprehensive description. Nothing to add really, just want to share my docker compose automation script to cover the manual steps mentioned above:
#!/bin/bash -x
# Function to stop Atlas deployment gracefully
stop_atlas() {
echo "Stopping Atlas deployment..."
atlas deployments stop
}
# Function to start Atlas deployment
start_atlas() {
echo "Starting Atlas deployment..."
atlas deployments start
}
# Trap SIGTERM and call stop_atlas
trap 'stop_atlas' SIGTERM SIGINT
# Check if the deployment exists and its state
deployment_status=$(atlas deployments list | grep 'LOCAL')
if [[ -z "$deployment_status" ]]; then
echo "No local deployment found. Setting up..."
atlas deployments setup --bindIpAll --username root --password root --type local --force
else
if [[ $deployment_status == *"STOPPED"* ]]; then
start_atlas
fi
fi
while true
do
#sleep 1000 - Doesn't work with sleep. Not sure why.
tail -f /dev/null & wait ${!}
done
1 Like