Skip to content

Commit 4b1282d

Browse files
Improve dev/openmage/install.sh script for newer versions of Docker - no longer requires separate compose.
1 parent d448eeb commit 4b1282d

File tree

1 file changed

+20
-9
lines changed

1 file changed

+20
-9
lines changed

dev/openmage/install.sh

Lines changed: 20 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,16 @@
22
set -e
33
dir=$(dirname "${BASH_SOURCE[0]}")
44
cd $dir
5+
6+
# Detect "docker compose" or "docker-compose"
7+
dc="docker compose"
8+
if ! docker compose --help >/dev/null; then
9+
if ! command -v docker-compose 2>&1 >/dev/null; then
10+
echo "Please first install docker-compose."
11+
else
12+
dc="docker-compose"
13+
fi
14+
fi
515
test -f .env && source .env
616

717
HOST_PORT=":${HOST_PORT:-80}"
@@ -15,28 +25,29 @@ if test -f ../../app/etc/local.xml; then
1525
echo "Already installed!";
1626
if [[ "$1" = "--reset" ]]; then
1727
echo "Wiping previous installation..."
18-
cd $dir && docker-compose down --volumes && rm ../../app/etc/local.xml
28+
cd $dir && $dc down --volumes && rm ../../app/etc/local.xml
1929
else
2030
echo "Visit ${BASE_URL}admin and login with '$ADMIN_USERNAME' : '$ADMIN_PASSWORD'"
21-
echo "MySQL server IP: $(docker exec openmage_apache_1 getent hosts mysql | awk '{print $1}')"
31+
echo "MySQL server IP: $($dc exec apache getent hosts mysql | awk '{print $1}')"
2232
echo "To start a clean installation run: $0 --reset"
2333
exit 1
2434
fi
2535
fi
2636

27-
chmod 777 ../../app/etc ../../media ../../var
28-
29-
docker-compose up -d mysql apache
30-
sleep 4
37+
echo "Preparing filesystem..."
38+
chmod 777 ../../app/etc ../../media
39+
$dc run --rm --no-deps cli mkdir -p var/cache var/log var/locks var/session
3140

3241
echo "Starting services..."
42+
$dc up -d mysql apache
43+
sleep 4
3344
for i in $(seq 1 20); do
3445
sleep 1
35-
docker exec openmage_mysql_1 mysql -e 'show databases;' 2>/dev/null | grep -qF 'openmage' && break
46+
$dc exec mysql mysql -e 'show databases;' 2>/dev/null | grep -qF 'openmage' && break
3647
done
3748

3849
echo "Installing OpenMage LTS..."
39-
docker-compose run --rm cli php install.php \
50+
$dc run --rm cli php install.php \
4051
--license_agreement_accepted yes \
4152
--locale en_US \
4253
--timezone America/New_York \
@@ -60,4 +71,4 @@ docker-compose run --rm cli php install.php \
6071
echo ""
6172
echo "Setup is complete!"
6273
echo "Visit ${BASE_URL}admin and login with '$ADMIN_USERNAME' : '$ADMIN_PASSWORD'"
63-
echo "MySQL server IP: $(docker exec openmage_apache_1 getent hosts mysql | awk '{print $1}')"
74+
echo "MySQL server IP: $($dc exec apache getent hosts mysql | awk '{print $1}')"

0 commit comments

Comments
 (0)