diff --git a/fix_gcc.sh b/fix_gcc.sh index ae9d803..3f47efe 100644 --- a/fix_gcc.sh +++ b/fix_gcc.sh @@ -3,14 +3,36 @@ # Set the container name as a variable CONTAINER_NAME="lgsm-cs" +# Function to check if the container is running +is_container_running() { + [[ "$(docker inspect -f '{{.State.Running}}' "${CONTAINER_NAME}" 2>/dev/null)" == "true" ]] +} + # Function to execute commands in the container execute_in_container() { docker exec -d "${CONTAINER_NAME}" sh -c "$1" } +# Ensure the container is running +if ! is_container_running; then + echo "Container ${CONTAINER_NAME} is not running. Starting it..." + docker start "${CONTAINER_NAME}" + + # Wait for the container to be up + echo "Waiting for the container to be fully up..." + until is_container_running; do + sleep 1 + done + echo "Container ${CONTAINER_NAME} is now running." +fi + # Moving and copying libstdc++.so.6 execute_in_container "mv /data/serverfiles/libstdc++.so.6 /data/serverfiles/libstdc++.so.6.bak && cp /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /data/serverfiles/" execute_in_container "mv /data/.local/share/Steam/steamcmd/linux32/libstdc++.so.6 /data/.local/share/Steam/steamcmd/linux32/libstdc++.so.6.bak && cp /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /data/.local/share/Steam/steamcmd/linux32/" # Moving and copying libgcc_s.so.1 -execute_in_container "mv /data/serverfiles/libgcc_s.so.1 /data/serverfiles/libgcc_s.so.1.bak && cp /usr/lib/x86_64-linux-gnu/libgcc_s.so.1 /data/serverfiles/" \ No newline at end of file +execute_in_container "mv /data/serverfiles/libgcc_s.so.1 /data/serverfiles/libgcc_s.so.1.bak && cp /usr/lib/x86_64-linux-gnu/libgcc_s.so.1 /data/serverfiles/" + +# Shutdown the container after the fixes +echo "Shutting down the container ${CONTAINER_NAME}..." +docker stop "${CONTAINER_NAME}"