@@ -35,30 +35,53 @@ VOLUME /var/lib/mysql
35
35
36
36
# speed up build using docker cache
37
37
RUN apt update -y
38
- RUN apt -o Dpkg::Options::="--force-confdef" -y install software-properties-common \
38
+ RUN apt -o Dpkg::Options::="--force-confdef" -y -q install software-properties-common \
39
39
ntp ca-certificates unzip curl sudo cron locate tar telnet wget logrotate dos2unix ntpdate htop \
40
40
iotop vim iftop smbclient git python3 python3-pip libexpat1 ssl-cert \
41
41
apt-transport-https xvfb cutycapt xauth at mariadb-client espeak net-tools nmap ffmpeg usbutils \
42
42
gettext libcurl3-gnutls chromium librsync-dev ssl-cert iputils-ping \
43
43
apache2 apache2-utils libexpat1 ssl-cert \
44
44
php libapache2-mod-php php-json php-mysql php-curl php-gd php-imap php-xml php-opcache php-soap php-xmlrpc \
45
- php-common php-dev php-zip php-ssh2 php-mbstring php-ldap php-yaml php-snmp && apt -y remove brltty
45
+ php-common php-dev php-zip php-ssh2 php-mbstring php-ldap php-yaml php-snmp \
46
+ npm && \
47
+ # install npm, and node with fixed version
48
+ npm install n -g && n 20.18.1 && \
49
+ # clean
50
+ apt -y remove brltty
46
51
47
- COPY install/install.sh /tmp/
48
- RUN sh /tmp/install.sh -s 1 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
49
- RUN sh /tmp/install.sh -s 2 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
50
- RUN sh /tmp/install.sh -s 3 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
51
- RUN sh /tmp/install.sh -s 4 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
52
- RUN sh /tmp/install.sh -s 5 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
52
+ COPY --chown=root:root --chmod=550 install/install.sh /root/
53
+ # install step by step : step_1_upgrade ... useless, using the LATEST debian
54
+ # RUN sh /root/install.sh -s 1 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
55
+ # step_2_mainpackage ... useless, already installed before
56
+ # RUN sh /root/install.sh -s 2 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
57
+ # step_3_database ... only if $DATABASE
58
+ RUN sh /root/install.sh -s 3 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
59
+ # step_4_apache
60
+ RUN sh /root/install.sh -s 4 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
61
+ # step_5_php : install php with extensions
62
+ RUN sh /root/install.sh -s 5 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
63
+ # step 6 : copy jeedom source files from local
53
64
COPY . ${WEBSERVER_HOME}
54
- RUN sh /tmp/install.sh -s 7 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
55
- RUN sh /tmp/install.sh -s 8 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
56
- RUN sh /tmp/install.sh -s 9 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
57
- RUN sh /tmp/install.sh -s 10 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
58
- RUN sh /tmp/install.sh -s 11 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
65
+ # step_7_jeedom_customization_mariadb
66
+ RUN sh /root/install.sh -s 7 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
67
+ # step_8_jeedom_customization
68
+ RUN sh /root/install.sh -s 8 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
69
+ # step_9_jeedom_configuration
70
+ RUN sh /root/install.sh -s 9 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
71
+ # step_10_jeedom_installation : install composer
72
+ COPY --from=composer/composer:latest-bin /composer /usr/bin/composer
73
+ RUN composer install --no-ansi --no-dev --no-interaction --no-plugins --no-progress --no-scripts --optimize-autoloader
74
+ # RUN sh /root/install.sh -s 10 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
75
+ # step_11_jeedom_post
76
+ RUN sh /root/install.sh -s 11 -v ${VERSION} -w ${WEBSERVER_HOME} -d ${DATABASE} -i docker
77
+
59
78
RUN apt-get clean && rm -rf /var/lib/apt/lists/*
60
79
RUN echo >${WEBSERVER_HOME}/initialisation
61
80
81
+ # check if apache is running
82
+ HEALTHCHECK --interval=1m --timeout=3s --retries=5 --start-period=10s --start-interval=5s \
83
+ CMD curl -f http://localhost/ || exit 1
84
+
62
85
WORKDIR ${WEBSERVER_HOME}
63
86
EXPOSE 80
64
87
EXPOSE 443
0 commit comments