Skip to content

Commit e0786cf

Browse files
committed
More logs. Include demo data.
1 parent 3d26e30 commit e0786cf

File tree

14 files changed

+175
-118
lines changed

14 files changed

+175
-118
lines changed

Dockerfile.template

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@ RUN curl -fLSs https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.tar.
8181
rm -rf /tmp/* && \
8282
mkdir -p /var/www/documents && \
8383
mkdir -p /var/www/html/custom && \
84+
mkdir -p /var/www/dev && \
85+
cp -r /tmp/dolibarr-${DOLI_VERSION}/dev/initdemo /var/www/dev && \
8486
chown -R www-data:www-data /var/www
8587

8688
EXPOSE 80

docker-run.sh

Lines changed: 23 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -197,12 +197,14 @@ function initializeDatabase()
197197
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "INSERT INTO llx_const(name,value,type,visible,note,entity) VALUES ('SYSTEMTOOLS_MYSQLDUMP', '/usr/bin/mysqldump', 'chaine', 0, '', 0);" > /dev/null 2>&1
198198

199199
if [[ ${DOLI_INIT_DEMO} -eq 1 ]]; then
200+
echo "Load demo data ..."
200201
for fileSQL in /var/www/dev/initdemo/*.sql; do
201202
# We exclude the old load file.
202203
if [[ $fileSQL =~ mysqldump_dolibarr_3.5 ]]; then
203204
continue
204205
fi
205206
echo "Load demo data ${fileSQL} ..."
207+
sed -i 's/--.*//g;' ${fileSQL}
206208
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} < ${fileSQL} > /dev/null 2>&1
207209
done
208210
fi
@@ -257,25 +259,30 @@ function run()
257259
echo "Current Version is : ${DOLI_VERSION}"
258260

259261
# If install of mysql database (and not install of cron) is requested
260-
if [[ ${DOLI_INSTALL_AUTO} -eq 1 && ${DOLI_CRON} -ne 1 && ! -f /var/www/documents/install.lock && ${DOLI_DB_TYPE} != "pgsql" ]]; then
261-
waitForDataBase
262-
263-
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "SELECT Q.LAST_INSTALLED_VERSION FROM (SELECT INET_ATON(CONCAT(value, REPEAT('.0', 3 - CHAR_LENGTH(value) + CHAR_LENGTH(REPLACE(value, '.', ''))))) as VERSION_ATON, value as LAST_INSTALLED_VERSION FROM llx_const WHERE name IN ('MAIN_VERSION_LAST_INSTALL', 'MAIN_VERSION_LAST_UPGRADE') and entity=0) Q ORDER BY VERSION_ATON DESC LIMIT 1" > /tmp/lastinstall.result 2>&1
264-
r=$?
265-
if [[ ${r} -ne 0 ]]; then
266-
initializeDatabase
267-
else
268-
INSTALLED_VERSION=`grep -v LAST_INSTALLED_VERSION /tmp/lastinstall.result`
269-
echo "Last installed Version is : ${INSTALLED_VERSION}"
270-
if [[ "$(echo ${INSTALLED_VERSION} | cut -d. -f1)" -lt "$(echo ${DOLI_VERSION} | cut -d. -f1)" ]]; then
271-
migrateDatabase
262+
if [[ ${DOLI_INSTALL_AUTO} -eq 1 && ${DOLI_CRON} -ne 1 && ${DOLI_DB_TYPE} != "pgsql" ]]; then
263+
echo "DOLI_INSTALL_AUTO is on, so we check to initialize or upgrade mariadb database"
264+
if [[ ! -f /var/www/documents/install.lock ]]; then
265+
waitForDataBase
266+
267+
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "SELECT Q.LAST_INSTALLED_VERSION FROM (SELECT INET_ATON(CONCAT(value, REPEAT('.0', 3 - CHAR_LENGTH(value) + CHAR_LENGTH(REPLACE(value, '.', ''))))) as VERSION_ATON, value as LAST_INSTALLED_VERSION FROM llx_const WHERE name IN ('MAIN_VERSION_LAST_INSTALL', 'MAIN_VERSION_LAST_UPGRADE') and entity=0) Q ORDER BY VERSION_ATON DESC LIMIT 1" > /tmp/lastinstall.result 2>&1
268+
r=$?
269+
if [[ ${r} -ne 0 ]]; then
270+
initializeDatabase
272271
else
273-
echo "Schema update is not required ... Enjoy !!"
272+
INSTALLED_VERSION=`grep -v LAST_INSTALLED_VERSION /tmp/lastinstall.result`
273+
echo "Last installed Version is : ${INSTALLED_VERSION}"
274+
if [[ "$(echo ${INSTALLED_VERSION} | cut -d. -f1)" -lt "$(echo ${DOLI_VERSION} | cut -d. -f1)" ]]; then
275+
migrateDatabase
276+
else
277+
echo "Schema update is not required ... Enjoy !!"
278+
fi
274279
fi
275-
fi
276280

277-
if [[ ${DOLI_VERSION} != "develop" ]]; then
278-
lockInstallation
281+
if [[ ${DOLI_VERSION} != "develop" ]]; then
282+
lockInstallation
283+
fi
284+
else
285+
echo "File /var/www/documents/install.lock exists so we cancel database init"
279286
fi
280287
fi
281288

images/15.0.3-php7.4/Dockerfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@ RUN curl -fLSs https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.tar.
8181
rm -rf /tmp/* && \
8282
mkdir -p /var/www/documents && \
8383
mkdir -p /var/www/html/custom && \
84+
mkdir -p /var/www/dev && \
85+
cp -r /tmp/dolibarr-${DOLI_VERSION}/dev/initdemo /var/www/dev && \
8486
chown -R www-data:www-data /var/www
8587

8688
EXPOSE 80

images/15.0.3-php7.4/docker-run.sh

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,7 @@ function initializeDatabase()
197197
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "INSERT INTO llx_const(name,value,type,visible,note,entity) VALUES ('SYSTEMTOOLS_MYSQLDUMP', '/usr/bin/mysqldump', 'chaine', 0, '', 0);" > /dev/null 2>&1
198198

199199
if [[ ${DOLI_INIT_DEMO} -eq 1 ]]; then
200+
echo "Load demo data ..."
200201
for fileSQL in /var/www/dev/initdemo/*.sql; do
201202
# We exclude the old load file.
202203
if [[ $fileSQL =~ mysqldump_dolibarr_3.5 ]]; then
@@ -207,7 +208,7 @@ function initializeDatabase()
207208
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} < ${fileSQL} > /dev/null 2>&1
208209
done
209210
fi
210-
211+
211212
echo "Enable user module ..."
212213
php /var/www/scripts/docker-init.php
213214

@@ -258,25 +259,30 @@ function run()
258259
echo "Current Version is : ${DOLI_VERSION}"
259260

260261
# If install of mysql database (and not install of cron) is requested
261-
if [[ ${DOLI_INSTALL_AUTO} -eq 1 && ${DOLI_CRON} -ne 1 && ! -f /var/www/documents/install.lock && ${DOLI_DB_TYPE} != "pgsql" ]]; then
262-
waitForDataBase
263-
264-
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "SELECT Q.LAST_INSTALLED_VERSION FROM (SELECT INET_ATON(CONCAT(value, REPEAT('.0', 3 - CHAR_LENGTH(value) + CHAR_LENGTH(REPLACE(value, '.', ''))))) as VERSION_ATON, value as LAST_INSTALLED_VERSION FROM llx_const WHERE name IN ('MAIN_VERSION_LAST_INSTALL', 'MAIN_VERSION_LAST_UPGRADE') and entity=0) Q ORDER BY VERSION_ATON DESC LIMIT 1" > /tmp/lastinstall.result 2>&1
265-
r=$?
266-
if [[ ${r} -ne 0 ]]; then
267-
initializeDatabase
268-
else
269-
INSTALLED_VERSION=`grep -v LAST_INSTALLED_VERSION /tmp/lastinstall.result`
270-
echo "Last installed Version is : ${INSTALLED_VERSION}"
271-
if [[ "$(echo ${INSTALLED_VERSION} | cut -d. -f1)" -lt "$(echo ${DOLI_VERSION} | cut -d. -f1)" ]]; then
272-
migrateDatabase
262+
if [[ ${DOLI_INSTALL_AUTO} -eq 1 && ${DOLI_CRON} -ne 1 && ${DOLI_DB_TYPE} != "pgsql" ]]; then
263+
echo "DOLI_INSTALL_AUTO is on, so we check to initialize or upgrade mariadb database"
264+
if [[ ! -f /var/www/documents/install.lock ]]; then
265+
waitForDataBase
266+
267+
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "SELECT Q.LAST_INSTALLED_VERSION FROM (SELECT INET_ATON(CONCAT(value, REPEAT('.0', 3 - CHAR_LENGTH(value) + CHAR_LENGTH(REPLACE(value, '.', ''))))) as VERSION_ATON, value as LAST_INSTALLED_VERSION FROM llx_const WHERE name IN ('MAIN_VERSION_LAST_INSTALL', 'MAIN_VERSION_LAST_UPGRADE') and entity=0) Q ORDER BY VERSION_ATON DESC LIMIT 1" > /tmp/lastinstall.result 2>&1
268+
r=$?
269+
if [[ ${r} -ne 0 ]]; then
270+
initializeDatabase
273271
else
274-
echo "Schema update is not required ... Enjoy !!"
272+
INSTALLED_VERSION=`grep -v LAST_INSTALLED_VERSION /tmp/lastinstall.result`
273+
echo "Last installed Version is : ${INSTALLED_VERSION}"
274+
if [[ "$(echo ${INSTALLED_VERSION} | cut -d. -f1)" -lt "$(echo ${DOLI_VERSION} | cut -d. -f1)" ]]; then
275+
migrateDatabase
276+
else
277+
echo "Schema update is not required ... Enjoy !!"
278+
fi
275279
fi
276-
fi
277280

278-
if [[ ${DOLI_VERSION} != "develop" ]]; then
279-
lockInstallation
281+
if [[ ${DOLI_VERSION} != "develop" ]]; then
282+
lockInstallation
283+
fi
284+
else
285+
echo "File /var/www/documents/install.lock exists so we cancel database init"
280286
fi
281287
fi
282288

images/16.0.5-php8.1/Dockerfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@ RUN curl -fLSs https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.tar.
8181
rm -rf /tmp/* && \
8282
mkdir -p /var/www/documents && \
8383
mkdir -p /var/www/html/custom && \
84+
mkdir -p /var/www/dev && \
85+
cp -r /tmp/dolibarr-${DOLI_VERSION}/dev/initdemo /var/www/dev && \
8486
chown -R www-data:www-data /var/www
8587

8688
EXPOSE 80

images/16.0.5-php8.1/docker-run.sh

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,7 @@ function initializeDatabase()
197197
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "INSERT INTO llx_const(name,value,type,visible,note,entity) VALUES ('SYSTEMTOOLS_MYSQLDUMP', '/usr/bin/mysqldump', 'chaine', 0, '', 0);" > /dev/null 2>&1
198198

199199
if [[ ${DOLI_INIT_DEMO} -eq 1 ]]; then
200+
echo "Load demo data ..."
200201
for fileSQL in /var/www/dev/initdemo/*.sql; do
201202
# We exclude the old load file.
202203
if [[ $fileSQL =~ mysqldump_dolibarr_3.5 ]]; then
@@ -207,7 +208,7 @@ function initializeDatabase()
207208
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} < ${fileSQL} > /dev/null 2>&1
208209
done
209210
fi
210-
211+
211212
echo "Enable user module ..."
212213
php /var/www/scripts/docker-init.php
213214

@@ -258,25 +259,30 @@ function run()
258259
echo "Current Version is : ${DOLI_VERSION}"
259260

260261
# If install of mysql database (and not install of cron) is requested
261-
if [[ ${DOLI_INSTALL_AUTO} -eq 1 && ${DOLI_CRON} -ne 1 && ! -f /var/www/documents/install.lock && ${DOLI_DB_TYPE} != "pgsql" ]]; then
262-
waitForDataBase
263-
264-
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "SELECT Q.LAST_INSTALLED_VERSION FROM (SELECT INET_ATON(CONCAT(value, REPEAT('.0', 3 - CHAR_LENGTH(value) + CHAR_LENGTH(REPLACE(value, '.', ''))))) as VERSION_ATON, value as LAST_INSTALLED_VERSION FROM llx_const WHERE name IN ('MAIN_VERSION_LAST_INSTALL', 'MAIN_VERSION_LAST_UPGRADE') and entity=0) Q ORDER BY VERSION_ATON DESC LIMIT 1" > /tmp/lastinstall.result 2>&1
265-
r=$?
266-
if [[ ${r} -ne 0 ]]; then
267-
initializeDatabase
268-
else
269-
INSTALLED_VERSION=`grep -v LAST_INSTALLED_VERSION /tmp/lastinstall.result`
270-
echo "Last installed Version is : ${INSTALLED_VERSION}"
271-
if [[ "$(echo ${INSTALLED_VERSION} | cut -d. -f1)" -lt "$(echo ${DOLI_VERSION} | cut -d. -f1)" ]]; then
272-
migrateDatabase
262+
if [[ ${DOLI_INSTALL_AUTO} -eq 1 && ${DOLI_CRON} -ne 1 && ${DOLI_DB_TYPE} != "pgsql" ]]; then
263+
echo "DOLI_INSTALL_AUTO is on, so we check to initialize or upgrade mariadb database"
264+
if [[ ! -f /var/www/documents/install.lock ]]; then
265+
waitForDataBase
266+
267+
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "SELECT Q.LAST_INSTALLED_VERSION FROM (SELECT INET_ATON(CONCAT(value, REPEAT('.0', 3 - CHAR_LENGTH(value) + CHAR_LENGTH(REPLACE(value, '.', ''))))) as VERSION_ATON, value as LAST_INSTALLED_VERSION FROM llx_const WHERE name IN ('MAIN_VERSION_LAST_INSTALL', 'MAIN_VERSION_LAST_UPGRADE') and entity=0) Q ORDER BY VERSION_ATON DESC LIMIT 1" > /tmp/lastinstall.result 2>&1
268+
r=$?
269+
if [[ ${r} -ne 0 ]]; then
270+
initializeDatabase
273271
else
274-
echo "Schema update is not required ... Enjoy !!"
272+
INSTALLED_VERSION=`grep -v LAST_INSTALLED_VERSION /tmp/lastinstall.result`
273+
echo "Last installed Version is : ${INSTALLED_VERSION}"
274+
if [[ "$(echo ${INSTALLED_VERSION} | cut -d. -f1)" -lt "$(echo ${DOLI_VERSION} | cut -d. -f1)" ]]; then
275+
migrateDatabase
276+
else
277+
echo "Schema update is not required ... Enjoy !!"
278+
fi
275279
fi
276-
fi
277280

278-
if [[ ${DOLI_VERSION} != "develop" ]]; then
279-
lockInstallation
281+
if [[ ${DOLI_VERSION} != "develop" ]]; then
282+
lockInstallation
283+
fi
284+
else
285+
echo "File /var/www/documents/install.lock exists so we cancel database init"
280286
fi
281287
fi
282288

images/17.0.4-php8.1/Dockerfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@ RUN curl -fLSs https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.tar.
8181
rm -rf /tmp/* && \
8282
mkdir -p /var/www/documents && \
8383
mkdir -p /var/www/html/custom && \
84+
mkdir -p /var/www/dev && \
85+
cp -r /tmp/dolibarr-${DOLI_VERSION}/dev/initdemo /var/www/dev && \
8486
chown -R www-data:www-data /var/www
8587

8688
EXPOSE 80

images/17.0.4-php8.1/docker-run.sh

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,7 @@ function initializeDatabase()
197197
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "INSERT INTO llx_const(name,value,type,visible,note,entity) VALUES ('SYSTEMTOOLS_MYSQLDUMP', '/usr/bin/mysqldump', 'chaine', 0, '', 0);" > /dev/null 2>&1
198198

199199
if [[ ${DOLI_INIT_DEMO} -eq 1 ]]; then
200+
echo "Load demo data ..."
200201
for fileSQL in /var/www/dev/initdemo/*.sql; do
201202
# We exclude the old load file.
202203
if [[ $fileSQL =~ mysqldump_dolibarr_3.5 ]]; then
@@ -207,7 +208,7 @@ function initializeDatabase()
207208
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} < ${fileSQL} > /dev/null 2>&1
208209
done
209210
fi
210-
211+
211212
echo "Enable user module ..."
212213
php /var/www/scripts/docker-init.php
213214

@@ -258,25 +259,30 @@ function run()
258259
echo "Current Version is : ${DOLI_VERSION}"
259260

260261
# If install of mysql database (and not install of cron) is requested
261-
if [[ ${DOLI_INSTALL_AUTO} -eq 1 && ${DOLI_CRON} -ne 1 && ! -f /var/www/documents/install.lock && ${DOLI_DB_TYPE} != "pgsql" ]]; then
262-
waitForDataBase
263-
264-
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "SELECT Q.LAST_INSTALLED_VERSION FROM (SELECT INET_ATON(CONCAT(value, REPEAT('.0', 3 - CHAR_LENGTH(value) + CHAR_LENGTH(REPLACE(value, '.', ''))))) as VERSION_ATON, value as LAST_INSTALLED_VERSION FROM llx_const WHERE name IN ('MAIN_VERSION_LAST_INSTALL', 'MAIN_VERSION_LAST_UPGRADE') and entity=0) Q ORDER BY VERSION_ATON DESC LIMIT 1" > /tmp/lastinstall.result 2>&1
265-
r=$?
266-
if [[ ${r} -ne 0 ]]; then
267-
initializeDatabase
268-
else
269-
INSTALLED_VERSION=`grep -v LAST_INSTALLED_VERSION /tmp/lastinstall.result`
270-
echo "Last installed Version is : ${INSTALLED_VERSION}"
271-
if [[ "$(echo ${INSTALLED_VERSION} | cut -d. -f1)" -lt "$(echo ${DOLI_VERSION} | cut -d. -f1)" ]]; then
272-
migrateDatabase
262+
if [[ ${DOLI_INSTALL_AUTO} -eq 1 && ${DOLI_CRON} -ne 1 && ${DOLI_DB_TYPE} != "pgsql" ]]; then
263+
echo "DOLI_INSTALL_AUTO is on, so we check to initialize or upgrade mariadb database"
264+
if [[ ! -f /var/www/documents/install.lock ]]; then
265+
waitForDataBase
266+
267+
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "SELECT Q.LAST_INSTALLED_VERSION FROM (SELECT INET_ATON(CONCAT(value, REPEAT('.0', 3 - CHAR_LENGTH(value) + CHAR_LENGTH(REPLACE(value, '.', ''))))) as VERSION_ATON, value as LAST_INSTALLED_VERSION FROM llx_const WHERE name IN ('MAIN_VERSION_LAST_INSTALL', 'MAIN_VERSION_LAST_UPGRADE') and entity=0) Q ORDER BY VERSION_ATON DESC LIMIT 1" > /tmp/lastinstall.result 2>&1
268+
r=$?
269+
if [[ ${r} -ne 0 ]]; then
270+
initializeDatabase
273271
else
274-
echo "Schema update is not required ... Enjoy !!"
272+
INSTALLED_VERSION=`grep -v LAST_INSTALLED_VERSION /tmp/lastinstall.result`
273+
echo "Last installed Version is : ${INSTALLED_VERSION}"
274+
if [[ "$(echo ${INSTALLED_VERSION} | cut -d. -f1)" -lt "$(echo ${DOLI_VERSION} | cut -d. -f1)" ]]; then
275+
migrateDatabase
276+
else
277+
echo "Schema update is not required ... Enjoy !!"
278+
fi
275279
fi
276-
fi
277280

278-
if [[ ${DOLI_VERSION} != "develop" ]]; then
279-
lockInstallation
281+
if [[ ${DOLI_VERSION} != "develop" ]]; then
282+
lockInstallation
283+
fi
284+
else
285+
echo "File /var/www/documents/install.lock exists so we cancel database init"
280286
fi
281287
fi
282288

images/18.0.5-php8.1/Dockerfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@ RUN curl -fLSs https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.tar.
8181
rm -rf /tmp/* && \
8282
mkdir -p /var/www/documents && \
8383
mkdir -p /var/www/html/custom && \
84+
mkdir -p /var/www/dev && \
85+
cp -r /tmp/dolibarr-${DOLI_VERSION}/dev/initdemo /var/www/dev && \
8486
chown -R www-data:www-data /var/www
8587

8688
EXPOSE 80

images/18.0.5-php8.1/docker-run.sh

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,7 @@ function initializeDatabase()
197197
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "INSERT INTO llx_const(name,value,type,visible,note,entity) VALUES ('SYSTEMTOOLS_MYSQLDUMP', '/usr/bin/mysqldump', 'chaine', 0, '', 0);" > /dev/null 2>&1
198198

199199
if [[ ${DOLI_INIT_DEMO} -eq 1 ]]; then
200+
echo "Load demo data ..."
200201
for fileSQL in /var/www/dev/initdemo/*.sql; do
201202
# We exclude the old load file.
202203
if [[ $fileSQL =~ mysqldump_dolibarr_3.5 ]]; then
@@ -207,7 +208,7 @@ function initializeDatabase()
207208
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} < ${fileSQL} > /dev/null 2>&1
208209
done
209210
fi
210-
211+
211212
echo "Enable user module ..."
212213
php /var/www/scripts/docker-init.php
213214

@@ -258,25 +259,30 @@ function run()
258259
echo "Current Version is : ${DOLI_VERSION}"
259260

260261
# If install of mysql database (and not install of cron) is requested
261-
if [[ ${DOLI_INSTALL_AUTO} -eq 1 && ${DOLI_CRON} -ne 1 && ! -f /var/www/documents/install.lock && ${DOLI_DB_TYPE} != "pgsql" ]]; then
262-
waitForDataBase
263-
264-
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "SELECT Q.LAST_INSTALLED_VERSION FROM (SELECT INET_ATON(CONCAT(value, REPEAT('.0', 3 - CHAR_LENGTH(value) + CHAR_LENGTH(REPLACE(value, '.', ''))))) as VERSION_ATON, value as LAST_INSTALLED_VERSION FROM llx_const WHERE name IN ('MAIN_VERSION_LAST_INSTALL', 'MAIN_VERSION_LAST_UPGRADE') and entity=0) Q ORDER BY VERSION_ATON DESC LIMIT 1" > /tmp/lastinstall.result 2>&1
265-
r=$?
266-
if [[ ${r} -ne 0 ]]; then
267-
initializeDatabase
268-
else
269-
INSTALLED_VERSION=`grep -v LAST_INSTALLED_VERSION /tmp/lastinstall.result`
270-
echo "Last installed Version is : ${INSTALLED_VERSION}"
271-
if [[ "$(echo ${INSTALLED_VERSION} | cut -d. -f1)" -lt "$(echo ${DOLI_VERSION} | cut -d. -f1)" ]]; then
272-
migrateDatabase
262+
if [[ ${DOLI_INSTALL_AUTO} -eq 1 && ${DOLI_CRON} -ne 1 && ${DOLI_DB_TYPE} != "pgsql" ]]; then
263+
echo "DOLI_INSTALL_AUTO is on, so we check to initialize or upgrade mariadb database"
264+
if [[ ! -f /var/www/documents/install.lock ]]; then
265+
waitForDataBase
266+
267+
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -P ${DOLI_DB_HOST_PORT} ${DOLI_DB_NAME} -e "SELECT Q.LAST_INSTALLED_VERSION FROM (SELECT INET_ATON(CONCAT(value, REPEAT('.0', 3 - CHAR_LENGTH(value) + CHAR_LENGTH(REPLACE(value, '.', ''))))) as VERSION_ATON, value as LAST_INSTALLED_VERSION FROM llx_const WHERE name IN ('MAIN_VERSION_LAST_INSTALL', 'MAIN_VERSION_LAST_UPGRADE') and entity=0) Q ORDER BY VERSION_ATON DESC LIMIT 1" > /tmp/lastinstall.result 2>&1
268+
r=$?
269+
if [[ ${r} -ne 0 ]]; then
270+
initializeDatabase
273271
else
274-
echo "Schema update is not required ... Enjoy !!"
272+
INSTALLED_VERSION=`grep -v LAST_INSTALLED_VERSION /tmp/lastinstall.result`
273+
echo "Last installed Version is : ${INSTALLED_VERSION}"
274+
if [[ "$(echo ${INSTALLED_VERSION} | cut -d. -f1)" -lt "$(echo ${DOLI_VERSION} | cut -d. -f1)" ]]; then
275+
migrateDatabase
276+
else
277+
echo "Schema update is not required ... Enjoy !!"
278+
fi
275279
fi
276-
fi
277280

278-
if [[ ${DOLI_VERSION} != "develop" ]]; then
279-
lockInstallation
281+
if [[ ${DOLI_VERSION} != "develop" ]]; then
282+
lockInstallation
283+
fi
284+
else
285+
echo "File /var/www/documents/install.lock exists so we cancel database init"
280286
fi
281287
fi
282288

0 commit comments

Comments
 (0)