Files
2022-12-13 13:17:26 -05:00

43 lines
1.2 KiB
Bash
Executable File

#!/usr/bin/env bash
container_name="gitlab"
tar_file_path="$CODESPACE_VSCODE_FOLDER/gitlab/bootstrap/gitlab.tar.gz"
if [ ! -d /srv/gitlab ]; then
echo -e "Seeding GitLab data \U1F331"
if [ ! -f $tar_file_path ]; then
echo -e "GitLab data file not found at $tar_file_path.\nPlease verify this file has not been removed\nExiting..."
return
fi
sudo tar -xzf $tar_file_path -C /srv
fi
echo -e "Checking for GitLab \U1F575"
if [ "$(docker ps -a | grep $container_name)" ]; then
echo -e "GitLab is running \U1F603"
docker start $container_name
else
echo -e "Starting new GitLab container \U1F4E0"
docker run --detach \
--hostname 172.17.0.2 \
--publish 80:80 \
--name gitlab \
--restart always \
--volume /srv/gitlab/config:/etc/gitlab \
--volume /srv/gitlab/logs:/var/log/gitlab \
--volume /srv/gitlab/data:/var/opt/gitlab \
--shm-size 256m \
gitlab/gitlab-ee:15.5.6-ee.0
# updates file permissions to avoid git and server errors
docker exec -it gitlab update-permissions &> /dev/null
fi
echo -e "Waiting for GitLab to be ready. This might take a while \U23F0"
until $(curl --output /dev/null --silent --head --fail http://localhost); do
printf '.'
sleep 5
done
echo -e '\nGitLab is up and running! \U1F680'