Docker에서 실행중인 php7.1을 PhpStorm에서 단계 실행
Ubuntu17.04에서 확인했지만 Mac + Docker for Mac에서도 Windows + Docker for Windows에서도 작동합니다. . 입니다.
움직이지 않으면 댓글을 달아주세요!
기타 주요 도구 버전
Docker version 17.09.0-ce
PHP 7.1.10
PhpStorm 2017.2.4
Docker로 php7.1 이동
깊이 생각하지 않고 공식 이미지 apache-7.1 태그를 사용합니다.
xdebug가 설치되어 있지 않으므로 그냥 추가합니다.
Dockerfile
FROM php:7.1-apache
RUN pecl install xdebug
php.ini에 xdebug를 사용하기위한 최소한의 설정을 씁니다.
php.ini
zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20160303/xdebug.so
xdebug.idekey = "PHPSTORM"
xdebug.remote_autostart= 1
xdebug.remote_connect_back = 1
xdebug.remote_enable = 1
php:7.1-apache는 php.ini 들어 있지 않습니다. .
아니 깜짝.
정말 최소한의 설정만 하고 있습니다. 실제로 많은 설정을 작성해야 할 것입니다. .
나중에 단계 실행 동작을 확인하기 위해
index.php
스텝 실행하고 있는지 확인하고 싶기 때문에 간단하게 변수나 루프를 사용해 보겠습니다.index.php
<?php
$str = "";
for ($i = 0; $i < 10; $i++) {
$str .= "+";
echo $str . "<br/>";
}
phpinfo();
최소한의 설정을 가진 docker-compose.yml
docker-compose.yml
version: "3"
services:
apache-php71:
build: .
ports:
- "80:80"
volumes:
- "./:/var/www/html"
현재 디렉토리를 DocumentRoot로 설정합니다.
지금까지 생성한 파일은 현재 디렉토리에 모두 둡니다.
php.ini
가 DocumentRoot 아래에 있거나 무서운 구성입니다만, 이것으로 apache가 읽어 주기 때문에. 우선 테스트를 위해서입니다. 다시 말하지만 실제 환경에서는 (ry플랫 디렉토리 구성
--+- カレントディレクトリ
+ docker-compose.yml
+ Dockerfile
+ index.php
+ php.ini
준비가되면 재밌게 시작
docker-compose up
시작하면
http://localhost
에 액세스하여 phpinfo가 표시되면 성공합니다.xdebug가 활성화되어 있는지 확인
PhpStorm에서 연결
IDE key:PHPSTORM
Host:localhost
Post:9000
Name:なんでも
Host:localhost
Post:80
Debuggger:Xdebug
Use path mappings にチェック
カレントディレクトリを /var/www/htmlにマッピング
이번에는 PHP가 1 파일 밖에 없기 때문에 매핑은 하나뿐입니다만, 실제 프로젝트에서는 디렉토리마다 매핑이 필요하게 될 것입니다.
이상으로 준비 완료.
단계 실행
http://localhost
다시로드 변수의 내용이 둥근 모양입니다. 좋아요.
F8에서 스텝 아웃, F7에서 스텝 인, F9에서 리줌입니다.
넷에서는 호스트 OS측의 IP 주소의 취급이 어려운 예가 많이 있었습니다만, 특히 문제 없었습니다.
PhpStorm이 최선을 다하고 있습니까?
어쨌든 생각했던 것보다 쉽게 준비 할 수있었습니다.
그건 그렇고,이 테스트 코드는 아래에 있습니다. clone 하면 그대로 동작할 것.
htps : // 기주 b. 코 m / 후루 8 마 / 도 c 케 r_php71_x
그럼 좋은 디백 라이프를!
Reference
이 문제에 관하여(Docker에서 실행중인 php7.1을 PhpStorm에서 단계 실행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/furu8ma/items/86a147f90ad6344b4cd9텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)