======Webserver Apache======
====windows 10====
==Dockerfile==
FROM php:7.2.10-apache
RUN apt-get update && apt-get install -y \
libfreetype6-dev \
libjpeg62-turbo-dev \
libpng-dev \
libicu-dev \
libmemcached-dev \
libbz2-dev \
libssh2-1 \
libssh2-1-dev \
libssl-dev \
librabbitmq-dev \
libxml2-dev \
unzip \
git \
&& a2enmod rewrite \
&& docker-php-ext-install bcmath bz2 calendar exif opcache pdo_mysql mysqli intl zip soap \
&& docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
&& docker-php-ext-install gd \
&& pecl install redis \
&& pecl install mongodb \
&& pecl install amqp \
&& docker-php-ext-enable redis mongodb amqp
RUN pecl install https://xdebug.org/files/xdebug-2.6.1.tgz \
&& pecl install ssh2-1.1.2 \
&& docker-php-ext-enable xdebug ssh2 \
&& echo "error_reporting = E_ALL" > /usr/local/etc/php/php.ini \
&& echo "display_startup_errors = On" >> /usr/local/etc/php/php.ini \
&& echo "display_errors = On" >> /usr/local/etc/php/php.ini \
&& echo "expose_php = Off" >> /usr/local/etc/php/php.ini \
&& echo "xdebug.remote_enable=1" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& echo "xdebug.remote_connect_back=0" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& echo "xdebug.idekey=\"PHPSTORM\"" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& echo "xdebug.remote_port=9000" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& echo "xdebug.remote_host=10.0.75.1" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& chmod 777 /var/log
RUN echo "" > /etc/apache2/sites-available/site.conf \
&& echo "DocumentRoot \"/var/www/site\"" >> /etc/apache2/sites-available/site.conf \
&& echo "ServerName site.localhost" >> /etc/apache2/sites-available/site.conf \
&& echo "ServerAlias www.site.localhost" >> /etc/apache2/sites-available/site.conf \
&& echo "" >> /etc/apache2/sites-available/site.conf \
&& echo "" > /etc/apache2/sites-available/werwolf.conf \
&& echo "DocumentRoot \"/var/www/werwolf\"" >> /etc/apache2/sites-available/werwolf.conf \
&& echo "ServerName werwolf.localhost" >> /etc/apache2/sites-available/werwolf.conf \
&& echo "ServerAlias www.werwolf.localhost" >> /etc/apache2/sites-available/werwolf.conf \
&& echo "" >> /etc/apache2/sites-available/werwolf.conf \
&& a2ensite site werwolf
==docker-compose.yaml==
version: '3.2'
services:
db:
image: mysql:5.7
restart: always
environment:
MYSQL_ROOT_PASSWORD: 2619192
MYSQL_USER: werwolf
MYSQL_PASSWORD: 2619192
MYSQL_DATABASE: test
ports:
- 3306:3306
adminer:
image: adminer
restart: always
ports:
- 8080:8080
apache:
build: ./apache
ports:
- 80:80
volumes:
- ./www:/var/www/html
- ./site:/var/www/site
- ./werwolf:/var/www/werwolf
depends_on:
- db
----
====Docker toolbox====
==Dockerfile==
FROM php:7.2.10-apache
RUN apt-get update && apt-get install -y \
libfreetype6-dev \
libjpeg62-turbo-dev \
libpng-dev \
libicu-dev \
libmemcached-dev \
libbz2-dev \
libssh2-1 \
libssh2-1-dev \
libssl-dev \
librabbitmq-dev \
libxml2-dev \
unzip \
git \
&& a2enmod rewrite \
&& docker-php-ext-install bcmath bz2 calendar exif opcache pdo_mysql mysqli intl zip soap \
&& docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
&& docker-php-ext-install gd \
&& pecl install redis \
&& pecl install mongodb \
&& pecl install amqp \
&& docker-php-ext-enable redis mongodb amqp
RUN pecl install https://xdebug.org/files/xdebug-2.6.1.tgz \
&& pecl install ssh2-1.1.2 \
&& docker-php-ext-enable xdebug ssh2 \
&& echo "error_reporting = E_ALL" > /usr/local/etc/php/php.ini \
&& echo "display_startup_errors = On" >> /usr/local/etc/php/php.ini \
&& echo "display_errors = On" >> /usr/local/etc/php/php.ini \
&& echo "expose_php = Off" >> /usr/local/etc/php/php.ini \
&& echo "xdebug.remote_enable=1" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& echo "xdebug.remote_connect_back=0" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& echo "xdebug.idekey=\"PHPSTORM\"" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& echo "xdebug.remote_port=9000" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& echo "xdebug.remote_host=10.0.75.1" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& chmod 777 /var/log
# Виртуальный хост
RUN echo "" > /etc/apache2/sites-available/phpmaster.conf \
&& echo "DocumentRoot \"/var/www/phpmaster\"" >> /etc/apache2/sites-available/phpmaster.conf \
&& echo "ServerName phpmaster.localhost" >> /etc/apache2/sites-available/phpmaster.conf \
&& echo "ServerAlias www.phpmaster.localhost" >> /etc/apache2/sites-available/phpmaster.conf \
&& echo "" >> /etc/apache2/sites-available/phpmaster.conf \
&& a2ensite phpmaster
# Куда же без composer'а.
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
WORKDIR /var/www/phpmaster
==docker-compose.yml==
version: '3.2'
services:
db:
image: mysql:5.7
restart: always
environment:
MYSQL_ROOT_PASSWORD: 2619192
MYSQL_USER: werwolf
MYSQL_PASSWORD: 2619192
MYSQL_DATABASE: test
ports:
- 3306:3306
adminer:
image: adminer
restart: always
ports:
- 8080:8080
apache:
build: ./apache
ports:
- 80:80
volumes:
- /apache/phpmaster/www:/var/www/phpmaster
depends_on:
- db
==Настрока общих папок==
{{:docker:docker_tools.png?800|}}
**путь к примонтированной папке:**
///apache/phpmaster/www//