Files
lgsm-csserver/fix_gcc.sh
2023-11-23 14:28:45 +01:00

41 lines
1.6 KiB
Bash

#!/bin/bash
# Set the container service name as defined in docker-compose.yml
SERVICE_NAME="lgsm-cs"
# Function to check if the container is running
is_container_running() {
[ "$(docker container inspect -f '{{.State.Status}}' "${SERVICE_NAME}" 2>/dev/null)" = "running" ]
}
# Function to execute commands in the container
execute_in_container() {
docker-compose exec -d "${SERVICE_NAME}" sh -c "$1"
}
# Check if the container is already running, if not, start it
if ! is_container_running; then
echo "Container ${SERVICE_NAME} is not running. Starting it..."
docker-compose up -d "${SERVICE_NAME}"
else
echo "Container ${SERVICE_NAME} is already running."
fi
# Wait for container to be fully up and running
echo "Waiting for container ${SERVICE_NAME} to be fully up and running..."
while ! is_container_running; do
sleep 1
done
echo "Container ${SERVICE_NAME} is now up."
# 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/"
# Shutdown the container after the fixes
echo "Shutting down the container ${SERVICE_NAME}..."
docker-compose stop "${SERVICE_NAME}"