Пользователь пока ничего не рассказал о себе

Достижения

Все достижения (5)

Наибольший вклад в теги

Все теги (53)

Лучшие ответы пользователя

Все ответы (113)
  • Есть ли программа для Linux, конструктор команд в терминале?

    @sl0
    Конструктора не знаю, но для понимания, что незнакомая команда делает, советую глянуть https://explainshell.com/
    Ответ написан
    Комментировать
  • Запрет выгрузки папки на сервер?

    @sl0
    Deployment -> Excluded Paths
    Ответ написан
    Комментировать
  • Как оптимизировать Symfony внутри Docker?

    @sl0
    Подозреваю, что проблема не в симфони, а в докере на маке.
    Известная проблема в Docker-е под маком - дополнительная задержка, возникающая из-за разных файловых систем. На symfony проекте, например, эта задержка доходит до ~5-10сек на открытие одной страницы. Данную проблему отлично решает утилита docker-sync.


    1) - sudo gem install docker-sync
    2) - Создает docker-sync.yml файл со следующим содержимым (все последующие комманды должны выполняться из папки с проектом-):
    
    version: '2'
    
    options:
      verbose: true
    
    syncs:
      #название volum-а
      app-sync:
        src: '.'
        sync_excludes: ['var', 'node_modules', 'tests']
    
    
    3) в файле docker-compose-dev.yml вносим следующие изменения:
    
    volumes:  
      app-sync:
        external: true
    
    Меняем код
    
    services:  
      #...
    
      php:
        #...
        volumes:
          # ...
          - ./app:/var/www/app
    
    
    На
    
    services:  
      #...
    
      php:
        #...
        volumes:
          # ...
          - app-sync:/var/www/app
    
    То есть, чтобы php контейнер смотрел на наш новый volum
    4) Далее создаем volum коммандой:
    
    docker volume create app-sync
    
    
    5) Выполняем команду
    
    docker-sync start
    
    
    6) И запускаем
    
    docker-compose -f docker-compose-dev.yml up
    
    Для того чтобы не вводить команды с 4-6 каждый раз, можно создать Make файл со следующим содержимым:
    
    OS := $(shell uname)
    
    start_dev:  
    ifeq ($(OS),Darwin)  
        docker volume create --name=app-sync
        docker-compose -f docker-compose-dev.yml up -d
        docker-sync start
    else  
        docker-compose up -d
    endif
    
    stop_dev:           ## Stop the Docker containers  
    ifeq ($(OS),Darwin)  
        docker-compose stop
        docker-sync stop
    else  
        docker-compose stop
    endif
    
    
    И использовать команду
    
    make start_dev
    Ответ написан
    1 комментарий
  • Как взять последнее значение с цикла for?

    @sl0
    $leadTag = $leadLists['_embedded']['leads'][499]['_embedded']['tags'][0]['name'];
    Ответ написан
    Комментировать
  • Откуда неадекватный размер ext4.vhdx?

    @sl0 Автор вопроса
    Разобрался. Пишу тут для тех, кто столкнется с той же проблемой.
    Причина.
    Не использовал docker-compose down, поэтому при каждом выключении оставались неиспользуемые volume, из-за которых эти файлы и распухали.

    Решение для очистки в Docker Desktop.
    1. Устанавливаем libguestfs-tools в wsl.
    2. sudo mkdir -p /mnt/wsl
    3. sudo guestmount -o allow_other --add mnt/c/Users/username/путь_к_/ext4.vhdx -i /mnt/wsl
    4. Чистим лишнее в /mnt/wsl
    5. После этого из винды уже запустить
    wsl --shutdown
    optimize-vhd -Path путь_к_\ext4.vhdx -Mode full
    Ответ написан
    Комментировать

Лучшие вопросы пользователя

Все вопросы (12)