Автор оригинала: Joao Gilberto Magalhães.
Microsoft объявила 9 июля 2020 года, что она будет прекратить поддержку выпусков PHP для Windows начиная с версии 8.0. С одной стороны это похоже на удар прямо в живот. … … Вы всегда можете начать использовать Linux … Есть много способов, таких как использование сигвин , но в этой статье я объясню использование Docker для Windows.
…
Как вы заметили, вам нужно установить Docker для Windows. … Следуйте инструкциям с официального сайта здесь: https://docs.docker.com/docker-for-windows/install/.
Я предлагаю вам проверить «Выставлять демон на tcp://localhost:2375 без tls» после установки …
… Вместо этого вы используете текущую операционную систему и создаете изоляцию, при которой приложение никогда не будет совместно использовать или считывать данные из других контейнеров или с хост-компьютера. …
Я создал изображение byjg/php
который содержит все, что нам нужно … …
Каждый образ docker имеет тег, это «версия» образа. Созданный образ использует следующий шаблон версия-cli
. В настоящее время у меня есть:
- byjg/php:5.6-cli
- byjg/php:7.0-cli
- byjg/php:7.1-cli
- …
- и так далее.
Для приведенных ниже примеров я буду использовать PHP версии 7.2, но вы можете выбрать версию, которая лучше всего подходит вам.
…
docker run -it --rm -v C:\MyDirectory:/workdir -w /workdir byjg/php:7.2-cli php -version
- docker run: это команда для загрузки образа и запуска.
- -это: Информирует о запуске docker, которому понадобится интерактивный терминал
- …
- byjg/php:7.2-cli: это изображение
- … Эта команда не существует на компьютере, а только в контейнере.
- -v C:MyDirectory:/workdir: локальная папка C:MyDirectory будет сопоставлена с параметром/workdir. … …
- -w/workdir: указывает контейнеру использовать каталог/workdir …
Например, если у вас есть каталог C:Проекты
и хотите запустить через командную строку файл ...
docker run -it --rm -v C:\Projects:/workdir -w /workdir byjg/php:7.2-cli php main.php
Или если вы хотите запустить композитор
для обновления …
docker run -it --rm -v C:\Projects:/workdir -w /workdir byjg/php:7.2-cli composer update
Вы можете отметить папку поставщиков будет создано/обновлено.
Единственное, что плохо на нем, это то, что команда выше не так … …
TL;DR
Мы создадим псевдоним команды, чтобы упростить выполнение и запоминание команд:
…
После открытия командной строки выполните следующие действия:
DOSKEY php=docker run -it --rm -v "%cd%":/workdir -w /workdir byjg/php:7.2-cli php $* DOSKEY phpunit=docker run -it --rm -v "%cd%":/workdir -w /workdir byjg/php:7.2-cli phpunit $* DOSKEY composer=docker run -it --rm -v "%cd%":/workdir -w /workdir byjg/php:7.2-cli composer $*
Теперь в любой папке можно просто запустить:
php
или
composer <>
Настройка команд docker в оболочке Windows Powershell
Powershell псевдоним является хитрым, потому что вам нужно удалить модуль …
Remove-Module PSReadLine DOSKEY /exename=powershell.exe php=docker run -it --rm -v "$(get-location):/workdir" -w /workdir byjg/php:7.2-cli php $* DOSKEY /exename=powershell.exe phpunit=docker run -it --rm -v "$(get-location):/workdir" -w /workdir byjg/php:7.2-cli phpunit $* DOSKEY /exename=powershell.exe composer=docker run -it --rm -v "$(get-location):/workdir" -w /workdir byjg/php:7.2-cli composer $*
Настройка PHP Storm
Выберите «Файл —> Настройки —> Языки и фреймворки —> PHP», а затем нажмите на многоточие рядом с интерпретатором CLI:
В окне интерпретатора CLI нажмите на сигнал «+» и выберите «Из Docker, Vagrant, VM…»
…
Вы должны следовать той же процедуре для композитора, начиная с «Файл» … …
…
- Docker для Windows обрабатывает общий доступ к тому иначе, чем Docker для Linux. …
- … …
Оригинал: «https://www.codementor.io/@byjg/microsoft-stops-support-php-for-windows-so-what-18caxbt6fm»