Docker 설치 Nginx + PHP - FPM 7.2 + Reids 등 확장 + Composer
4412 단어 docker
2. PHP - fpm 설치 7.2 참조https://www.runoob.com/docker/docker-install-php.html - 디 렉 터 리 mkdir 만 들 기 ~ / php / conf. d - Nginx 미 러 docker pull php: 7.2 - fpm - 용기 docker run - w 만 들 기 /var/www/html -v /root/nginx/html:/var/www/html -v /root/php:/usr/local/etc/php --privileged=true -p 80:80 --name php-fpm -d php:7.2-fpm
3. ~ nginx / conf / nginx. conf 파일 추가
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
client_max_body_size 50m;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf;
}
4. ~ / nginx / conf. d / www. conf 파일 추가
#fastcgi_pass 는 다음 FPM 주소 에 따라 docker inspect pp - fpm 를 통 해 fpm 용기 ip 주 소 를 볼 수 있 습 니 다.
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.php index.html index.htm;
try_files $uri $uri/ /index.php?$query_string;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html/Carbonuni-PHP;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php {
root /usr/share/nginx/html;
fastcgi_pass 172.17.0.5:9000;
fastcgi_index index.php;
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME /var/www/html/$fastcgi_script_name;
include fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
5. Nginx 설정 수정 용기 docker 다시 시작 nginx
6. Redis 설치
php - fpm 용기 docker exec - it php - fpm bash 진입
curl -L -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/3.1.6.tar.gz
tar xfz /tmp/redis.tar.gz
rm -r /tmp/redis.tar.gz
mkdir -p /usr/src/php/ext
mv phpredis-3.1.6 /usr/src/php/ext/redis
docker-php-ext-install redis
7. 확장 기능 을 설치 하면 docker - php - ext - install 을 통 해
예 를 들 어 mysql 설치
docker-php-ext-install mysqli
8. GD 라 이브 러 리 설치\ # 업데이트 소프트웨어 소스 apt update \ # 각종 라 이브 러 리 apt install - y libwebp - dev libjpeg - dev libpng - dev libfreetype6 - dev \ # 압축 해제 소스 docker - php - source extract \ # gd 소스 폴 더 cd / usr / src / php / ext / gd \ # docker - php - ext - configure gd -- with - webp - dir = / usr / include / webp -- with - jpeg - dir = / usr / include -- with - png - dir = / usr / include -- with - free type - dir = / usr / include / freetype 2 디 렉 터 리 mkdir / usr / local / etc / php / conf. d / \ # 컴 파일 설치 docker - php - ext - install gd \ # 설치 진행 보기 php - m | grep gd \ # 용기 재 부팅 docker restart php
9. composer 를 추가 하여 composer docker pull composer 를 XXX 에 추가 합 니 다. 이 항목 에는 composer. json docker run - it -- name composer - v / root / nginx / html / XXX: / app -- privileged = true composer composer install 이 포함 되 어야 합 니 다. --ignore-platform-reqs
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Swarm의 도커 비밀이 게시물에서는 Redis를 사용한 실제 시나리오 예제를 제공하여 사용 방법을 보여주고자 합니다. Docker 기술에 대한 기본 지식 Docker Swarm 오케스트레이터에 대한 기본 지식 "Docker Swarm ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.