>백엔드 개발 >PHP 튜토리얼 >macos - docker php-fpm을 시작하는 방법은 무엇입니까?

macos - docker php-fpm을 시작하는 방법은 무엇입니까?

WBOY
WBOY원래의
2016-08-04 09:20:421327검색

Dockerfile은 다음과 같습니다: https://github.com/docker-library/php/blob/f016f5dc420e7d360f7381eb014ac6697e247e11/7.0/fpm/alpine/Dockerfile

빌드 후 실행
sudo docker run -d -p 9000:9000 --name php7-fpm daocloud.io/xxx/php7-fpm-alpine:first

daocloud.io/xxx/php7-fpm-alpine:first는 빌드된 이미지입니다

그러면 sudo docker ps는 이 장면이 실행되고 있음을 보여줍니다

로컬에 nginx가 있고 다시 시작합니다.
로컬 php-fpm을 끄고 위 명령을 실행하여 컨테이너를 시작하고 PHP 파일에 액세스합니다.
502 오류가 보고되지 않지만 오류 파일을 찾을 수 없습니다. .

시스템이 mac인데 무엇이 문제인가요?
또한 -v 명령인 -v에 매달리기도 했습니다
sudo docker run -d -p 9000:9000 -v /usr/local/www :/var/ www/html --name php7-fpm daocloud.io/xxx/php7-fpm-alpine:first

/usr/local/www는 내 로컬 nginx 액세스 디렉터리입니다

답글 내용:

Dockerfile은 다음과 같습니다: https://github.com/docker-library/php/blob/f016f5dc420e7d360f7381eb014ac6697e247e11/7.0/fpm/alpine/Dockerfile

빌드 후 실행
sudo docker run -d -p 9000:9000 --name php7-fpm daocloud.io/xxx/php7-fpm-alpine:first

daocloud.io/xxx/php7-fpm-alpine:first는 빌드된 이미지입니다

그러면 sudo docker ps는 이 장면이 이미 실행 중임을 보여줍니다

로컬에 nginx가 있고 다시 시작합니다.
로컬 php-fpm을 끄고 위 명령을 실행하여 컨테이너를 시작하고 PHP 파일에 액세스합니다.
502 오류가 보고되지 않지만 오류 파일을 찾을 수 없습니다. .

시스템이 mac인데 무엇이 문제인가요?
또한 -v 명령인 -v에 매달리기도 했습니다
sudo docker run -d -p 9000:9000 -v /usr/local/www :/var/ www/html --name php7-fpm daocloud.io/xxx/php7-fpm-alpine:first

/usr/local/www는 내 로컬 nginx 액세스 디렉터리입니다

안녕하세요. www 디렉토리도 php-fpm 인스턴스에 매핑되어야 합니다. fpm 메소드 때문에 nginx가 php-fpm에 전달하는 것은 php 파일을 포함하지 않는 Request 객체뿐입니다.

따라서 www 디렉토리를 php-fpm 인스턴스 에 매핑해야 합니다.

음,
Nginx에 표시된 경로가 php-fpm에 표시된 경로와 동일해야 합니다. Nginx가 php-fpm에 경로를 전달하기 때문입니다.
이 부분을 건너뛰었습니다. 빠져나가는 방법: php-fpm.conf를 찾아 여기에 구성된 error_log 경로를 확인한 후 이 error_log를 찾으면 .php를 찾을 수 없다는 오류가 표시됩니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.