-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathstart-docker-here.sh
More file actions
executable file
·59 lines (50 loc) · 1.22 KB
/
start-docker-here.sh
File metadata and controls
executable file
·59 lines (50 loc) · 1.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#!/bin/bash
PROJECTNAME=ansible-gitlab
CURRENTDIR=$(pwd)
# ansible docker build container
BUILD_CONTAINER=f3rdy/ansible-docker:centos
# clean up prior to start
function cleanup() {
docker ps | grep " ${1}$" > /dev/null && \
{
if [ -z ${2} ]; then
>&2 echo "Container ${1} already running. Check docker ps." ;
exit 1 ;
else
>&2 echo "Container ${1} already running. Killing and removing:" ;
docker kill ${1} && docker rm ${1} > /dev/null || \
{
>&2 echo "Failed to remove the container ${1}. Exiting." ;
exit 1 ;
}
fi
}
docker ps -a | grep " ${1}$" && \
{
>&2 echo "Found old container ${1}. Removing." ;
docker rm ${1} || \
{
>&2 echo "Removing of old container failed." ;
exit 1 ;
}
>&2 echo "Cleanup successful." ;
}
}
cleanup ${PROJECTNAME}
echo
echo ">>> start docker container $PROJECTNAME..."
echo
docker pull ${BUILD_CONTAINER}
docker run --name $PROJECTNAME -it --rm \
-v $CURRENTDIR:/root/$PROJECTNAME -w /root/$PROJECTNAME \
${BUILD_CONTAINER} /bin/bash
echo
echo "--- stopped: docker container $PROJECTNAME ---"
echo
echo
echo ">>> Cleanup..."
echo
cleanup ${PROJECTNAME}
echo
echo "--- Cleanup done. --"
echo