Docker centos7

This commit is contained in:
fbsanchez 2020-04-02 17:08:52 +02:00
parent 81e7e9a7d9
commit 32cdb3d1cf
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,109 +1,86 @@
FROM centos:centos6
MAINTAINER Pandora FMS Team <info@pandorafms.com>
FROM centos:centos7
RUN { \
echo '[EPEL]'; \
echo 'name = CentOS Epel'; \
echo 'baseurl = http://dl.fedoraproject.org/pub/epel/6/x86_64'; \
echo 'enabled=1'; \
echo '[artica_pandorafms]'; \
echo 'name=CentOS7 - PandoraFMS official repo'; \
echo 'baseurl=http://firefly.artica.es/centos7'; \
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
} > /etc/yum.repos.d/pandorafms.repo
RUN { \
echo '[artica_pandorafms]'; \
echo 'name=CentOS6 - PandoraFMS official repo'; \
echo 'baseurl=http://artica.es/centos6'; \
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-pear-DB \
php \
php-gd \
graphviz \
php-mysqlnd \
php-pear-DB \
php-pear \
php-pdo \
php-mbstring \
php-ldap \
php-snmp \
php-ldap \
php-common \
php-zip \
php-xmlrpc \
php-mbstring \
php-ldap \
php-snmp \
php-ldap \
php-common \
php-zip \
php-xmlrpc \
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 \
perl-libwww-perl \
perl-XML-Simple \
perl-XML-SAX \
perl-NetAddr-IP \
perl-HTML-Tree \
perl-DBI \
perl-DBD-mysql \
perl-libwww-perl \
perl-XML-Simple \
perl-XML-SAX \
perl-NetAddr-IP \
perl-Scope-Guard \
net-snmp \
net-tools \
perl-IO-Socket-INET6 \
perl-Socket6 \
nmap \
sudo \
xprobe2 \
make \
perl-CPAN \
perl-JSON \
net-snmp-perl \
perl-Time-HiRes \
perl-XML-Twig \
net-snmp \
net-tools \
perl-IO-Socket-INET6 \
perl-Socket6 \
perl-Sys-Syslog \
nmap \
sudo \
xprobe2 \
make \
perl-CPAN \
perl-JSON \
net-snmp-perl \
perl-Time-HiRes \
perl-XML-Twig \
perl-Encode-Locale \
net-snmp-utils \
fontconfig \
@ -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)