Помогите разобраться.
Установил себе WSL и Docker для Windows (вроде docker работает именно из под Linux, потому что приложение без WSL не работает)
Делаю себе минисервер для работы локально с сайтами.
dockerfile
FROM php:8.2-apache
RUN apt-get update && apt-get install -y \
libfreetype6-dev \
libjpeg62-turbo-dev \
libpng-dev \
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
&& docker-php-ext-install -j$(nproc) gd \
&& docker-php-ext-install pdo pdo_mysql \
&& docker-php-ext-install mysqli \
&& docker-php-ext-install opcache
version: '3.7'
services:
web:
build:
context: ./web
dockerfile: Dockerfile
depends_on:
- db
volumes:
- ./web:/var/www #Это копирует из src в /var/www/
- ./web/conf.d/bitrix.ini:/usr/local/etc/php/conf.d/bitrix.ini
ports:
- "80:80"
db:
image: library/mysql:5.7.30
volumes:
- ./db/data:/var/lib/mysql
- ./db/conf.d/custom.cnf:/etc/mysql/conf.d/custom.cnf
command: > # чтобы срабатывал файл с кастомными настройками
bash -c "
chmod 644 /etc/mysql/conf.d/*.cnf
&& /entrypoint.sh mysqld
"
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: test_db
MYSQL_USER: devuser
MYSQL_PASSWORD: devpass
TZ: Europe/Moscow
ports:
- 6033:3306
Делаю билд и запускаю.
На сервер закидываю файл bitrixsetup.php, к которому потом обращаюсь через браузер. В браузере запускаю установку CMS. Скрипт скачивает архив и его распаковывает. На любом хостинге, это занимает не больше 5 минут.
У меня в контейнере архив скачивается приблизительно за 2 минуты. А вот распаковка может идти часами. Диспетчер задач windows показывает, что всех ресурсов с запасом - то есть ни проц, ни хард не нагружены даже на 10%. Получается упор не в ресурсы машины, а в какие-то ограничения WSL.
В чем может быть проблема?