Блог программиста
не только о программировании

Исправляем отсутствие доступа на запись в каталог внутри docker-контейнера

Иногда так бывает, что при монтировании каталога в контейнер необходимо иметь права на запись, однако по каким-то причинам запись недоступна

version: "3"
services:
  php:
    build:
      context: ./configs
      dockerfile: php74.dockerfile
    env_file:
      - configs/vars.env
    volumes:
      - ./:/var/www
      - ./configs/xdebug.ini:/usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini

Вот пример конфигурации, допустим внутри www есть каталог log, в который необходимо что-то писать. Для этого достаточно на хост-машине отредактировать права на каталог так, как это требуется для работы (ниже пример, не надо так делать без необходимости).

[dv4mp1r3@mbp ipinfo]$ ls -l | grep log
drwxrwxrwx. 2 dv4mp1r3 dv4mp1r3    4096 Jan  2 23:31 log

А происходить так может потому, что пользователь, из под которого запускается процесс внутри контейнера может не совпадать с владельцем каталога, поэтому и менять права надо вне контейнера.

Комментариев к записи Исправляем отсутствие доступа на запись в каталог внутри docker-контейнера нет
Метки: ,
Категории: Dev

Удаленная отладка с помощью xdebug 3

Совсем недавно (чуть больше месяца назад на момент написания) вышел xdebug версии 3.0.0. И сразу же после того, как докер подхватил изменения, удаленная отладка перестала работать.

А дело все в том, что в конфиге xdebug изменились названия параметров. Пример настройки для новой версии ниже.

xdebug.mode=debug
xdebug.client_host=172.17.0.1
xdebug.client_port=9001

Более подробно про переезд с 2.x на 3.x можно почитать в официальной документации.

UPD: необходимо экспортировать переменную для отладки cli-скриптов

export XDEBUG_SESSION=1
Комментариев к записи Удаленная отладка с помощью xdebug 3 нет
Метки: , , ,
Категории: Dev

Какой python медленный и почему?

Пару лет назад у меня было несколько свободных часов, которые я посвятил сравнению наиболее распространенных реализаций python между собой, а также почему при написании многопоточного кода время выполнения может только замедлиться (на изображении выше как раз показан один из простых примеров).

Один из заданных после доклада вопросов меня тогда смутил, а расширение тематики у блога позволило не только опубликовать материал тут, но и дополнительно разобраться в том вопросе. Подробности под катом. 

Комментариев к записи Какой python медленный и почему? нет
Категории: Dev