Я хотел бы попросить помощи при установке Docker, потому что я не могу это исправить. Я много читал о медленных контейнерах Docker, но все, что я пробовал, не помогает.

Когда я просматриваю пользовательский интерфейс phpmyadmin, он чувствует себя довольно быстро и таблицы / изменения загружаются быстро. Но когда я загружаю свою CMS, она загружается медленно (занимает от 3 до 5 секунд). Даже запросы AJAX внутри CMS выполняются медленно. CMS работает очень быстро на моем рабочем веб-сервере, на самом деле он все еще быстрее, чем моя локальная установка Docker. Я предполагаю, что есть проблема при подключении веб-сервера к серверу MySQL. Читал о проблемах DNS с этим, но не мог найти способ решить это.

Что я пробовал:

  • используйте «ссылку» для подключения контейнеров
  • используйте 'network_mode: host'
  • используйте «сети: - mylocalnetwork» и «сети: mylocalnetwork: драйвер: мост»
  • поместите данные MySQL внутрь контейнера (не в хост-ОС)
  • изменил порты
  • какой-то другой, не могу вспомнить

Docker версии 2.0.0.0-mac81 (29211) (двигатель: 18.09.0)

Docker-compose.yml:

version: '3'
services:
  db:
    image: mysql:5.7
    volumes:
      - "./.data/db:/var/lib/mysql"
    environment:
      MYSQL_DATABASE: devtest
      MYSQL_USER: root
      MYSQL_PASSWORD: pass
      MYSQL_ROOT_PASSWORD: pass
    ports:
      - "9906:3306"
    network_mode: "host"
  web:
    build: .
    depends_on:
      - db
    volumes:
      - /path/to/www:/var/www/html
    ports:
      - "8100:80"
      tty: true
    stdin_open: true
    network_mode: "host"
  phpmyadmin:
    image: phpmyadmin/phpmyadmin
    depends_on:
    - db
    external_links:
    - db:mysql
    ports:
    - "9191:80"
    environment:
        PMA_HOST: db
        MYSQL_USER: root
        MYSQL_ROOT_PASSWORD: pass
        MYSQL_PASSWORD: pass
    network_mode: "host"

Dockerfile

FROM php:7.2.2-apache

RUN docker-php-ext-install pdo_mysql
RUN docker-php-ext-install mysqli

#RUN apt-get update
#RUN apt-get install nano

RUN usermod -u 1000 www-data

RUN a2enmod rewrite
RUN a2enmod headers
RUN a2enmod expires

=== РЕДАКТИРОВАТЬ Из дополнительных настроек Docker App: ЦП: 4 ОЗУ: 2 ГБ SAWP 1 ГБ Размер экспортированного файла SQL составляет ~ 450 КБ. CMS сообщает, что пиковое значение выделенной памяти составляет 19,56 МБ.

0