Handle reviews and create convenience script + CONTRIBUTING.md
This commit is contained in:
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
docker-compose-links/
|
||||
37
CONTRIBUTING.md
Normal file
37
CONTRIBUTING.md
Normal file
@@ -0,0 +1,37 @@
|
||||
# Contributing
|
||||
1. Create only head Dolibarr version for each Major release.
|
||||
2. Keep only one Dockerfile.template file, use `sed` value replacement in `update.sh`
|
||||
3. Keep most up to date PHP version that matches each [Dolibarr releases](https://wiki.dolibarr.org/index.php/Versions).
|
||||
4. Be careful about [supported PHP versions](https://www.php.net/supported-versions.php), try to avoid deprecated PHP Version, but only if it doesn't break rule #3.
|
||||
5. Run the `update.sh` script
|
||||
6. check the `README.md`, to ensure it is well formatted (on some environment `Supported Tags` could be broken)
|
||||
7. Commit all content in `images` directory
|
||||
8. Open a pull request with a polite and well described content ^_^
|
||||
|
||||
# How to create images
|
||||
All is done through the `update.sh` script, Dolibarr version to build are stored in `versions.sh`
|
||||
Ensure that the var `DOLIBARR_VERSIONS` in `versions.sh` is having all version you want to build.
|
||||
Run the script.
|
||||
|
||||
## Tips
|
||||
You can ask the script to build and push version for you: just add `DOCKER_BUILD=1` and `DOCKER_PUSH=1` in command line.
|
||||
```bash
|
||||
$> DOCKER_BUILD=1 DOCKER_PUSH=1 ./update.sh
|
||||
```
|
||||
|
||||
# Test your local copy before PR
|
||||
For convenience, you can use the `test.sh` script, it will build and run containers based on existing Dockerfile in `images` directory. (You'd better run `update.sh` before)
|
||||
```bash
|
||||
$> ./test.sh <DOLIBARR_VERSION> <PHP_VERSION>
|
||||
```
|
||||
* DOLIBARR_VERSION : (Mandatory) the version you want to build and run.
|
||||
* PHP_VERSION : (Optional) the Dolibarr version with this PHP version you want to run specifically, if omitted it will use the most up to date PHP version.
|
||||
|
||||
If you want to run Dolibarr 12.0.1 with PHP 5.6
|
||||
```bash
|
||||
$> ./test.sh 12.0.1 5.6
|
||||
```
|
||||
If you want to run Dolibarr 12.0.1 with most up to date PHP version
|
||||
```bash
|
||||
$> ./test.sh 12.0.1
|
||||
```
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM php:%PHP_VERSION%-apache-stretch
|
||||
FROM php:%PHP_BASE_IMAGE%
|
||||
|
||||
MAINTAINER Garcia MICHEL <garcia@soamichel.fr>
|
||||
|
||||
@@ -21,21 +21,23 @@ ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libfreetype6-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
mysql-client \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-configure gd %GD_CONFIG_ARG% \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
&& docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
ENV DOLI_VERSION %DOLI_VERSION%
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
@@ -43,11 +45,9 @@ RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
|
||||
19
README.md
19
README.md
@@ -4,13 +4,13 @@ Docker image for Dolibarr with auto installer on first boot.
|
||||
|
||||
## Supported tags
|
||||
|
||||
* 6.0.8-php7.1 6.0.8
|
||||
* 7.0.5-php7.2 7.0.5
|
||||
* 8.0.6-php7.2 8.0.6
|
||||
* 9.0.4-php7.2 9.0.4-php7.3 9.0.4
|
||||
* 10.0.7-php7.2 10.0.7-php7.3 10.0.7
|
||||
* 11.0.5-php7.2 11.0.5-php7.3 11.0.5-php7.4 11.0.5
|
||||
* 12.0.1-php7.2 12.0.1-php7.3 12.0.1-php7.4 12.0.1 latest
|
||||
* 6.0.8-php5.6 6.0.8-php7.1 6.0.8 6
|
||||
* 7.0.5-php5.6 7.0.5-php7.2 7.0.5 7
|
||||
* 8.0.6-php5.6 8.0.6-php7.2 8.0.6 8
|
||||
* 9.0.4-php5.6 9.0.4-php7.3 9.0.4 9
|
||||
* 10.0.7-php5.6 10.0.7-php7.3 10.0.7 10
|
||||
* 11.0.5-php5.6 11.0.5-php7.4 11.0.5 11
|
||||
* 12.0.1-php5.6 12.0.1-php7.4 12.0.1 12 latest
|
||||
|
||||
## What is Dolibarr ?
|
||||
|
||||
@@ -29,13 +29,14 @@ Let's use [Docker Compose](https://docs.docker.com/compose/) to integrate it wit
|
||||
Create `docker-compose.yml` file as following:
|
||||
|
||||
```
|
||||
mariadb:
|
||||
services:
|
||||
mariadb:
|
||||
image: mariadb:latest
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: root
|
||||
MYSQL_DATABASE: dolibarr
|
||||
|
||||
web:
|
||||
web:
|
||||
image: tuxgasy/dolibarr
|
||||
environment:
|
||||
DOLI_DB_HOST: mariadb
|
||||
|
||||
@@ -23,13 +23,14 @@ Let's use [Docker Compose](https://docs.docker.com/compose/) to integrate it wit
|
||||
Create `docker-compose.yml` file as following:
|
||||
|
||||
```
|
||||
mariadb:
|
||||
services:
|
||||
mariadb:
|
||||
image: mariadb:latest
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: root
|
||||
MYSQL_DATABASE: dolibarr
|
||||
|
||||
web:
|
||||
web:
|
||||
image: tuxgasy/dolibarr
|
||||
environment:
|
||||
DOLI_DB_HOST: mariadb
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
version: '3'
|
||||
# This docker-compose.yml file is used to build and test quickly
|
||||
# a specific version of Dolibarr
|
||||
#
|
||||
@@ -7,15 +8,28 @@
|
||||
# $ docker-compose up
|
||||
#
|
||||
# More informations about Docker-compose : https://docs.docker.com/compose/
|
||||
networks:
|
||||
intenal-pod:
|
||||
internal: true
|
||||
external-pod:
|
||||
internal: false
|
||||
|
||||
mariadb:
|
||||
|
||||
services:
|
||||
mariadb:
|
||||
image: mariadb:latest
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: root
|
||||
MYSQL_DATABASE: dolibarr
|
||||
networks:
|
||||
- intenal-pod
|
||||
|
||||
web:
|
||||
build: ./images/$DOLI_VERSION
|
||||
web:
|
||||
build:
|
||||
context: ./docker-compose-links/${DOLI_VERSION}${PHP_VERSION}
|
||||
image: tuxgasy/dolibarr:${DOLI_VERSION}${PHP_VERSION}
|
||||
depends_on:
|
||||
- mariadb
|
||||
environment:
|
||||
DOLI_DB_HOST: mariadb
|
||||
DOLI_DB_USER: root
|
||||
@@ -26,5 +40,6 @@ web:
|
||||
WWW_GROUP_ID: 1000
|
||||
ports:
|
||||
- "80:80"
|
||||
links:
|
||||
- mariadb
|
||||
networks:
|
||||
- intenal-pod
|
||||
- external-pod
|
||||
|
||||
55
images/10.0.7-php5.6/Dockerfile
Normal file
55
images/10.0.7-php5.6/Dockerfile
Normal file
@@ -0,0 +1,55 @@
|
||||
FROM php:5.6-apache-stretch
|
||||
|
||||
MAINTAINER Garcia MICHEL <garcia@soamichel.fr>
|
||||
|
||||
ENV DOLI_INSTALL_AUTO 1
|
||||
|
||||
ENV DOLI_DB_HOST mysql
|
||||
ENV DOLI_DB_USER doli
|
||||
ENV DOLI_DB_PASSWORD doli_pass
|
||||
ENV DOLI_DB_NAME dolidb
|
||||
|
||||
ENV DOLI_ADMIN_LOGIN admin
|
||||
ENV DOLI_ADMIN_PASSWORD admin
|
||||
ENV DOLI_URL_ROOT 'http://localhost'
|
||||
ENV DOLI_NOCSRFCHECK 0
|
||||
|
||||
ENV WWW_USER_ID 33
|
||||
ENV WWW_GROUP_ID 33
|
||||
|
||||
ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libfreetype6-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libpng-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
&& docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ENV DOLI_VERSION 10.0.7
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
COPY docker-run.sh /usr/local/bin/
|
||||
ENTRYPOINT ["docker-run.sh"]
|
||||
@@ -21,13 +21,15 @@ ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libfreetype6-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
mysql-client \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
@@ -35,7 +37,7 @@ RUN apt-get update -y \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
ENV DOLI_VERSION 10.0.7
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
@@ -43,11 +45,9 @@ RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
|
||||
55
images/11.0.5-php5.6/Dockerfile
Normal file
55
images/11.0.5-php5.6/Dockerfile
Normal file
@@ -0,0 +1,55 @@
|
||||
FROM php:5.6-apache-stretch
|
||||
|
||||
MAINTAINER Garcia MICHEL <garcia@soamichel.fr>
|
||||
|
||||
ENV DOLI_INSTALL_AUTO 1
|
||||
|
||||
ENV DOLI_DB_HOST mysql
|
||||
ENV DOLI_DB_USER doli
|
||||
ENV DOLI_DB_PASSWORD doli_pass
|
||||
ENV DOLI_DB_NAME dolidb
|
||||
|
||||
ENV DOLI_ADMIN_LOGIN admin
|
||||
ENV DOLI_ADMIN_PASSWORD admin
|
||||
ENV DOLI_URL_ROOT 'http://localhost'
|
||||
ENV DOLI_NOCSRFCHECK 0
|
||||
|
||||
ENV WWW_USER_ID 33
|
||||
ENV WWW_GROUP_ID 33
|
||||
|
||||
ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libfreetype6-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libpng-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
&& docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ENV DOLI_VERSION 11.0.5
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
COPY docker-run.sh /usr/local/bin/
|
||||
ENTRYPOINT ["docker-run.sh"]
|
||||
@@ -29,6 +29,7 @@ RUN apt-get update -y \
|
||||
libzip-dev \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
@@ -36,7 +37,7 @@ RUN apt-get update -y \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
ENV DOLI_VERSION 11.0.5
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
@@ -44,11 +45,9 @@ RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
|
||||
55
images/12.0.1-php5.6/Dockerfile
Normal file
55
images/12.0.1-php5.6/Dockerfile
Normal file
@@ -0,0 +1,55 @@
|
||||
FROM php:5.6-apache-stretch
|
||||
|
||||
MAINTAINER Garcia MICHEL <garcia@soamichel.fr>
|
||||
|
||||
ENV DOLI_INSTALL_AUTO 1
|
||||
|
||||
ENV DOLI_DB_HOST mysql
|
||||
ENV DOLI_DB_USER doli
|
||||
ENV DOLI_DB_PASSWORD doli_pass
|
||||
ENV DOLI_DB_NAME dolidb
|
||||
|
||||
ENV DOLI_ADMIN_LOGIN admin
|
||||
ENV DOLI_ADMIN_PASSWORD admin
|
||||
ENV DOLI_URL_ROOT 'http://localhost'
|
||||
ENV DOLI_NOCSRFCHECK 0
|
||||
|
||||
ENV WWW_USER_ID 33
|
||||
ENV WWW_GROUP_ID 33
|
||||
|
||||
ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libfreetype6-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libpng-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
&& docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ENV DOLI_VERSION 12.0.1
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
COPY docker-run.sh /usr/local/bin/
|
||||
ENTRYPOINT ["docker-run.sh"]
|
||||
@@ -1,55 +0,0 @@
|
||||
FROM php:7.2-apache-stretch
|
||||
|
||||
MAINTAINER Garcia MICHEL <garcia@soamichel.fr>
|
||||
|
||||
ENV DOLI_INSTALL_AUTO 1
|
||||
|
||||
ENV DOLI_DB_HOST mysql
|
||||
ENV DOLI_DB_USER doli
|
||||
ENV DOLI_DB_PASSWORD doli_pass
|
||||
ENV DOLI_DB_NAME dolidb
|
||||
|
||||
ENV DOLI_ADMIN_LOGIN admin
|
||||
ENV DOLI_ADMIN_PASSWORD admin
|
||||
ENV DOLI_URL_ROOT 'http://localhost'
|
||||
ENV DOLI_NOCSRFCHECK 0
|
||||
|
||||
ENV WWW_USER_ID 33
|
||||
ENV WWW_GROUP_ID 33
|
||||
|
||||
ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
mysql-client \
|
||||
unzip \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
&& docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
COPY docker-run.sh /usr/local/bin/
|
||||
ENTRYPOINT ["docker-run.sh"]
|
||||
@@ -1,55 +0,0 @@
|
||||
FROM php:7.3-apache-stretch
|
||||
|
||||
MAINTAINER Garcia MICHEL <garcia@soamichel.fr>
|
||||
|
||||
ENV DOLI_INSTALL_AUTO 1
|
||||
|
||||
ENV DOLI_DB_HOST mysql
|
||||
ENV DOLI_DB_USER doli
|
||||
ENV DOLI_DB_PASSWORD doli_pass
|
||||
ENV DOLI_DB_NAME dolidb
|
||||
|
||||
ENV DOLI_ADMIN_LOGIN admin
|
||||
ENV DOLI_ADMIN_PASSWORD admin
|
||||
ENV DOLI_URL_ROOT 'http://localhost'
|
||||
ENV DOLI_NOCSRFCHECK 0
|
||||
|
||||
ENV WWW_USER_ID 33
|
||||
ENV WWW_GROUP_ID 33
|
||||
|
||||
ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
mysql-client \
|
||||
unzip \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
&& docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
COPY docker-run.sh /usr/local/bin/
|
||||
ENTRYPOINT ["docker-run.sh"]
|
||||
@@ -29,6 +29,7 @@ RUN apt-get update -y \
|
||||
libzip-dev \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
@@ -36,7 +37,7 @@ RUN apt-get update -y \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
ENV DOLI_VERSION 12.0.1
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
@@ -44,11 +45,9 @@ RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM php:7.4-apache
|
||||
FROM php:5.6-apache-stretch
|
||||
|
||||
MAINTAINER Garcia MICHEL <garcia@soamichel.fr>
|
||||
|
||||
@@ -29,14 +29,15 @@ RUN apt-get update -y \
|
||||
libzip-dev \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
&& docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
ENV DOLI_VERSION 6.0.8
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
@@ -44,11 +45,9 @@ RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
@@ -21,13 +21,15 @@ ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libfreetype6-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
mysql-client \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
@@ -35,7 +37,7 @@ RUN apt-get update -y \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
ENV DOLI_VERSION 6.0.8
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
@@ -43,11 +45,9 @@ RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM php:7.2-apache-stretch
|
||||
FROM php:5.6-apache-stretch
|
||||
|
||||
MAINTAINER Garcia MICHEL <garcia@soamichel.fr>
|
||||
|
||||
@@ -21,13 +21,15 @@ ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libfreetype6-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
mysql-client \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
@@ -35,7 +37,7 @@ RUN apt-get update -y \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
ENV DOLI_VERSION 7.0.5
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
@@ -43,11 +45,9 @@ RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
@@ -21,13 +21,15 @@ ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libfreetype6-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
mysql-client \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
@@ -35,7 +37,7 @@ RUN apt-get update -y \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
ENV DOLI_VERSION 7.0.5
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
@@ -43,11 +45,9 @@ RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM php:7.2-apache-stretch
|
||||
FROM php:5.6-apache-stretch
|
||||
|
||||
MAINTAINER Garcia MICHEL <garcia@soamichel.fr>
|
||||
|
||||
@@ -21,13 +21,15 @@ ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libfreetype6-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
mysql-client \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
@@ -35,7 +37,7 @@ RUN apt-get update -y \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
ENV DOLI_VERSION 8.0.6
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
@@ -43,11 +45,9 @@ RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
@@ -21,13 +21,15 @@ ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libfreetype6-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
mysql-client \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
@@ -35,7 +37,7 @@ RUN apt-get update -y \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
ENV DOLI_VERSION 8.0.6
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
@@ -43,11 +45,9 @@ RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM php:7.3-apache-stretch
|
||||
FROM php:5.6-apache-stretch
|
||||
|
||||
MAINTAINER Garcia MICHEL <garcia@soamichel.fr>
|
||||
|
||||
@@ -21,13 +21,15 @@ ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libfreetype6-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
mysql-client \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
@@ -35,7 +37,7 @@ RUN apt-get update -y \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
ENV DOLI_VERSION 9.0.4
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
@@ -43,11 +45,9 @@ RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
96
images/9.0.4-php5.6/docker-run.sh
Executable file
96
images/9.0.4-php5.6/docker-run.sh
Executable file
@@ -0,0 +1,96 @@
|
||||
#!/bin/bash
|
||||
|
||||
usermod -u ${WWW_USER_ID} www-data
|
||||
groupmod -g ${WWW_GROUP_ID} www-data
|
||||
|
||||
if [ ! -d /var/www/documents ]; then
|
||||
mkdir /var/www/documents
|
||||
fi
|
||||
|
||||
chown -R www-data:www-data /var/www
|
||||
|
||||
if [ ! -f ${PHP_INI_DIR}/conf.d/dolibarr-php.ini ]; then
|
||||
cat <<EOF > ${PHP_INI_DIR}/conf.d/dolibarr-php.ini
|
||||
date.timezone = ${PHP_INI_DATE_TIMEZONE}
|
||||
sendmail_path = /usr/sbin/sendmail -t -i
|
||||
EOF
|
||||
fi
|
||||
|
||||
if [ ! -f /var/www/html/conf/conf.php ]; then
|
||||
cat <<EOF > /var/www/html/conf/conf.php
|
||||
<?php
|
||||
\$dolibarr_main_url_root='${DOLI_URL_ROOT}';
|
||||
\$dolibarr_main_document_root='/var/www/html';
|
||||
\$dolibarr_main_url_root_alt='/custom';
|
||||
\$dolibarr_main_document_root_alt='/var/www/html/custom';
|
||||
\$dolibarr_main_data_root='/var/www/documents';
|
||||
\$dolibarr_main_db_host='${DOLI_DB_HOST}';
|
||||
\$dolibarr_main_db_port='3306';
|
||||
\$dolibarr_main_db_name='${DOLI_DB_NAME}';
|
||||
\$dolibarr_main_db_prefix='llx_';
|
||||
\$dolibarr_main_db_user='${DOLI_DB_USER}';
|
||||
\$dolibarr_main_db_pass='${DOLI_DB_PASSWORD}';
|
||||
\$dolibarr_main_db_type='mysqli';
|
||||
EOF
|
||||
|
||||
chown www-data:www-data /var/www/html/conf/conf.php
|
||||
chmod 400 /var/www/html/conf/conf.php
|
||||
fi
|
||||
|
||||
if [ ${DOLI_INSTALL_AUTO} -eq 1 ]; then
|
||||
r=1
|
||||
while [ $r -ne 0 ]; do
|
||||
mysql -u ${DOLI_DB_USER} --protocol tcp -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} -e "status" > /dev/null 2>&1
|
||||
r=$?
|
||||
if [ $r -ne 0 ]; then
|
||||
echo "Waiting that SQL database is up..."
|
||||
sleep 2
|
||||
fi
|
||||
done
|
||||
|
||||
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} ${DOLI_DB_NAME} -e "SELECT * FROM llx_const" > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
for fileSQL in /var/www/html/install/mysql/tables/*.sql; do
|
||||
if [[ ${fileSQL} != *.key.sql ]]; then
|
||||
echo "Importing table from `basename ${fileSQL}`..."
|
||||
sed -i 's/--.*//g;' ${fileSQL} # remove all comment
|
||||
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} ${DOLI_DB_NAME} < ${fileSQL}
|
||||
fi
|
||||
done
|
||||
|
||||
for fileSQL in /var/www/html/install/mysql/tables/*.key.sql; do
|
||||
echo "Importing table key from `basename ${fileSQL}`..."
|
||||
sed -i 's/--.*//g;' ${fileSQL}
|
||||
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} ${DOLI_DB_NAME} < ${fileSQL} > /dev/null 2>&1
|
||||
done
|
||||
|
||||
for fileSQL in /var/www/html/install/mysql/functions/*.sql; do
|
||||
echo "Importing `basename ${fileSQL}`..."
|
||||
sed -i 's/--.*//g;' ${fileSQL}
|
||||
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} ${DOLI_DB_NAME} < ${fileSQL} > /dev/null 2>&1
|
||||
done
|
||||
|
||||
for fileSQL in /var/www/html/install/mysql/data/*.sql; do
|
||||
echo "Importing data from `basename ${fileSQL}`..."
|
||||
sed -i 's/--.*//g;' ${fileSQL}
|
||||
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} ${DOLI_DB_NAME} < ${fileSQL} > /dev/null 2>&1
|
||||
done
|
||||
|
||||
echo "Create SuperAdmin account ..."
|
||||
pass_crypted=`echo -n ${DOLI_ADMIN_PASSWORD} | md5sum | awk '{print $1}'`
|
||||
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} ${DOLI_DB_NAME} -e "INSERT INTO llx_user (entity, login, pass_crypted, lastname, admin, statut) VALUES (0, '${DOLI_ADMIN_LOGIN}', '${pass_crypted}', 'SuperAdmin', 1, 1);" > /dev/null 2>&1
|
||||
|
||||
echo "Set some default const ..."
|
||||
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} ${DOLI_DB_NAME} -e "DELETE FROM llx_const WHERE name='MAIN_VERSION_LAST_INSTALL';" > /dev/null 2>&1
|
||||
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} ${DOLI_DB_NAME} -e "DELETE FROM llx_const WHERE name='MAIN_NOT_INSTALLED';" > /dev/null 2>&1
|
||||
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} ${DOLI_DB_NAME} -e "DELETE FROM llx_const WHERE name='MAIN_LANG_DEFAULT';" > /dev/null 2>&1
|
||||
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} ${DOLI_DB_NAME} -e "INSERT INTO llx_const(name,value,type,visible,note,entity) values('MAIN_VERSION_LAST_INSTALL', '${DOLI_VERSION}', 'chaine', 0, 'Dolibarr version when install', 0);" > /dev/null 2>&1
|
||||
mysql -u ${DOLI_DB_USER} -p${DOLI_DB_PASSWORD} -h ${DOLI_DB_HOST} ${DOLI_DB_NAME} -e "INSERT INTO llx_const(name,value,type,visible,note,entity) VALUES ('MAIN_LANG_DEFAULT', 'auto', 'chaine', 0, 'Default language', 1);" > /dev/null 2>&1
|
||||
|
||||
touch /var/www/documents/install.lock
|
||||
chown www-data:www-data /var/www/documents/install.lock
|
||||
chmod 400 /var/www/documents/install.lock
|
||||
fi
|
||||
fi
|
||||
|
||||
exec apache2-foreground
|
||||
@@ -1,55 +0,0 @@
|
||||
FROM php:7.2-apache-stretch
|
||||
|
||||
MAINTAINER Garcia MICHEL <garcia@soamichel.fr>
|
||||
|
||||
ENV DOLI_INSTALL_AUTO 1
|
||||
|
||||
ENV DOLI_DB_HOST mysql
|
||||
ENV DOLI_DB_USER doli
|
||||
ENV DOLI_DB_PASSWORD doli_pass
|
||||
ENV DOLI_DB_NAME dolidb
|
||||
|
||||
ENV DOLI_ADMIN_LOGIN admin
|
||||
ENV DOLI_ADMIN_PASSWORD admin
|
||||
ENV DOLI_URL_ROOT 'http://localhost'
|
||||
ENV DOLI_NOCSRFCHECK 0
|
||||
|
||||
ENV WWW_USER_ID 33
|
||||
ENV WWW_GROUP_ID 33
|
||||
|
||||
ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
mysql-client \
|
||||
unzip \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
&& docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
COPY docker-run.sh /usr/local/bin/
|
||||
ENTRYPOINT ["docker-run.sh"]
|
||||
@@ -21,13 +21,15 @@ ENV PHP_INI_DATE_TIMEZONE 'UTC'
|
||||
|
||||
RUN apt-get update -y \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libfreetype6-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
mysql-client \
|
||||
default-mysql-client \
|
||||
unzip \
|
||||
&& apt-get autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
|
||||
&& docker-php-ext-install -j$(nproc) calendar intl mysqli pdo_mysql gd soap zip \
|
||||
@@ -35,7 +37,7 @@ RUN apt-get update -y \
|
||||
&& docker-php-ext-install -j$(nproc) ldap && \
|
||||
mv ${PHP_INI_DIR}/php.ini-production ${PHP_INI_DIR}/php.ini
|
||||
|
||||
ARG DOLI_VERSION
|
||||
ENV DOLI_VERSION 9.0.4
|
||||
|
||||
# Get Dolibarr
|
||||
ADD https://github.com/Dolibarr/dolibarr/archive/${DOLI_VERSION}.zip /tmp/dolibarr.zip
|
||||
@@ -43,11 +45,9 @@ RUN unzip -q /tmp/dolibarr.zip -d /tmp/dolibarr && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/htdocs/* /var/www/html/ && \
|
||||
ln -s /var/www/html /var/www/htdocs && \
|
||||
cp -r /tmp/dolibarr/dolibarr-${DOLI_VERSION}/scripts /var/www/ && \
|
||||
rm -rf /tmp/dolibarr && \
|
||||
rm -rf /tmp/* && \
|
||||
mkdir -p /var/www/documents
|
||||
|
||||
ENV DOLI_VERSION=${DOLI_VERSION}
|
||||
|
||||
EXPOSE 80
|
||||
VOLUME /var/www/documents
|
||||
|
||||
|
||||
41
test.sh
Executable file
41
test.sh
Executable file
@@ -0,0 +1,41 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
BASE_DIR="$( cd "$(dirname "$0")" && pwd )"
|
||||
|
||||
DOLI_VER=${1}
|
||||
PHP_VER=${2:-""}
|
||||
|
||||
rm -rf ${BASE_DIR}/docker-compose-links/ && mkdir ${BASE_DIR}/docker-compose-links
|
||||
|
||||
for directory in $(ls ${BASE_DIR}/images); do
|
||||
dolibarrVersion=`echo ${directory} | cut -d\- -f1`
|
||||
phpVersion=`echo ${directory} | cut -d\- -f2`
|
||||
|
||||
dolibarrMajor=`echo ${dolibarrVersion} | cut -d. -f1`
|
||||
phpMajor=`echo ${phpVersion} | cut -d. -f1`
|
||||
|
||||
ln -nfs ${BASE_DIR}/images/${directory} ${BASE_DIR}/docker-compose-links/${directory}
|
||||
if [ "${phpMajor}" = "php7" ]; then
|
||||
ln -nfs ${BASE_DIR}/images/${directory} ${BASE_DIR}/docker-compose-links/${dolibarrVersion}
|
||||
fi
|
||||
done
|
||||
|
||||
echo "Testing for:"
|
||||
echo " - Dolibarr ${DOLI_VER}"
|
||||
if [ "${PHP_VER}" = "" ]; then
|
||||
echo " - PHP most recent"
|
||||
echo "Building image ..."
|
||||
DOLI_VERSION=${DOLI_VER} PHP_VERSION="" docker-compose -f ${BASE_DIR}/docker-compose.yml down 1> /dev/null 2>/dev/null
|
||||
DOLI_VERSION=${DOLI_VER} PHP_VERSION="" docker-compose -f ${BASE_DIR}/docker-compose.yml build web
|
||||
DOLI_VERSION=${DOLI_VER} PHP_VERSION="" docker-compose -f ${BASE_DIR}/docker-compose.yml up --force-recreate web
|
||||
DOLI_VERSION=${DOLI_VER} PHP_VERSION="" docker-compose -f ${BASE_DIR}/docker-compose.yml down
|
||||
else
|
||||
echo " - PHP ${PHP_VER}"
|
||||
echo "Building image ..."
|
||||
DOLI_VERSION=${DOLI_VER} PHP_VERSION="-php${PHP_VER}" docker-compose -f ${BASE_DIR}/docker-compose.yml down 1> /dev/null
|
||||
DOLI_VERSION=${DOLI_VER} PHP_VERSION="-php${PHP_VER}" docker-compose -f ${BASE_DIR}/docker-compose.yml build web
|
||||
DOLI_VERSION=${DOLI_VER} PHP_VERSION="-php${PHP_VER}" docker-compose -f ${BASE_DIR}/docker-compose.yml up --force-recreate web
|
||||
DOLI_VERSION=${DOLI_VER} PHP_VERSION="-php${PHP_VER}" docker-compose -f ${BASE_DIR}/docker-compose.yml down
|
||||
fi
|
||||
101
update.sh
101
update.sh
@@ -2,63 +2,92 @@
|
||||
|
||||
set -e
|
||||
|
||||
versions=( "6.0.8" "7.0.5" "8.0.6" "9.0.4" "10.0.7" "11.0.5" "12.0.1" )
|
||||
DOCKER_BUILD=${DOCKER_BUILD:-0}
|
||||
DOCKER_PUSH=${DOCKER_PUSH:-0}
|
||||
|
||||
BASE_DIR="$( cd "$(dirname "$0")" && pwd )"
|
||||
|
||||
source "${BASE_DIR}/versions.sh"
|
||||
|
||||
tags=""
|
||||
|
||||
rm -rf images/
|
||||
rm -rf ${BASE_DIR}/images ${BASE_DIR}/docker-compose-links
|
||||
|
||||
for version in ${versions[@]}; do
|
||||
echo "Generate Dockerfile for Dolibarr ${version}"
|
||||
for dolibarrVersion in ${DOLIBARR_VERSIONS[@]}; do
|
||||
echo "Generate Dockerfile for Dolibarr ${dolibarrVersion}"
|
||||
|
||||
tags="${tags}\n\* "
|
||||
dolibarrMajor=`echo ${dolibarrVersion} | cut -d. -f1`
|
||||
|
||||
# Mapping version according https://wiki.dolibarr.org/index.php/Versions
|
||||
# Regarding PHP Supported version : https://www.php.net/supported-versions.php
|
||||
if [ "$version" = "6.0.8" ]; then #Version discontinued
|
||||
php_versions=( "7.1" )
|
||||
elif [ "$version" = "7.0.5" ]; then
|
||||
php_versions=( "7.2" )
|
||||
elif [ "$version" = "8.0.6" ]; then
|
||||
php_versions=( "7.2" )
|
||||
elif [ "$version" = "9.0.4" ]; then
|
||||
php_versions=( "7.2" "7.3" )
|
||||
elif [ "$version" = "10.0.7" ]; then
|
||||
php_versions=( "7.2" "7.3" )
|
||||
elif [ "$version" = "11.0.5" ]; then
|
||||
php_versions=( "7.2" "7.3" "7.4" )
|
||||
elif [ "$version" = "12.0.1" ]; then
|
||||
php_versions=( "7.2" "7.3" "7.4" )
|
||||
if [ "${dolibarrMajor}" = "6" ]; then #Version discontinued
|
||||
php_base_images=( "5.6-apache-stretch" "7.1-apache-stretch" )
|
||||
elif [ "${dolibarrMajor}" = "7" ]; then
|
||||
php_base_images=( "5.6-apache-stretch" "7.2-apache-stretch" )
|
||||
elif [ "${dolibarrMajor}" = "8" ]; then
|
||||
php_base_images=( "5.6-apache-stretch" "7.2-apache-stretch" )
|
||||
elif [ "${dolibarrMajor}" = "9" ]; then
|
||||
php_base_images=( "5.6-apache-stretch" "7.3-apache-stretch" )
|
||||
elif [ "${dolibarrMajor}" = "10" ]; then
|
||||
php_base_images=( "5.6-apache-stretch" "7.3-apache-stretch" )
|
||||
elif [ "${dolibarrMajor}" = "11" ]; then
|
||||
php_base_images=( "5.6-apache-stretch" "7.4-apache" )
|
||||
elif [ "${dolibarrMajor}" = "12" ]; then
|
||||
php_base_images=( "5.6-apache-stretch" "7.4-apache" )
|
||||
else
|
||||
php_versions=( "7.3" "7.4" )
|
||||
php_base_images=( "7.4-apache" )
|
||||
fi
|
||||
|
||||
for php_version in ${php_versions[@]}; do
|
||||
currentTag="${version}-php${php_version}"
|
||||
dir="images/${currentTag}"
|
||||
for php_base_image in ${php_base_images[@]}; do
|
||||
|
||||
php_version=`echo ${php_base_image} | cut -d\- -f1`
|
||||
currentTag="${dolibarrVersion}-php${php_version}"
|
||||
dir=${BASE_DIR}/"images/${currentTag}"
|
||||
tags="${tags}${currentTag} "
|
||||
|
||||
mkdir -p $dir
|
||||
|
||||
if [ -f Dockerfile_${php_version}.template ]; then
|
||||
sed 's/%PHP_VERSION%/'"${php_version}"'/;' Dockerfile_${php_version}.template > ${dir}/Dockerfile
|
||||
if [ "${php_version}" = "7.4" ]; then
|
||||
gd_config_args="\-\-with\-freetype\ \-\-with\-jpeg"
|
||||
else
|
||||
sed 's/%PHP_VERSION%/'"${php_version}"'/;' Dockerfile.template > ${dir}/Dockerfile
|
||||
gd_config_args="\-\-with\-png\-dir=\/usr\ \-\-with-jpeg-dir=\/usr"
|
||||
fi
|
||||
|
||||
cp docker-run.sh ${dir}/docker-run.sh
|
||||
mkdir -p ${dir}
|
||||
cat ${BASE_DIR}/Dockerfile.template | \
|
||||
sed 's/%PHP_BASE_IMAGE%/'"${php_base_image}"'/;' | \
|
||||
sed 's/%DOLI_VERSION%/'"${dolibarrVersion}"'/;' | \
|
||||
sed 's/%GD_CONFIG_ARG%/'"${gd_config_args}"'/;' \
|
||||
> ${dir}/Dockerfile
|
||||
|
||||
#docker build --compress --tag tuxgasy/dolibarr:${currentTag} --build-arg DOLI_VERSION=${version} ${dir}
|
||||
#docker push tuxgasy/dolibarr:${currentTag}
|
||||
cp ${BASE_DIR}/docker-run.sh ${dir}/docker-run.sh
|
||||
|
||||
if [ ${DOCKER_BUILD} -eq 1 ]; then
|
||||
docker build --compress --tag tuxgasy/dolibarr:${currentTag} ${dir}
|
||||
fi
|
||||
if [ ${DOCKER_PUSH} -eq 1 ]; then
|
||||
docker push tuxgasy/dolibarr:${currentTag}
|
||||
fi
|
||||
done
|
||||
|
||||
#docker tag tuxgasy/dolibarr:${currentTag} tuxgasy/dolibarr:${version}
|
||||
#docker push tuxgasy/dolibarr:${version}
|
||||
if [ ${DOCKER_BUILD} -eq 1 ]; then
|
||||
docker tag tuxgasy/dolibarr:${currentTag} tuxgasy/dolibarr:${dolibarrVersion}
|
||||
docker tag tuxgasy/dolibarr:${currentTag} tuxgasy/dolibarr:${dolibarrMajor}
|
||||
fi
|
||||
if [ ${DOCKER_PUSH} -eq 1 ]; then
|
||||
docker push tuxgasy/dolibarr:${dolibarrVersion}
|
||||
docker push tuxgasy/dolibarr:${dolibarrMajor}
|
||||
fi
|
||||
|
||||
tags="${tags}${version}"
|
||||
tags="${tags}${dolibarrVersion} ${dolibarrMajor}"
|
||||
done
|
||||
|
||||
#docker tag tuxgasy/dolibarr:${version} tuxgasy/dolibarr:latest
|
||||
#docker push tuxgasy/dolibarr:latest
|
||||
if [ ${DOCKER_BUILD} -eq 1 ]; then
|
||||
docker tag tuxgasy/dolibarr:${dolibarrVersion} tuxgasy/dolibarr:latest
|
||||
fi
|
||||
if [ ${DOCKER_PUSH} -eq 1 ]; then
|
||||
docker push tuxgasy/dolibarr:latest
|
||||
fi
|
||||
|
||||
tags="${tags} latest"
|
||||
|
||||
sed 's/%TAGS%/'"${tags}"'/' README.template > README.md
|
||||
sed 's/%TAGS%/'"${tags}"'/' ${BASE_DIR}/README.template > ${BASE_DIR}/README.md
|
||||
|
||||
5
versions.sh
Normal file
5
versions.sh
Normal file
@@ -0,0 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
DOLIBARR_VERSIONS=( "6.0.8" "7.0.5" "8.0.6" "9.0.4" "10.0.7" "11.0.5" "12.0.1" )
|
||||
Reference in New Issue
Block a user