Article about local development server on my site.
Setup and install:
-
Create new network in docker:
docker network create web
-
Copy file
.env.example
into.env
cp .env.example .env
-
Edit file
.env
as you need- If necessary change variable
NGINX_HOST
- Set variables
MYSQL_DATABASE
,MYSQL_ROOT_PASSWORD
,MYSQL_USER
,MYSQL_PASSWORD
- Set PHP version
PHP_VERSION
to following:5.2
,5.3
,5.4
,5.5
,5.6
,7.0
,7.1
,7.2
,7.3
,7.4
,8.0
,8.1
,8.2
(tested only with8.1
)
- If necessary change variable
-
If necessary edit files:
- nginx config:
./etc/nginx/default.template.conf
- php-fpm config:
./etc/php/php.ini
- mysql config:
./etc/mysql/my.cnf
- nginx config:
-
Run containers:
docker-compose up -d
-
Place you site
index.php
in folder./web/_default/public
-
Site will be available under URL from variable
NGINX_HOST
from file.env
-
You can create you projects folders in "./web/", e.g. "./web/my-project/public" will be accessible via URL:
http://my-project.NGINX_HOST
variable from file.env
-
Composer can be used from PHP-container with this command:
docker-compose exec php composer install -d /var/www/_default
Статья о сервере для разработки на моем сайте где вы сможете задать вопросы и предложить новый функционал.
Настройка и установка:
-
Создаем новую сеть в docker'е:
docker network create web
-
Копируем файл
.env.example
в файл.env
cp .env.example .env
-
Редактируем файл
.env
под свои нужды- При необходимости меняем переменную
NGINX_HOST
- Устанавливаем значения переменных
MYSQL_DATABASE
,MYSQL_ROOT_PASSWORD
,MYSQL_USER
,MYSQL_PASSWORD
- Указываем версию PHP
PHP_VERSION
из:5.2
,5.3
,5.4
,5.5
,5.6
,7.0
,7.1
,7.2
,7.3
,7.4
,8.0
,8.1
,8.2
(тестировалось только с8.1
)
- При необходимости меняем переменную
-
При необходимости редактируем файлы:
- Конфигурация nginx:
./etc/nginx/default.template.conf
- Конфигурация php-fpm:
./etc/php/php.ini
- Конфигурация mysql:
./etc/mysql/my.cnf
- Конфигурация nginx:
-
Поднимаем контейнеры:
docker-compose up -d
-
Размещаем файлы сайта в папке
./web/_default/public
-
Сайт доступен по адресу из переменной
NGINX_HOST
в файле.env
-
Вы можете создавать папки с вашими проектами в папке "./web/", например содержимое папки "./web/my-project/public" будет доступно по URL:
http://my-project.NGINX_HOST
из переменной в файле.env
-
Composer доступен для использования в контейнере PHP и может быть вызван командой
docker-compose exec php composer install -d /var/www/_default