если вы ищете php7 + apache + mysql с phalcon 3.4.2, то вот мое решение.для phalcon 4 необходимо выполнить дополнительные действия, такие как установка psr, иначе это приведет к ошибке для необходимых зависимостей.РАССМОТРЕТЬ СЛЕДУЮЩУЮ СТРУКТУРУ И РАЗМЕЩАТЬ ФАЙЛЫ В СООТВЕТСТВИИ
docker-compose.yml
www (каталог, куда вы положите свой код)
index.php
.docker (каталог)
Dockerfile
dump (каталог только для сохранения ваших данных MySQL)
вот Dockerfile, который вы положите в каталог .docker
FROM php:7.1.2-apache
RUN docker-php-ext-install pdo_mysql
RUN sed -i '/jessie-updates/d' /etc/apt/sources.list # Now archived
RUN apt update
RUN apt install -y \
apt-transport-https \
lsb-release \
ca-certificates \
wget \
curl \
nano \
dialog \
net-tools \
git \
sudo \
openssl \
libpcre3-dev
RUN wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
RUN sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
RUN apt update && apt install -y \
php7.1-curl \
php7.1-mbstring \
php7.1-gettext \
php7.1-gd \
php7.1-fileinfo \
php7.1-json \
php7.1-mcrypt \
php7.1-redis \
php7.1-intl \
php7.1-xml \
php7.1-zip
ARG PHALCON_VERSION=3.4.2
ARG PHALCON_EXT_PATH=php7/64bits
RUN set -xe && \
# Compile Phalcon
curl -LO https://github.com/phalcon/cphalcon/archive/v${PHALCON_VERSION}.tar.gz && \
tar xzf ${PWD}/v${PHALCON_VERSION}.tar.gz && \
docker-php-ext-install -j $(getconf _NPROCESSORS_ONLN) ${PWD}/cphalcon-${PHALCON_VERSION}/build/${PHALCON_EXT_PATH} && \
# Remove all temp files
rm -r \
${PWD}/v${PHALCON_VERSION}.tar.gz \
${PWD}/cphalcon-${PHALCON_VERSION}
RUN a2enmod rewrite
это будет для вас настройками php и phalcon вместе с apache, и вы можете использовать docker compose для запуска всего необходимого контейнера для создания вашего приложения.вот ваш docker-compose файл
version: "2"
services:
www:
build: ./.docker
ports:
- "8001:80"
volumes:
- ./www:/var/www/html/
links:
- db
networks:
- default
db:
image: mysql:5.7.13
ports:
- "3306:3306"
environment:
MYSQL_DATABASE: myDb
MYSQL_USER: user
MYSQL_PASSWORD: test
MYSQL_ROOT_PASSWORD: test
volumes:
- ./dump:/var/lib/mysql
phpmyadmin:
image: phpmyadmin/phpmyadmin
links:
- db:db
ports:
- 8000:80
environment:
MYSQL_USER: user
MYSQL_PASSWORD: test
MYSQL_ROOT_PASSWORD: test
после этого просто добавьте index.php в www
<?php echo phpinfo();?>
после этого localhost: 8001 должно быть доступно ..Удачного кодирования.и если есть какие-либо улучшения должны быть сделаны в этом.пожалуйста, дай мне знать.на данный момент он работает очень круто для меня и моей первой конфигурации phalcon.впустую много времени на это .....