Have symfony 6.0 project with docker and it's lagging a lot of, as I know it is because of my new macbook pro with m1 chip. Before I used ubuntu, and everything was just fine. Now using arm64v8 images but still got a lot of lagging.
docker configuration is below: I have Symfony 6.0 project on macbook pro with m1 pro chip i have docker configuration like this: docker-compose.yml:
version: '3'
services:
php:
build: ./docker/php
container_name: {PROJECT_NAME}_php
environment:
TZ: Europe/Vilnius
volumes:
- ./docker/php/config/www.conf:/usr/local/etc/php-fpm.d/www.conf:ro
- ./docker/php/config/php.ini:/usr/local/etc/php/php.ini:ro
web:
build: ./docker/web
environment:
APP_PROJECT_DIR: {PATH_TO_PROJECT}
volumes:
- ./docker/web/config:/etc/nginx/config:ro
- ./docker/web/nginx.conf:/etc/nginx/nginx.conf:ro
mysql:
image: arm64v8/mariadb:10.6.4
build: ./docker/mysql
docker-compose.override.yml:
version: '3'
services:
php:
hostname: {USER_NAME}-{PROJECT_NAME}-php
working_dir: {PATH_TO_PROJECT}
volumes:
- {PATH_TO_PROJECT}:{PATH_TO_PROJECT}
- ./docker/php/composer/:/var/www/.composer/
- ./docker/php/composer/auth.json:/var/www/.composer/auth.json
- {PATH_TO_PROJECT}/node_modules
web:
environment:
APP_PROJECT_DIR: {PATH_TO_PROJECT}
APP_HOST: {PROJECT_HOST}
extra_hosts:
- "{PROJECT_HOST}:host-gateway"
volumes:
- {PATH_TO_PROJECT}:{PATH_TO_PROJECT}/public
networks:
default:
ipv4_address: 172.12.16.10
ports:
- 98:80
depends_on:
- php
- mysql
mysql:
image: arm64v8/mariadb:10.6.4
ports:
- 4306:3306
expose:
- 3306
environment:
MYSQL_ROOT_PASSWORD: qwerty
networks:
default:
ipv4_address: 172.12.16.30
networks:
default:
name: {PROJECT_NAME}
driver: bridge
ipam:
driver: default
config:
- subnet: 172.12.16.0/24
php Dockerfile:
FROM arm64v8/php:8.0-fpm
USER root
# change user and groups ids
RUN usermod --uid=1000 www-data && \
groupmod --gid=1000 www-data && \
# fix permissions
chown -R www-data:www-data /var/www/
# enable extensions
RUN echo 'START' && \
docker-php-ext-install mysqli && \
docker-php-ext-install bcmath && \
docker-php-ext-install pdo_mysql && \
docker-php-ext-enable opcache && \
docker-php-source delete
RUN docker-php-ext-configure pcntl --enable-pcntl
RUN docker-php-ext-install pcntl
RUN apt-get update && \
apt-get install -y libzip-dev && \
docker-php-ext-install zip && \
apt-get install -y libxml2-dev && \
docker-php-ext-install soap && \
apt-get install -y libicu-dev && \
docker-php-ext-install intl && \
apt-get install -y libgmp-dev && \
docker-php-ext-install gmp && \
apt-get install -y libcurl4 libcurl4-openssl-dev && \
docker-php-ext-install -j$(nproc) curl && \
apt-get install -y libpq-dev && \
docker-php-ext-install pdo_pgsql && \
apt-get install -y libpng-dev libfreetype6-dev libjpeg62-turbo-dev && \
docker-php-ext-install gd && \
rm -r /var/lib/apt/lists/* && \
docker-php-source delete
RUN apt-get update && \
apt-get install -y git zip gnupg && \
rm -r /var/lib/apt/lists/* && \
docker-php-source delete
RUN apt-get update && \
apt-get install -y wget && \
rm -r /var/lib/apt/lists/* && \
docker-php-source delete
RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \
echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list && \
apt update && apt install -y yarn && \
rm -r /var/lib/apt/lists/* && \
docker-php-source delete
RUN apt update && apt install -y libxrender1 && apt install -y libfontconfig1 && apt install -y libfontconfig
RUN apt install -y wget fontconfig fontconfig-config xfonts-75dpi xfonts-base
RUN wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.buster_arm64.deb
RUN dpkg -i wkhtmltox_0.12.6-1.buster_arm64.deb
ADD ./includes/install-composer.sh /usr/bin
RUN /usr/bin/install-composer.sh && \
mv composer.phar /usr/bin/composer
RUN apt-get update && \
## zip
apt-get install -y iputils-ping && \
## cleanup
rm -r /var/lib/apt/lists/* && \
docker-php-source delete
USER www-data
mysql Dockerfile:
FROM arm64v8/mariadb:10.6.4
COPY ./config/my.cnf /etc/mysql/conf.d/my.cnf
ENV TZ=Europe/Vilnius
web Dockerfile:
FROM nginx:1.11.0-alpine
COPY docker-entrypoint.sh /
ENTRYPOINT ["/docker-entrypoint.sh"]
CMD ["nginx", "-g", "daemon off;"]
Any suggestions to make it less lagging?