美文网首页程序员
docker 初识(php开发环境配置)

docker 初识(php开发环境配置)

作者: 8c428c5bd141 | 来源:发表于2019-01-03 16:49 被阅读1次

安装docker(win10)

Mysql

docker pull mysql:5.7
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=你要设置的mysql密码 --name mysql57 mysql:5.7 //你要设置的mysql密码

Redis

docker pull redis
docker run -d -p 6379:6379 --name redis01 redis

PHP

docker pull php:7.2-fpm
docker run -d -v D:/docker_conf/www:/var/www/html -p 9000:9000 -p 9501:9501 --link mysql57:mysql --name php72 php:7.2-fpm

扩展

docker-php-ext-install pdo_mysql

docker-php-ext-install mysqli

php-redis扩展

1、进入php72容器 docker exec -it php72 bash
2、curl -L -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/3.1.3.tar.gz //3.1.3=>版本可换
3、cd /tmp
4、tar xfz /tmp/redis.tar.gz //解压
// ls 查看
// rm -r /tmp/redis.tar.gz 删除
5、mkdir -p /usr/src/php/ext //(已存在目录就忽略)
6、在tmp目录下 mv phpredis-3.1.3 /usr/src/php/ext/redis
7、在cd /usr/src/php/ext/redis目录下 docker-php-ext-install redis
8、php -m 查看redis是否安装
9、外部docker restart php72 //php72是docker的name

php-swoole扩展(和redis扩展类似)

1、进入php72容器 docker exec -it php72 bash
2、curl -L -o /tmp/swoole_ext.tar.gz https://codeload.github.com/swoole/swoole-src/tar.gz/v4.2.11
//版本可换 https://github.com/swoole/swoole-src/releases
3、cd /tmp
4、tar xfz /tmp/swoole_ext.tar.gz //解压(swoole-src-4.2.11)
// ls 查看
// rm -r /tmp/swoole_ext.tar.gz 删除
5、mkdir -p /usr/src/php/ext //(已存在目录就忽略)
6、在tmp目录下 mv swoole-src-4.2.11 /usr/src/php/ext/swoole
7、在cd /usr/src/php/ext/swoole目录下 docker-php-ext-install swoole
8、php -m 查看swoole是否安装
9、外部docker restart php72 //php72是docker的name
10、下个easyswoole什么的测试一下
(如果不能运行,是因为容器端口没暴露的原因,解决:
docker run -d -v D:/docker_conf/www:/var/www/html -p 9000:9000 -p 9501:9501 --link mysql57:mysql --name php72 php:7.2-fpm
--启动容器时需要加入端口 -p 9501:9501 //需要哪个端口可以添加

Nginx

docker pull nginx:1.14.1
docker run -d -p 80:80 -v D:/docker_conf/www:/var/www/html --link php72:phpfpm --name nginx114 nginx:1.14.1

docker exec -it nginx114 /bin/bash
(
vim /etc/nginx/conf.d/default.conf //没有就apt-get安装
配置:

    location \ {
        root  /var/www/html;
        index index.html index.htm index.php;
    }
    
    location ~\.php$ {
        ...
        root           /var/www/html
        fastcgi_pass   电脑ip:9000;### 最好配个本地的虚拟域名
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
        ...
    } 

'''
/etc/init.d/nginx reload
)

相关文章

网友评论

    本文标题:docker 初识(php开发环境配置)

    本文链接:https://www.haomeiwen.com/subject/jwqqrqtx.html