Merge branch 'ent-5236-docker-centos-7' into 'develop'

Docker centos7

See merge request artica/pandorafms!3136
This commit is contained in:
Alejandro Fraguas 2020-05-14 16:07:18 +02:00
commit 5f598c2dcc
4 changed files with 77 additions and 97 deletions

0
pandora_server/util/pandora_db.pl Normal file → Executable file
View File

2
tests/.gitignore vendored
View File

@ -1 +1,3 @@
*.pyc
geckodriver.log
wmic

View File

@ -1,65 +1,46 @@
FROM centos:centos6
MAINTAINER Pandora FMS Team <info@pandorafms.com>
RUN { \
echo '[EPEL]'; \
echo 'name = CentOS Epel'; \
echo 'baseurl = http://dl.fedoraproject.org/pub/epel/6/x86_64'; \
echo 'enabled=1'; \
echo 'gpgcheck=0'; \
echo ''; \
echo '[remi-php72]'; \
echo 'name=Remi php72'; \
echo 'baseurl=http://rpms.remirepo.net/enterprise/6/php72/x86_64/'; \
echo 'enabled=1'; \
echo 'gpgcheck=0'; \
echo ''; \
echo '[remi-safe]'; \
echo 'name=Safe Remis RPM repository'; \
echo 'mirrorlist=http://cdn.remirepo.net/enterprise/$releasever/safe/mirror'; \
echo 'enabled=1'; \
echo 'gpgcheck=0'; \
echo ''; \
} > /etc/yum.repos.d/extra_repos.repo
FROM centos:7
RUN { \
echo '[artica_pandorafms]'; \
echo 'name=CentOS6 - PandoraFMS official repo'; \
echo 'baseurl=http://artica.es/centos6'; \
echo 'name=CentOS7 - PandoraFMS official repo'; \
echo 'baseurl=http://firefly.artica.es/centos7'; \
echo 'gpgcheck=0'; \
echo 'enabled=1'; \
} > /etc/yum.repos.d/pandorafms.repo
RUN yum -y update; yum clean all;
RUN yum --disablerepo=updates install -y firefox
# Generic dependencies
RUN yum install -y \
# Pandora FMS dependencies.
RUN yum install -y epel-release vim wget bzip2 curl && \
yum install yum-utils && \
yum install -y https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm && \
yum-config-manager --disable mysql80-community && \
yum-config-manager --enable mysql57-community && \
yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm && \
yum-config-manager --enable remi-php74 && \
yum install -y gtk3 python-pip \
python-pip \
xorg-x11-server-Xvfb; yum clean all;
RUN pip install pyvirtualdisplay
RUN pip install 'selenium==2.53.0'
RUN pip install unittest2
RUN pip install testtools
# Pandora FMS Console dependencies
RUN yum install -y \
git \
firefox \
xorg-x11-server-Xvfb \
x11vnc && \
wget https://github.com/mozilla/geckodriver/releases/download/v0.26.0/geckodriver-v0.26.0-linux64.tar.gz && \
tar xvzf geckodriver-v0.26.0-linux64.tar.gz && \
mv geckodriver /usr/bin/ && rm geckodriver-v0.26.0-linux64.tar.gz && \
pip install pyvirtualdisplay && \
pip install "selenium==3.141" && \
pip install unittest2 && \
pip install testtools && \
yum install -y git \
httpd \
cronie \
ntp \
openldap \
nfdump \
wget \
curl \
openldap \
plymouth \
xterm \
php \
php-gd \
graphviz \
php-mysql \
php-mysqlnd \
php-pear-DB \
php-pear \
php-pdo \
@ -73,16 +54,11 @@ RUN yum install -y \
nmap \
xprobe2 \
mysql-server \
mysql; yum clean all;
# Pandora FMS Server dependencies
RUN yum install -y \
mysql \
ntp \
vim \
htop \
nano \
postfix \
wmic \
perl-HTML-Tree \
perl-DBI \
perl-DBD-mysql \
@ -95,6 +71,7 @@ RUN yum install -y \
net-tools \
perl-IO-Socket-INET6 \
perl-Socket6 \
perl-Sys-Syslog \
nmap \
sudo \
xprobe2 \
@ -111,20 +88,19 @@ RUN yum install -y \
freetype-devel \
fontconfig-devel \
libstdc++ \
perl-Test-Simple; yum clean all;
gettext \
cpanminus && \
cpanm Geo::IP && \
mkdir -p /opt/phantomjs/bin && cd /opt/phantomjs/bin && \
wget https://netcologne.dl.sourceforge.net/project/pandora/Tools%20and%20dependencies%20%28All%20versions%29/DEB%20Debian%2C%20Ubuntu/phantomjs && \
chmod +x phantomjs && \
ln -s /opt/phantomjs/bin/phantomjs /usr/bin/ && \
yum update -y && \
echo -e '#!/bin/bash\nhttpd -k $1\n' > /etc/init.d/httpd && \
chmod +x /etc/init.d/httpd && \
yum clean all
RUN wget http://rpmfind.net/linux/centos/6.9/os/i386/Packages/gettext-0.17-18.el6.i686.rpm; \
yum localinstall -y gettext-0.17-18.el6.i686.rpm; \
rm -rf gettext-0.17-18.el6.i686.rpm; \
wget http://ftp.tu-chemnitz.de/pub/linux/dag/redhat/el6/en/x86_64/rpmforge/RPMS/perl-Geo-IP-1.38-1.el6.rf.x86_64.rpm; \
yum localinstall -y perl-Geo-IP-1.38-1.el6.rf.x86_64.rpm; \
rm -rf perl-Geo-IP-1.38-1.el6.rf.x86_64.rpm;
#Install phantomjs required for export graph pdf.
RUN mkdir -p /opt/phantomjs/bin && cd /opt/phantomjs/bin; \
wget https://netcologne.dl.sourceforge.net/project/pandora/Tools%20and%20dependencies%20%28All%20versions%29/DEB%20Debian%2C%20Ubuntu/phantomjs; \
chmod +x phantomjs; \
ln -s /opt/phantomjs/bin/phantomjs /usr/bin/;
ADD wmic /usr/bin/
# Install debugg dependencies.
RUN yum install -y \
@ -133,6 +109,7 @@ RUN yum install -y \
gcc \
gcc-c++ \
autoconf \
file \
automake && \
pecl install Xdebug && \
git clone https://github.com/tideways/php-xhprof-extension && \
@ -142,7 +119,8 @@ RUN yum install -y \
make && \
make install && \
cd .. && \
rm -rf php-xhprof-extension
rm -rf php-xhprof-extension && \
yum clean all
#Exposing ports for: HTTP, SNMP Traps, Tentacle protocol
EXPOSE 80 162/udp 41121

View File

@ -10,7 +10,7 @@ if ('DISPLAY' not in os.environ):
display.start()
# Go to the installation page.
browser = webdriver.Firefox()
browser = webdriver.Firefox(timeout=15)
browser.implicitly_wait(5)
browser.get('http://localhost/pandora_console/install.php')
assert("Pandora FMS - Installation Wizard" in browser.title)