ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Docker - 自定义Dev环境(部署PHP)

2022-01-28 15:03:59  阅读:203  来源: 互联网

标签:extension 自定义 make Dev so docker php config Docker


docker其实比之前想象的要简单,下载你想要的服务镜像,用 docker run 生成一个容器,当你基础环境都ok的时候,docker commit 命令保存你新的自定义镜像,我需要的是centos中集成的lnmp,要求php >= 7.2,并开启以下扩展。

extension = yaf.so
extension = swoole.so
extension = mongodb.so
extension = redis.so
extension = trie_filter.so
extension = apcu.so
extension = xdiff.so

1.lnmp官网稳定版1.7

wget http://soft.vpser.net/lnmp/lnmp1.7.tar.gz -cO lnmp1.7.tar.gz && tar zxf lnmp1.7.tar.gz && cd lnmp1.7 && ./install.sh lnmp

2.docker commit :从容器创建一个新的镜像。

docker commit -a "stark" -m "stark_lnmp" a404c6c174a2  ChangPei_lnmp2.0(新镜像名):(Tag)cp2.0

安装扩展

PHP官网找到相应的扩展 https://www.php.net/

1.安装yaf

 wget https://pecl.php.net/get/yaf-3.2.5.tgz //下载
 tar -xzvf yaf-3.2.5.tgz // 解压
 phpize 
 ./configure --with-php-config=/usr/local/php/bin/php-config
 make && make install
 extension=yaf.so

2.安装swoole

git clone https://github.com/swoole/swoole-src.git
cd swoole-src
phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
extension=swoole.so

3.安装 MongoDB

wget https://pecl.php.net/get/mongodb-1.8.1.tgz
tar -xzvf mongodb-1.8.1.tgz
phpize //使用phpize解压   /usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
 make && make install
extension=mongodb.so

  1. 安装apcu
 wget http://pecl.php.net/get/apcu-5.1.17.tgz
 tar zxvf apcu-5.1.17.tgz
 cd apcu-5.1.17
 phpize
 ./configure --with-php-config=/usr/local/php/bin/php-config
 make && make install

5.安装redis

https://blog.csdn.net/xuezhiwu001/article/details/104972967,之前的博客里写过就不赘述了

搭建成功后,执行docker ,命令如下,用phpinfo()来查看下配置

docker run -it -d -p 8086:80 -v /Users/stark/cp/gzcp:/home/wwwroot/default/ 6ded827cca6d /bin/bash

启动后也发现了新的问题:

1.当docker运行起来时,怎么访问其他docker实例中的redis,怎么访问外部的docker机器?

2.当docker启动时,是不是因为端口占用而导致别的redis无法启动?

[root@2fefb27a68de /]# /etc/init.d/redis status
Redis server is running.
[root@2fefb27a68de /]# ps aux |grep redis
root       637  0.0  0.0   9180  1056 pts/0    S+   09:17   0:00 grep --color=auto redis

3.第三个就是静态页面的路径不正确,不知道yaf里是怎么搞的,这个问题先放放

标签:extension,自定义,make,Dev,so,docker,php,config,Docker
来源: https://www.cnblogs.com/zhaichangchang/p/15852726.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有