tools/Dockerfile
Arnaud G. GIBERT 607eb5eee3 - Add RedPanda Console tool,
- Now support docker-tools V 1.3.x.
2024-11-24 23:53:46 +01:00

81 lines
8.4 KiB
Docker

# Rx3-Docker/Tools Docker Image
#-------------------------------------------------------------------------------
ARG IMG_FROM_URL="rx3-docker/php-apache:latest"
FROM ${IMG_FROM_URL}
ARG IMG_NAME
ARG IMG_NAME_FULL
ARG IMG_VERSION
ARG IMG_MAINTAINER
LABEL org.rx3.${IMG_NAME}.name=${IMG_NAME_FULL}
LABEL org.rx3.${IMG_NAME}.version=${IMG_VERSION}
LABEL org.rx3.${IMG_NAME}.maintainer=${IMG_MAINTAINER}
LABEL maintainer=${IMG_MAINTAINER}
ARG APACHE_DOC_ROOT
ARG REDPANDA_CONSOLE_PORT
ARG PHPPGADMIN_OWNER="mentax"
ARG PHPPGADMIN_COMMIT="d0d35701af8644788f84b808d21e7fd04213baa0"
ARG PHPPGADMIN_HOME="${APACHE_DOC_ROOT}/phppgadmin"
ARG PHPPGADMIN_CONFIG="${PHPPGADMIN_HOME}/conf/config.inc.php"
ARG REDPANDA_CONSOLE_HOME="/opt/appl/redpanda_console"
ARG REDPANDA_CONSOLE_CONFIG="${REDPANDA_CONSOLE_HOME}/etc/redpanda-console-config.yaml"
#-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ARG TOOLSD='#!/bin/bash \n\
\n\
sed -i "s/$conf\[`servers`\]\[0\]\[`desc`\] = `PostgreSQL`;/$conf\[`servers`\]\[0\]\[`desc`\] = `${POSTGRESQL_SERVER_NAME}`;/" '${PHPPGADMIN_CONFIG}' \n\
sed -i "s/$conf\[`servers`\]\[0\]\[`host`\] = ``;/$conf\[`servers`\]\[0\]\[`host`\] = `${POSTGRESQL_HOST}`;/" '${PHPPGADMIN_CONFIG}' \n\
sed -i "s/$conf\[`servers`\]\[0\]\[`port`\] = 5432;/$conf\[`servers`\]\[0\]\[`port`\] = ${POSTGRESQL_PORT};/" '${PHPPGADMIN_CONFIG}' \n\
sed -i "s/$conf\[`extra_login_security`\] = true;/$conf\[`extra_login_security`\] = false;/" '${PHPPGADMIN_CONFIG}''
#-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
#-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ARG REDPANDA_CONSOLED='#!/bin/bash \n\
\n\
sed -i "s/^ - broker-/ #- broker-/" '${REDPANDA_CONSOLE_CONFIG}' \n\
\n\
for broker in ${KAFKA_BROKERS} \n\
do \n\
sed -i "s/^ brokers:/ brokers:\\n - ${broker}/" '${REDPANDA_CONSOLE_CONFIG}' \n\
done \n\
\n\
sed -i "s/^#server:/server:/" '${REDPANDA_CONSOLE_CONFIG}' \n\
sed -i "s/^ #listenPort: 8080/ listenPort: '${REDPANDA_CONSOLE_PORT}'/" '${REDPANDA_CONSOLE_CONFIG}''
#-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
#-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ARG REDPANDA_CONSOLED_INI='[program:redpanda_consoled] \n\
directory='${REDPANDA_CONSOLE_HOME}' \n\
command='${REDPANDA_CONSOLE_HOME}'/bin/redpanda-console -config.filepath '${REDPANDA_CONSOLE_CONFIG}''
#-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
#RUN urpmi --force wget phpmyadmin \
RUN urpmi --force wget \
&& mkdir -p /var/www/appl \
&& wget -q -O- "https://github.com/${PHPPGADMIN_OWNER}/phppgadmin/archive/${PHPPGADMIN_COMMIT}.tar.gz" | tar xzf - -C ${APACHE_DOC_ROOT} \
&& mv ${APACHE_DOC_ROOT}/phppgadmin-${PHPPGADMIN_COMMIT} ${APACHE_DOC_ROOT}/phppgadmin \
&& sed -i 's/$_SERVER\['\''REQUEST_URI'\''\]/preg_replace(\"\/^\\\/phppgadmin\\\/\/", "", $_SERVER['\''REQUEST_URI'\''])/g' ${APACHE_DOC_ROOT}/phppgadmin/display.php \
&& cp ${APACHE_DOC_ROOT}/phppgadmin/conf/config.inc.php-dist ${APACHE_DOC_ROOT}/phppgadmin/conf/config.inc.php \
&& echo -e "${TOOLSD}" | sed -e "s/\`/'/g" -e 's/ *$//' > /etc/init.d/toolsd \
&& chmod a+x /etc/init.d/toolsd \
&& ln -s /etc/init.d/toolsd /etc/rcD.d/S40toolsd \
&& mkdir -p ${REDPANDA_CONSOLE_HOME}/bin ${REDPANDA_CONSOLE_HOME}/etc \
&& wget -q -O- "https://github.com/redpanda-data/console/releases/download/v2.7.2/redpanda_console_2.7.2_linux_amd64.tar.gz" | tar xzf - -C ${REDPANDA_CONSOLE_HOME}/bin \
&& wget -q -O- "https://docs.redpanda.com/current/shared/_attachments/redpanda-console-config.yaml" > ${REDPANDA_CONSOLE_CONFIG} \
&& echo -e "${REDPANDA_CONSOLED}" | sed -e "s/\`/'/g" -e 's/ *$//' > /etc/init.d/redpanda_consoled \
&& chmod a+x /etc/init.d/redpanda_consoled \
&& ln -s /etc/init.d/redpanda_consoled /etc/rcD.d/S45redpanda_consoled \
&& echo -e "${REDPANDA_CONSOLED_INI}" | sed -e "s/\`/'/g" -e 's/ *$//' > /etc/supervisord.d/redpanda_consoled.ini