[Ubuntu 22.04] [Apache] [PHP-FPM 8.1] [SQLServer modules]
137
# 20.04, focal-20210713, focal, latest
FROM ubuntu:20.04
USER root
ENV DEBIAN_FRONTEND=noninteractive
#EXPOSE 8888
WORKDIR /root
RUN apt-get update
RUN apt-get upgrade -y
RUN apt-get install -y tzdata \
build-essential \
apt-utils \
nano \
vim \
software-properties-common \
curl \
apache2 \
sudo
# PHP8.1 REPO
RUN apt-get install -y lsb-release ca-certificates apt-transport-https software-properties-common
RUN yes | add-apt-repository ppa:ondrej/php
RUN yes | sudo add-apt-repository ppa:ondrej/php
RUN apt-get update
RUN apt-get install -y php8.1 \
php8.1-cli \
php8.1-common \
php8.1-curl \
php8.1-gd \
php8.1-mbstring \
php8.1-opcache \
php8.1-mysql \
php8.1-soap \
php8.1-xmlrpc \
php8.1-xml \
php8.1-xsl \
php8.1-zip \
php8.1-dev \
php8.1-intl \
php8.1-ldap \
php8.1-fpm \
php8.1-imap \
php8.1-redis \
php8.1-snmp \
libapache2-mod-php8.1 \
redis \
php8.1-redis \
iproute2 \
wget \
php8.1-imap \
composer \
php-imap \
supervisor
RUN a2dismod mpm_event
RUN a2enmod mpm_prefork
RUN a2enmod php8.1
RUN a2enconf php8.1-fpm
RUN service apache2 restart
RUN a2disconf php8.1-fpm
RUN a2enmod proxy_fcgi setenvif
RUN a2enconf php8.1-fpm
RUN service php8.1-fpm start
#ENV APACHE_RUN_USER www-data
#ENV APACHE_RUN_GROUP www-data
#ENV APACHE_LOG_DIR /var/log/apache2
#ENV APACHE_PID_FILE /var/run/apache2/apache2.pid
#ENV APACHE_RUN_DIR /var/run/apache2
#ENV APACHE_LOCK_DIR /var/lock/apache2
#ENV APACHE_LOG_DIR /var/log/apache2
#############################################################
## Install o Microsoft ODBC Driver for SQL Server (Linux) ##
#############################################################
RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
# Ubuntu 20.04
RUN curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
RUN apt-get update
#RUN ACCEPT_EULA=Y
ENV ACCEPT_EULA=Y
RUN apt-get install -y msodbcsql17 \
mssql-tools
RUN echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
#RUN source ~/.bashrc
# optional: for unixODBC development headers
RUN apt-get install -y unixodbc-dev
###################################################
## Drivers Microsoft from PHP para SQL Server ##
###################################################
RUN pecl config-set php_ini /etc/php/8.1/fpm/php.ini
RUN pecl install sqlsrv
RUN pecl install pdo_sqlsrv
RUN printf "; priority=20\nextension=sqlsrv.so\n" > /etc/php/8.1/mods-available/sqlsrv.ini
RUN printf "; priority=30\nextension=pdo_sqlsrv.so\n" > /etc/php/8.1/mods-available/pdo_sqlsrv.ini
RUN phpenmod -v 8.1 sqlsrv pdo_sqlsrv
RUN apt-get install -y inetutils-ping
RUN a2enmod rewrite ssl
RUN service php8.1-fpm restart
RUN sed -i s/'AllowOverride None'/'AllowOverride All'/g /etc/apache2/apache2.conf
RUN echo "ServerName 'OLOKO'" >> /etc/apache2/apache2.conf
RUN sed -i s/'display_errors = Off'/'display_errors = On'/g /etc/php/8.1/apache2/php.ini
# RUN apt-get -yq install phpmyadmin
# RUN rm -rf /var/www/html/phpmyadmin
# RUN ln -s /usr/share/phpmyadmin /var/www/html/
# Supervisord
RUN echo "[supervisord]" > /etc/supervisor/conf.d/myservices.conf
RUN echo "nodaemon=true" >> /etc/supervisor/conf.d/myservices.conf
RUN echo "logfile=/var/log/supervisord/supervisord.log" >> /etc/supervisor/conf.d/myservices.conf
RUN echo "[program:apache2]" >> /etc/supervisor/conf.d/myservices.conf
RUN echo "command=/usr/sbin/apache2ctl -D FOREGROUND" >> /etc/supervisor/conf.d/myservices.conf
RUN echo "[program:php8.1-fpm]" >> /etc/supervisor/conf.d/myservices.conf
RUN echo "command=/usr/sbin/php-fpm8.1 --fpm-config /etc/php/8.1/fpm/php-fpm.conf" >> /etc/supervisor/conf.d/myservices.conf
RUN mkdir -p /var/log/supervisord
ENTRYPOINT ["/usr/bin/supervisord", "-c", "/etc/supervisor/conf.d/myservices.conf"]
Content type
Image
Digest
Size
244.9 MB
Last updated
about 4 years ago
docker pull edilycesar/ubuntu_web2:1.0