You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

376 lines
11 KiB

FROM docker.io/rockylinux/rockylinux:8.5
LABEL "co.com.sapian.vendor"="Sapian SAS"
#cc_005_all_rpm_update.sh
RUN yum -y update && yum clean all
#cc_101_all_config_os.sh
RUN mkdir -p /home/backup/misc \
&& mkdir -p /usr/share/astguiclient \
&& mkdir -p /var/log/astguiclient \
&& mkdir -p /var/lib/asterisk/ \
&& mkdir -p /var/lib/asterisk/agi-bin \
&& mkdir -p /var/lib/asterisk/sounds \
&& mkdir -p /var/spool/asterisk/monitor \
&& mkdir -p /usr/src/astguiclient
#cc_107_all_rpm_repo_epel.sh
RUN yum -y install epel-release \
&& yum clean all
#RUN dnf install 'perl(Module::Implementation)' 'perl(Package::Stash)'
#cc_109_all_rpm_install.sh part 1
RUN yum -y install \
perl-Algorithm-Diff \
perl-Archive-Tar \
perl-Archive-Zip \
#perl-B-Hooks-EndOfScope \
perl-Class-Load \
perl-Class-Load-XS \
perl-Class-Mix \
#perl-Config-Crontab \
perl-Crypt-Eksblowfish \
perl-Crypt-RC4 \
perl-BSD-Resource \
perl-Cache-Cache \
perl-Compress-Raw-Zlib \
perl-Crypt-DES \
perl-Curses \
perl-DBD-mysql \
perl-Data-Dump \
perl-DateManip \
perl-DBI \
perl-Data-OptList \
perl-Date-Manip \
#perl-Devel-GlobalDestruction \
#perl-Devel-StackTrace \
perl-DBD-MySQL \
perl-Digest-HMAC \
perl-Digest-Perl-MD5 \
#perl-Digest-SHA1 \
#perl-Dist-CheckConflicts \
perl-Encode-Locale \
perl-Error \
#perl-Eval-Closure \
perl-File-Listing \
#perl-File-Remove \
perl-File-Slurp \
perl-File-Temp \
#perl-FileHandle-Unget \
perl-Font-AFM \
perl-GD \
perl-HTML-Format \
perl-Digest-SHA \
perl-ExtUtils-CBuilder \
perl-File-HomeDir \
perl-File-Which \
perl-HTML-Parser \
#perl-HTML-Strip \
perl-HTML-Tagset \
#perl-HTML-Tree \
perl-HTTP-Cookies \
#perl-HTTP-Daemon \
perl-HTTP-Date \
perl-HTTP-Message \
perl-HTTP-Negotiate \
perl-IO-HTML \
#perl-IO-Pty-Easy \
perl-IO-Socket-SSL \
perl-IO-String \
#perl-IO-Tty \
perl-HTML-Template \
perl-IO-Compress-Base \
#perl-IO-stringy \
perl-Inline \
perl-Jcode \
perl-LWP-MediaTypes \
perl-Linux-Pid \
#perl-List-MoreUtils \
#perl-MIME-Types \
perl-MIME-tools \
perl-MRO-Compat \
perl-Mail-Box \
perl-Mail-IMAPClient \
#perl-Mail-Mbox-MessageParser \
#perl-Mail-POP3Client \
perl-libwww-perl \
perl-Mail-Sendmail \
perl-MailTools \
#perl-Module-Implementation \
perl-Module-Runtime \
perl-Moose \
#perl-Module-Install \
perl-Net-Daemon \
perl-Net-HTTP \
perl-Net-SFTP-Foreign \
perl-Net-SSLeay \
perl-Net-Server \
perl-Net-SNMP \
perl-Net-Telnet \
perl-OLE-Storage_Lite \
perl-Object-Realize-Later \
#perl-Package-DeprecationManager \
#perl-Package-Stash \
#perl-Package-Stash-XS \
#perl-Params-Classify \
perl-Params-Util \
perl-Parse-RecDescent \
perl-Proc-ProcessTable \
#perl-RPC-XML \
perl-rrdtool \
perl-Set-Scalar \
perl-Socket6 \
perl-Spiffy \
perl-Spreadsheet-XLSX \
perl-Spreadsheet-ParseExcel \
#perl-Spreadsheet-Read \
perl-Spreadsheet-WriteExcel \
perl-Spreadsheet-XLSX \
perl-Sub-Exporter \
#perl-Sub-Exporter-Progressive \
perl-Sub-Install \
#perl-Sub-Name \
#perl-Switch \
perl-Task-Weaken \
#perl-Test-NoWarnings \
#perl-Test-Tester \
perl-Text-CSV \
perl-Text-CSV_XS \
perl-Text-Diff \
#perl-Tie-IxHash \
perl-Time-Local \
perl-TimeDate \
perl-Try-Tiny \
perl-URI \
perl-TermReadKey \
perl-Term-ReadLine-Gnu \
perl-Test-Base \
perl-Text-Glob \
perl-Unicode-Map \
perl-User-Identity \
#perl-Variable-Magic \
perl-WWW-Curl \
perl-WWW-RobotRules \
perl-XML-LibXML \
perl-XML-NamespaceSupport \
perl-XML-Parser \
perl-XML-SAX \
perl-XML-SAX-Base \
perl-XML-Simple \
perl-XML-XPath \
#perl-gettext \
perl-libwww-perl \
#perl-namespace-clean \
perl-URI \
perl-YAML \
#perl-YAML-Tiny \
perl-Text-CSV \
perl-Time-HiRes \
cpan \
perl-App-cpanminus \
unzip && yum clean all
##cc_109_all_rpm_install.sh perl cpanm part 1
RUN PREFIX='/usr/local' INSTALL_BASE='' && cpanm \
B::Hooks::EndOfScope \
Config::Crontab \
Devel::GlobalDestruction \
Devel::StackTrace \
Digest::SHA1 \
Dist::CheckConflicts \
Eval::Closure \
File::Remove \
FileHandle::Unget \
HTML::Strip \
HTML::Tree \
IO::Compress::Base \
IO::Pty::Easy \
IO::Tty \
IO::Stringy \
List::MoreUtils \
Mail::Mbox::MessageParser \
Mail::POP3Client \
MIME::Types \
Module::Implementation \
Module::Install \
Net::Daemon \
namespace::clean \
Package::DeprecationManager \
Package::Stash \
Package::Stash::XS \
Params::Classify \
RPC::XML \
Spreadsheet::Read \
Spreadsheet::WriteExcel \
Sub::Exporter::Progressive \
Sub::Name \
Switch \
Test::NoWarnings \
Test::Tester \
Tie::IxHash \
Tie::IxHash \
User::Identity \
Variable::Magic \
Gettext \
YAML::Tiny
#cc_109_all_rpm_install.sh part 2
RUN yum -y install \
alsa-lib \
apr \
apr-util \
audiofile \
autoconf \
automake \
cpp \
curl \
curl-devel \
device-mapper-multipath \
gcc \
glib \
glibc-devel \
glibc-headers \
iftop \
imake \
kernel-devel \
kernel-headers \
libc-client \
libgomp \
libidn-devel \
libmcrypt \
libnet \
libogg \
libcap \
libpcap-devel \
libpng-devel \
libtermcap-devel \
libvorbis \
libxml2 \
libxml2-devel \
libxslt \
libX11-devel \
libXau-devel \
libXdmcp-devel \
mesa-libGL-devel \
ncurses \
ncurses-devel \
openssl-devel \
pkgconfig \
pycairo \
pygtk2 \
pygtk2-libglade \
pyorbit \
screen \
shared-mime-info \
smartmontools \
sox \
speex \
speex-devel \
subversion \
vim-enhanced \
yum-utils \
zlib-devel \
gcc-c++ \
gsm-devel \
wget \
patch \
mutt \
glibc.i686 \
ImageMagick \
htop \
iftop \
libuuid-devel \
sipsak \
jansson-devel \
git \
restic \
python-pip \
&& yum clean all
#cc_109_all_rpm_install.sh part 3
RUN yum -y install \
mod_ssl \
php \
php-cli \
php-common \
php-gd \
php-imap \
php-ldap \
php-mbstring \
php-mcrypt \
php-mysql \
php-pdo \
php-pear \
php-devel \
gd-devel \
php-odbc \
php-xml \
php-xmlrpc \
sqlite-devel \
&& yum clean all
RUN yum -y install \
php-pecl-apcu \
apcu-panel \
php-pecl-zendopcache \
&& yum clean all
RUN PREFIX='/usr/local' INSTALL_BASE='/usr/share/astguiclient/libs' cpanm Spreadsheet::Read --force
RUN PREFIX='/usr/local' INSTALL_BASE='/usr/share/astguiclient/libs' cpanm IO::Scalar --force
RUN PREFIX='/usr/local' INSTALL_BASE='/usr/share/astguiclient/libs' cpanm Net::Telnet --force
RUN pip install j2cli
#cc_114_all_httpd_config.sh
RUN sed -i -e 's/post_max_size =.*$/post_max_size = 256M/' /etc/php.ini \
&& sed -i -e 's/max_execution_time =.*$/max_execution_time = 180/' /etc/php.ini \
&& sed -i -e 's/max_input_time =.*$/max_input_time = 180/' /etc/php.ini \
&& sed -i -e 's/upload_max_filesize =.*$/upload_max_filesize = 64M/' /etc/php.ini \
&& sed -i -e 's/memory_limit =.*$/memory_limit = 256M/' /etc/php.ini \
&& sed -i -e 's/^error_reporting =.*$/error_reporting = E_ALL \& ~E_DEPRECATED \& ~E_STRICT \& ~E_NOTICE/' /etc/php.ini \
&& sed -i "s/^\;date\.timezone.*$/date\.timezone = \America\/Bogota\ /g" /etc/php.ini \
&& sed -i -e 's/^;apc.shm_size.*$/apc.shm_size=256/' /etc/php.d/apcu.ini
COPY docker/vicidial-http/conf/status.conf /etc/httpd/conf.d/
#cc_310_all_astguiclient_install.sh
COPY docker/vicidial-http/conf/astguiclient.conf /etc/astguiclient.conf
COPY docker/vicidial-http/conf/astguiclient.conf.j2 /etc/astguiclient.conf.j2
#cc_201_all_vicidial_svn_init.sh
WORKDIR /usr/src/astguiclient
#RUN svn checkout svn://svn.eflo.net:43690/agc_2-X/branches/agc_2.9
COPY ./ ./
ENV TZ=America/Bogota
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
RUN perl install.pl --web-only --active_keepalives=X
RUN ln -s /var/www/html/vicidial/welcome.php /var/www/html/index.php
RUN ln -sf /dev/stdout /var/log/httpd/access_log
RUN ln -sf /dev/stderr /var/log/httpd/error_log
COPY extras/Sapian/voe-landing/dist/ /var/www/html/
COPY docker/vicidial-http/vicidial-web-entrypoint.sh /vicidial-web-entrypoint.sh
CMD ["/usr/sbin/apachectl", "-DFOREGROUND"]
ENTRYPOINT ["/vicidial-web-entrypoint.sh"]
ARG BUILD_DATE
ARG VCS_REF
ARG VERSION
LABEL org.label-schema.build-date=$BUILD_DATE \
org.label-schema.name="vicidial-ccweb" \
org.label-schema.description="Vicidial Docker Image ccweb Complete" \
org.label-schema.url="https://www.sapian.cloud/vicidial-online-edition" \
org.label-schema.vcs-url="https://git.sapian.com.co/Sapian/vicidial" \
org.label-schema.maintainer="sebastian.rojo@sapian.com.co" \
org.label-schema.vcs-ref=$VCS_REF \
org.label-schema.vendor1="Vicidial" \
org.label-schema.vendor2="Sapian" \
org.label-schema.version=$VERSION \
org.label-schema.vicidial-schema-version="1602"