Skip to content

Commit df8745a

Browse files
simkamdreab8
authored andcommitted
[HHH-18507] allow overwriting the default db image with environment variable in docker_db.sh
https://hibernate.atlassian.net/browse/HHH-18507
1 parent dc3455b commit df8745a

File tree

1 file changed

+26
-26
lines changed

1 file changed

+26
-26
lines changed

docker_db.sh

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ mysql() {
2121

2222
mysql_5_7() {
2323
$CONTAINER_CLI rm -f mysql || true
24-
$CONTAINER_CLI run --name mysql -e MYSQL_USER=hibernate_orm_test -e MYSQL_PASSWORD=hibernate_orm_test -e MYSQL_DATABASE=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -p3306:3306 -d docker.io/mysql:5.7.43 --character-set-server=utf8mb4 --collation-server=utf8mb4_bin --skip-character-set-client-handshake --log-bin-trust-function-creators=1
24+
$CONTAINER_CLI run --name mysql -e MYSQL_USER=hibernate_orm_test -e MYSQL_PASSWORD=hibernate_orm_test -e MYSQL_DATABASE=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -p3306:3306 -d ${DB_IMAGE_MYSQL_5_7:-docker.io/mysql:5.7.43} --character-set-server=utf8mb4 --collation-server=utf8mb4_bin --skip-character-set-client-handshake --log-bin-trust-function-creators=1
2525
# Give the container some time to start
2626
OUTPUT=
2727
n=0
@@ -45,7 +45,7 @@ mysql_5_7() {
4545

4646
mysql_8_0() {
4747
$CONTAINER_CLI rm -f mysql || true
48-
$CONTAINER_CLI run --name mysql -e MYSQL_USER=hibernate_orm_test -e MYSQL_PASSWORD=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -e MYSQL_DATABASE=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -p3306:3306 -d docker.io/mysql:8.0.31 --character-set-server=utf8mb4 --collation-server=utf8mb4_0900_as_cs --skip-character-set-client-handshake --log-bin-trust-function-creators=1
48+
$CONTAINER_CLI run --name mysql -e MYSQL_USER=hibernate_orm_test -e MYSQL_PASSWORD=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -e MYSQL_DATABASE=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -p3306:3306 -d ${DB_IMAGE_MYSQL_8_0:-docker.io/mysql:8.0.31} --character-set-server=utf8mb4 --collation-server=utf8mb4_0900_as_cs --skip-character-set-client-handshake --log-bin-trust-function-creators=1
4949
# Give the container some time to start
5050
OUTPUT=
5151
n=0
@@ -69,7 +69,7 @@ mysql_8_0() {
6969

7070
mysql_8_1() {
7171
$CONTAINER_CLI rm -f mysql || true
72-
$CONTAINER_CLI run --name mysql -e MYSQL_USER=hibernate_orm_test -e MYSQL_PASSWORD=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -e MYSQL_DATABASE=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -p3306:3306 -d docker.io/mysql:8.1.0 --character-set-server=utf8mb4 --collation-server=utf8mb4_0900_as_cs --skip-character-set-client-handshake --log-bin-trust-function-creators=1
72+
$CONTAINER_CLI run --name mysql -e MYSQL_USER=hibernate_orm_test -e MYSQL_PASSWORD=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -e MYSQL_DATABASE=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -p3306:3306 -d ${DB_IMAGE_MYSQL_8_1:-docker.io/mysql:8.1.0} --character-set-server=utf8mb4 --collation-server=utf8mb4_0900_as_cs --skip-character-set-client-handshake --log-bin-trust-function-creators=1
7373
# Give the container some time to start
7474
OUTPUT=
7575
n=0
@@ -97,7 +97,7 @@ mariadb() {
9797

9898
mariadb_10_3() {
9999
$CONTAINER_CLI rm -f mariadb || true
100-
$CONTAINER_CLI run --name mariadb -e MYSQL_USER=hibernate_orm_test -e MYSQL_PASSWORD=hibernate_orm_test -e MYSQL_DATABASE=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -p3306:3306 -d docker.io/mariadb:10.3.39 --character-set-server=utf8mb4 --collation-server=utf8mb4_bin --skip-character-set-client-handshake
100+
$CONTAINER_CLI run --name mariadb -e MYSQL_USER=hibernate_orm_test -e MYSQL_PASSWORD=hibernate_orm_test -e MYSQL_DATABASE=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -p3306:3306 -d ${DB_IMAGE_MARIADB_10_3:-docker.io/mariadb:10.3.39} --character-set-server=utf8mb4 --collation-server=utf8mb4_bin --skip-character-set-client-handshake
101101
OUTPUT=
102102
n=0
103103
until [ "$n" -ge 5 ]
@@ -120,7 +120,7 @@ mariadb_10_3() {
120120

121121
mariadb_10_9() {
122122
$CONTAINER_CLI rm -f mariadb || true
123-
$CONTAINER_CLI run --name mariadb -e MYSQL_USER=hibernate_orm_test -e MYSQL_PASSWORD=hibernate_orm_test -e MYSQL_DATABASE=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -p3306:3306 -d docker.io/mariadb:10.9.3 --character-set-server=utf8mb4 --collation-server=utf8mb4_bin --skip-character-set-client-handshake
123+
$CONTAINER_CLI run --name mariadb -e MYSQL_USER=hibernate_orm_test -e MYSQL_PASSWORD=hibernate_orm_test -e MYSQL_DATABASE=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -p3306:3306 -d ${DB_IMAGE_MARIADB_10_9:-docker.io/mariadb:10.9.3} --character-set-server=utf8mb4 --collation-server=utf8mb4_bin --skip-character-set-client-handshake
124124
OUTPUT=
125125
n=0
126126
until [ "$n" -ge 5 ]
@@ -143,7 +143,7 @@ mariadb_10_9() {
143143

144144
mariadb_11_1() {
145145
$CONTAINER_CLI rm -f mariadb || true
146-
$CONTAINER_CLI run --name mariadb -e MYSQL_USER=hibernate_orm_test -e MYSQL_PASSWORD=hibernate_orm_test -e MYSQL_DATABASE=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -p3306:3306 -d docker.io/mariadb:11.1.2 --character-set-server=utf8mb4 --collation-server=utf8mb4_bin --skip-character-set-client-handshake
146+
$CONTAINER_CLI run --name mariadb -e MYSQL_USER=hibernate_orm_test -e MYSQL_PASSWORD=hibernate_orm_test -e MYSQL_DATABASE=hibernate_orm_test -e MYSQL_ROOT_PASSWORD=hibernate_orm_test -p3306:3306 -d ${DB_IMAGE_MARIADB_11_1:-docker.io/mariadb:11.1.2} --character-set-server=utf8mb4 --collation-server=utf8mb4_bin --skip-character-set-client-handshake
147147
OUTPUT=
148148
n=0
149149
until [ "$n" -ge 5 ]
@@ -170,27 +170,27 @@ postgresql() {
170170

171171
postgresql_9_5() {
172172
$CONTAINER_CLI rm -f postgres || true
173-
$CONTAINER_CLI run --name postgres -e POSTGRES_USER=hibernate_orm_test -e POSTGRES_PASSWORD=hibernate_orm_test -e POSTGRES_DB=hibernate_orm_test -p5432:5432 -d docker.io/postgis/postgis:9.5-2.5
173+
$CONTAINER_CLI run --name postgres -e POSTGRES_USER=hibernate_orm_test -e POSTGRES_PASSWORD=hibernate_orm_test -e POSTGRES_DB=hibernate_orm_test -p5432:5432 -d ${DB_IMAGE_POSTGRESQL_9_5:-docker.io/postgis/postgis:9.5-2.5}
174174
}
175175

176176
postgresql_10() {
177177
$CONTAINER_CLI rm -f postgres || true
178-
$CONTAINER_CLI run --name postgres -e POSTGRES_USER=hibernate_orm_test -e POSTGRES_PASSWORD=hibernate_orm_test -e POSTGRES_DB=hibernate_orm_test -p5432:5432 -d docker.io/postgis/postgis:10-2.5
178+
$CONTAINER_CLI run --name postgres -e POSTGRES_USER=hibernate_orm_test -e POSTGRES_PASSWORD=hibernate_orm_test -e POSTGRES_DB=hibernate_orm_test -p5432:5432 -d ${DB_IMAGE_POSTGRESQL_10:-docker.io/postgis/postgis:10-2.5}
179179
}
180180

181181
postgresql_13() {
182182
$CONTAINER_CLI rm -f postgres || true
183-
$CONTAINER_CLI run --name postgres -e POSTGRES_USER=hibernate_orm_test -e POSTGRES_PASSWORD=hibernate_orm_test -e POSTGRES_DB=hibernate_orm_test -p5432:5432 -d docker.io/postgis/postgis:13-3.1
183+
$CONTAINER_CLI run --name postgres -e POSTGRES_USER=hibernate_orm_test -e POSTGRES_PASSWORD=hibernate_orm_test -e POSTGRES_DB=hibernate_orm_test -p5432:5432 -d ${DB_IMAGE_POSTGRESQL_13:-docker.io/postgis/postgis:13-3.1}
184184
}
185185

186186
postgresql_14() {
187187
$CONTAINER_CLI rm -f postgres || true
188-
$CONTAINER_CLI run --name postgres -e POSTGRES_USER=hibernate_orm_test -e POSTGRES_PASSWORD=hibernate_orm_test -e POSTGRES_DB=hibernate_orm_test -p5432:5432 -d docker.io/postgis/postgis:14-3.3
188+
$CONTAINER_CLI run --name postgres -e POSTGRES_USER=hibernate_orm_test -e POSTGRES_PASSWORD=hibernate_orm_test -e POSTGRES_DB=hibernate_orm_test -p5432:5432 -d ${DB_IMAGE_POSTGRESQL_14:-docker.io/postgis/postgis:14-3.3}
189189
}
190190

191191
postgresql_15() {
192192
$CONTAINER_CLI rm -f postgres || true
193-
$CONTAINER_CLI run --name postgres -e POSTGRES_USER=hibernate_orm_test -e POSTGRES_PASSWORD=hibernate_orm_test -e POSTGRES_DB=hibernate_orm_test -p5432:5432 --tmpfs /pgtmpfs:size=131072k -d docker.io/postgis/postgis:15-3.3 \
193+
$CONTAINER_CLI run --name postgres -e POSTGRES_USER=hibernate_orm_test -e POSTGRES_PASSWORD=hibernate_orm_test -e POSTGRES_DB=hibernate_orm_test -p5432:5432 --tmpfs /pgtmpfs:size=131072k -d ${DB_IMAGE_POSTGRESQL_15:-docker.io/postgis/postgis:15-3.3} \
194194
-c fsync=off -c synchronous_commit=off -c full_page_writes=off -c shared_buffers=256MB -c maintenance_work_mem=256MB -c max_wal_size=1GB -c checkpoint_timeout=1d
195195
}
196196

@@ -225,7 +225,7 @@ db2() {
225225

226226
db2_11_5() {
227227
$PRIVILEGED_CLI $CONTAINER_CLI rm -f db2 || true
228-
$PRIVILEGED_CLI $CONTAINER_CLI run --name db2 --privileged -e DB2INSTANCE=orm_test -e DB2INST1_PASSWORD=orm_test -e DBNAME=orm_test -e LICENSE=accept -e AUTOCONFIG=false -e ARCHIVE_LOGS=false -e TO_CREATE_SAMPLEDB=false -e REPODB=false -p 50000:50000 -d docker.io/ibmcom/db2:11.5.8.0
228+
$PRIVILEGED_CLI $CONTAINER_CLI run --name db2 --privileged -e DB2INSTANCE=orm_test -e DB2INST1_PASSWORD=orm_test -e DBNAME=orm_test -e LICENSE=accept -e AUTOCONFIG=false -e ARCHIVE_LOGS=false -e TO_CREATE_SAMPLEDB=false -e REPODB=false -p 50000:50000 -d ${DB_IMAGE_DB2_11_5:-docker.io/ibmcom/db2:11.5.8.0}
229229
# Give the container some time to start
230230
OUTPUT=
231231
while [[ $OUTPUT != *"INSTANCE"* ]]; do
@@ -239,7 +239,7 @@ db2_11_5() {
239239
db2_10_5() {
240240
$PRIVILEGED_CLI $CONTAINER_CLI rm -f db2 || true
241241
# The sha represents the tag 10.5.0.5-3.10.0
242-
$PRIVILEGED_CLI $CONTAINER_CLI run --name db2 --privileged -e DB2INST1_PASSWORD=db2inst1-pwd -e LICENSE=accept -p 50000:50000 -d docker.io/ibmoms/db2express-c@sha256:a499afd9709a1f69fb41703e88def9869955234c3525547e2efc3418d1f4ca2b db2start
242+
$PRIVILEGED_CLI $CONTAINER_CLI run --name db2 --privileged -e DB2INST1_PASSWORD=db2inst1-pwd -e LICENSE=accept -p 50000:50000 -d ${DB_IMAGE_DB2_10_5:-docker.io/ibmoms/db2express-c@sha256:a499afd9709a1f69fb41703e88def9869955234c3525547e2efc3418d1f4ca2b} db2start
243243
# Give the container some time to start
244244
OUTPUT=
245245
while [[ $OUTPUT != *"DB2START"* ]]; do
@@ -300,7 +300,7 @@ CREATE TRANSFORM FOR db2gse.ST_Geometry DB2_PROGRAM (
300300
EOF
301301
$PRIVILEGED_CLI $CONTAINER_CLI run --name db2spatial --privileged -e DB2INSTANCE=orm_test -e DB2INST1_PASSWORD=orm_test -e DBNAME=orm_test -e LICENSE=accept -e AUTOCONFIG=false -e ARCHIVE_LOGS=false -e TO_CREATE_SAMPLEDB=false -e REPODB=false \
302302
-v ${temp_dir}:/conf \
303-
-p 50000:50000 -d docker.io/ibmcom/db2:11.5.5.0
303+
-p 50000:50000 -d ${DB_IMAGE_DB2_SPATIAL:-docker.io/ibmcom/db2:11.5.5.0}
304304

305305
# Give the container some time to start
306306
OUTPUT=
@@ -324,7 +324,7 @@ mssql() {
324324
mssql_2017() {
325325
$CONTAINER_CLI rm -f mssql || true
326326
#This sha256 matches a specific tag of mcr.microsoft.com/mssql/server:2017-latest :
327-
$CONTAINER_CLI run --name mssql -d -p 1433:1433 -e "SA_PASSWORD=Hibernate_orm_test" -e ACCEPT_EULA=Y mcr.microsoft.com/mssql/server@sha256:7d194c54e34cb63bca083542369485c8f4141596805611e84d8c8bab2339eede
327+
$CONTAINER_CLI run --name mssql -d -p 1433:1433 -e "SA_PASSWORD=Hibernate_orm_test" -e ACCEPT_EULA=Y ${DB_IMAGE_MSSQL_2017:-mcr.microsoft.com/mssql/server@sha256:7d194c54e34cb63bca083542369485c8f4141596805611e84d8c8bab2339eede}
328328
sleep 5
329329
n=0
330330
until [ "$n" -ge 5 ]
@@ -346,7 +346,7 @@ mssql_2017() {
346346
mssql_2022() {
347347
$CONTAINER_CLI rm -f mssql || true
348348
#This sha256 matches a specific tag of mcr.microsoft.com/mssql/server:2022-latest :
349-
$CONTAINER_CLI run --name mssql -d -p 1433:1433 -e "SA_PASSWORD=Hibernate_orm_test" -e ACCEPT_EULA=Y mcr.microsoft.com/mssql/server@sha256:5439be9edc3b514cf647bcd3651779fa13f487735a985f40cbdcfecc60fea273
349+
$CONTAINER_CLI run --name mssql -d -p 1433:1433 -e "SA_PASSWORD=Hibernate_orm_test" -e ACCEPT_EULA=Y ${DB_IMAGE_MSSQL_2022:-mcr.microsoft.com/mssql/server@sha256:5439be9edc3b514cf647bcd3651779fa13f487735a985f40cbdcfecc60fea273}
350350
sleep 5
351351
n=0
352352
until [ "$n" -ge 5 ]
@@ -368,7 +368,7 @@ mssql_2022() {
368368
sybase() {
369369
$CONTAINER_CLI rm -f sybase || true
370370
# Yup, that sucks, but on ubuntu we need to use -T11889 as per: https://github.com/DataGrip/docker-env/issues/12
371-
$CONTAINER_CLI run -d -p 9000:5000 -p 9001:5001 --name sybase --entrypoint /bin/bash docker.io/nguoianphu/docker-sybase -c "source /opt/sybase/SYBASE.sh
371+
$CONTAINER_CLI run -d -p 9000:5000 -p 9001:5001 --name sybase --entrypoint /bin/bash ${DB_IMAGE_SYBASE:-docker.io/nguoianphu/docker-sybase} -c "source /opt/sybase/SYBASE.sh
372372
/opt/sybase/ASE-16_0/bin/dataserver \
373373
-d/opt/sybase/data/master.dat \
374374
-e/opt/sybase/ASE-16_0/install/MYSYBASE.log \
@@ -792,7 +792,7 @@ oracle_11() {
792792
--health-interval 5s \
793793
--health-timeout 5s \
794794
--health-retries 10 \
795-
docker.io/gvenzl/oracle-xe:11.2.0.2-full
795+
${DB_IMAGE_ORACLE_11:-docker.io/gvenzl/oracle-xe:11.2.0.2-full}
796796
oracle_setup_old
797797
}
798798

@@ -807,7 +807,7 @@ oracle_21() {
807807
--health-interval 5s \
808808
--health-timeout 5s \
809809
--health-retries 10 \
810-
docker.io/gvenzl/oracle-xe:21.3.0-full
810+
${DB_IMAGE_ORACLE_21:-docker.io/gvenzl/oracle-xe:21.3.0-full}
811811
oracle_setup
812812
}
813813

@@ -821,7 +821,7 @@ oracle_23() {
821821
--health-interval 5s \
822822
--health-timeout 5s \
823823
--health-retries 10 \
824-
docker.io/gvenzl/oracle-free:23-full
824+
${DB_IMAGE_ORACLE_23:-docker.io/gvenzl/oracle-free:23-full}
825825
oracle_free_setup
826826
}
827827

@@ -838,7 +838,7 @@ hana() {
838838
--sysctl kernel.shmmni=4096 \
839839
--sysctl kernel.shmall=8388608 \
840840
-v $temp_dir:/config:Z \
841-
docker.io/saplabs/hanaexpress:2.00.061.00.20220519.1 \
841+
${DB_IMAGE_HANA:-docker.io/saplabs/hanaexpress:2.00.061.00.20220519.1} \
842842
--passwords-url file:///config/password.json \
843843
--agree-to-sap-license
844844
# Give the container some time to start
@@ -865,7 +865,7 @@ sinks:
865865
redact: false
866866
exit-on-error: true
867867
"
868-
$CONTAINER_CLI run -d --name=cockroach -m 6g -p 26257:26257 -p 8080:8080 docker.io/cockroachdb/cockroach:v23.1.8 start-single-node \
868+
$CONTAINER_CLI run -d --name=cockroach -m 6g -p 26257:26257 -p 8080:8080 ${DB_IMAGE_COCKROACHDB_23_1:-docker.io/cockroachdb/cockroach:v23.1.8 start-single-node} \
869869
--insecure --store=type=mem,size=0.25 --advertise-addr=localhost --log="$LOG_CONFIG"
870870
OUTPUT=
871871
while [[ $OUTPUT != *"CockroachDB node starting"* ]]; do
@@ -905,7 +905,7 @@ sinks:
905905
redact: false
906906
exit-on-error: true
907907
"
908-
$CONTAINER_CLI run -d --name=cockroach -m 6g -p 26257:26257 -p 8080:8080 docker.io/cockroachdb/cockroach:v22.2.2 start-single-node \
908+
$CONTAINER_CLI run -d --name=cockroach -m 6g -p 26257:26257 -p 8080:8080 ${DB_IMAGE_COCKROACHDB_22_2:-docker.io/cockroachdb/cockroach:v22.2.2} start-single-node \
909909
--insecure --store=type=mem,size=0.25 --advertise-addr=localhost --log="$LOG_CONFIG"
910910
OUTPUT=
911911
while [[ $OUTPUT != *"CockroachDB node starting"* ]]; do
@@ -946,7 +946,7 @@ sinks:
946946
redact: false
947947
exit-on-error: true
948948
"
949-
$CONTAINER_CLI run -d --name=cockroach -m 6g -p 26257:26257 -p 8080:8080 docker.io/cockroachdb/cockroach:v22.1.13 start-single-node \
949+
$CONTAINER_CLI run -d --name=cockroach -m 6g -p 26257:26257 -p 8080:8080 ${DB_IMAGE_COCKROACHDB_22_1:-docker.io/cockroachdb/cockroach:v22.1.13} start-single-node \
950950
--insecure --store=type=mem,size=0.25 --advertise-addr=localhost --log="$LOG_CONFIG"
951951
OUTPUT=
952952
while [[ $OUTPUT != *"CockroachDB node starting"* ]]; do
@@ -987,7 +987,7 @@ sinks:
987987
redact: false
988988
exit-on-error: true
989989
"
990-
$CONTAINER_CLI run -d --name=cockroach -m 6g -p 26257:26257 -p 8080:8080 docker.io/cockroachdb/cockroach:v21.2.16 start-single-node \
990+
$CONTAINER_CLI run -d --name=cockroach -m 6g -p 26257:26257 -p 8080:8080 ${DB_IMAGE_COCKROACHDB_21_2:-docker.io/cockroachdb/cockroach:v21.2.16} start-single-node \
991991
--insecure --store=type=mem,size=640MiB --advertise-addr=localhost --log="$LOG_CONFIG"
992992
OUTPUT=
993993
while [[ $OUTPUT != *"CockroachDB node starting"* ]]; do
@@ -1028,7 +1028,7 @@ tidb() {
10281028

10291029
tidb_5_1() {
10301030
$CONTAINER_CLI rm -f tidb || true
1031-
$CONTAINER_CLI run --name tidb -p4000:4000 -d docker.io/pingcap/tidb:v5.1.4
1031+
$CONTAINER_CLI run --name tidb -p4000:4000 -d ${DB_IMAGE_TIDB_5_1:-docker.io/pingcap/tidb:v5.1.4}
10321032
# Give the container some time to start
10331033
OUTPUT=
10341034
n=0

0 commit comments

Comments
 (0)