При использовании Docker уже не хочется ставить лишний раз в хост-систему какой-то софт. Но что делать если редактор кода ругается, что в системе нет PHP?
Создается минимальный проект, docker-compose.yml
:
version: "3.8"
services:
php8:
image: php:8.2-cli
container_name: php8
restart: unless-stopped
stdin_open: true
Запускается:
docker compose up -d
В директории /usr/local/bin
создается файл php
:
#!/bin/bash
docker exec -i --user=1000:1000 php8 php "$@"
Ему необходимо назначить права на выполнение.
Теперь команды будут работать:
php -v
php -r "phpinfo();"
...
В настройках VS Code обращение к PHP не меняется:
php -r {code}