При использовании стека PHP+DOCKER (+ все остальное) на Linux-системах у вас, скорее всего, возникнут проблемы с правами в контейнере. Нельзя будет записать какой-либо файл в директорию, начнут вылетать ошибки при сохранении логов и всё в таком духе. При использовании фреймворков, например, такого как Laravel, эта проблема уже решена его разработчиком, а во всех других случаях решать коллизию с правами нужно своими руками. Ниже приведён один из простых вариантов решения.
(далее…)Рубрика: Docker
Docker + Selenium + PHP
- packagist.org/packages/php-webdriver/webdriver
- github.com/SeleniumHQ/docker-selenium
- github.com/php-webdriver/php-webdriver/blob/HEAD/example.php
- github.com/php-webdriver/php-webdriver/wiki/Example-command-reference
- github.com/SeleniumHQ/docker-selenium/blob/trunk/docker-compose-v3.yml
- registry.hub.docker.com/r/selenium/node-chrome
- habr.com/ru/articles/353612 — управляем браузером с помощью Selenium.
- stackoverflow.com/questions/3422262/how-to-take-a-screenshot-with-selenium-webdriver
- qna.habr.com/q/589333 — дождаться полной загрузки страницы в Selenium на PHP.
- stackoverflow.com/questions/43545388/how-do-i-get-selenium-to-wait-for-a-page-to-load-fully-before-executing-the-clic
Docker: No releases available for package «pecl.php.net/redis»
Сегодня встретилась вот такая ошибка для пакетов загружаемых через PECL. Хоть в сообщении и написано «Нет доступных релизов», но они были на сервере. Ошибка странная и почему она возникла сказать не могу. Все указывает на сетевые проблемы. Если простыми словами, то мой компьютер не мог нормально добраться до компьютера на котором находятся требуемые пакеты. Проблему решить удалось, об этом ниже.
(далее…)Примеры решения проблемы взаимодействия Docker и сетевого экрана ufw в Linux-системах.
stackoverflow.com/questions/30383845/what-is-the-best-practice-of-docker-ufw-under-ubuntu
Ошибка установки xDebug в Docker на Linux Mint 20.2 (uma)
При установке xDebug в Docker на Linux’e может появляться вот такая ошибка:
... The command '/bin/sh -c pecl install xdebug' returned a non-zero code: 1 ...
Сама команда из Dockerfile выглядит так:
RUN pecl install xdebug
Для её исправления достаточно указать конкретную версию xDebug, например:
RUN pecl install xdebug-3.1.1
Проблемы при установке Docker на Linux Mint 20.2 (uma)
При установке Docker по официальной инструкции в Linux Mint у меня появилась такая ошибка:
sudo apt update Hit:1 http://archive.canonical.com/ubuntu focal InRelease Ign:2 http://packages.linuxmint.com uma InRelease Hit:3 http://ppa.launchpad.net/obsproject/obs-studio/ubuntu focal InRelease Hit:4 http://archive.ubuntu.com/ubuntu focal InRelease Hit:5 http://archive.ubuntu.com/ubuntu focal-updates InRelease Hit:6 http://security.ubuntu.com/ubuntu focal-security InRelease Hit:7 http://packages.linuxmint.com uma Release Hit:8 https://dl.google.com/linux/chrome/deb stable InRelease Hit:9 http://archive.ubuntu.com/ubuntu focal-backports InRelease Ign:11 https://download.docker.com/linux/ubuntu uma InRelease Err:12 https://download.docker.com/linux/ubuntu uma Release 404 Not Found [IP: 2600:9000:20eb:8800:3:db06:4200:93a1 443] Reading package lists… Done E: The repository 'https://download.docker.com/linux/ubuntu uma Release' does not have a Release file. N: Updating from such a repository can't be done securely, and is therefore disabled by default. N: See apt-secure(8) manpage for repository creation and user configuration details.
Заготовка PHP-проекта
Иногда для тестирования какой-либо библиотеки или шаблона требуется быстро развернуть отдельное окружение для разработки. Данная заготовка PHP-проекта как раз предназначена для таких задач. Она включает в себя PHP (+xDebug), NGINX и MySQL. Репозиторий на GitHub.
(далее…)Настройка PHPUnit + Docker + PHPStorm
В данной инструкции мы настроим рабочую среду для PHP проекта на основе Docker’а. Тесты будут выполняется в Docker’e через PHPStorm.
(далее…)Настройка xDebug 3 + Docker + PHPStorm для Windows 10
В этом мануале мы создадим проект с настроенными xDebug, nginX и PHP-FPM. Все файлы отображенные ниже проще достать из репозитория.
(далее…)