centos7 docker 搭建 php nginx redis mysql xdebug 环境

1.安装docker(忽略),修改docker源(可忽略)

   镜像地址可登录阿里云获得https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

#vim /etc/docker/daemon.json

添加内容

"registry-mirrors": ["https://a2uhdvfv.mirror.aliyuncs.com"] 

}

 2.创建容器(/docker目录为同一管理docker的目录,/docker/www为项目目录)

1.创建网络

#docker network create -d bridge web

 

2.创建php容器(容器的php配置文件路径/usr/local/etc/php/conf.d)

#docker run -p 9000:9000 -p 9001:9001 --name php -v /docker/www:/www --network=web --privileged=true -d php:7.1.0-fpm

 

3.创建nginx容器

#docker run -p 80:80 --name nginx -v /docker/www:/www -v /docker/nginx/conf.d:/etc/nginx/conf.d -v /docker/nginx/logs:/wwwlogs --network=web --privileged=true -d nginx:1.15.8

 

4.创建redis容器 (注意:/docker/redis/redis.conf为redis配置文件,需从以前的redis中复制过来,并屏蔽daemonize yes  否则启动不了)

#docker run -d  -p 6379:6379 --name redis -v /docker/redis/redis.conf:/etc/redis/redis.conf -v /docker/redis/data:/data --network=web --privileged=true -d redis:4.0.9 redis-server /etc/redis/redis.conf --appendonly yes

 

5.创建mysql容器

#docker run -p 3306:3306 --name mysql --network=web \

-v /docker/mysql/conf:/etc/mysql \

-v /docker/mysql/logs:/var/log/mysql \

-v /docker/mysql/data:/var/lib/mysql \

-e MYSQL_ROOT_PASSWORD=123456 \

-d mysql:5.7

 

6.composer

#docker pull composer:1.8.6
#docker run -it --name composer -v /docker/www/app:/app --privileged=true composer <要执行的composer命令>

3.安装php扩展:xdebug、redis、mysql、composer

#docker exec -it php bash

pdo_mysql:

#docker-php-ext-install pdo pdo_mysql
更多库:bcmath iconv mcrypt pdo_mysql mysql mbstring opcache gd
 
Xdebug:
#pecl install xdebug-2.5.0 && docker-php-ext-enable xdebug
 
php配置:
#vi /usr/local/lib/php/extensions/no-debug-non-zts-20160303/xdebug.so
添加以以下内容:
xdebug.remote_host = phpstorm所在电脑IP
xdebug.remote_enable = 1
xdebug.remote_port = 9001
xdebug.remote_handler = dbgp
xdebug.remote_mode = req
xdebug.idekey = "PHPSTORM"
 
redis:
#pecl install redis-3.1.0 && docker-php-ext-enable redis

 

你可能感兴趣的:(linux,docker,docker,php,redis,nginx,debug)