Docker?自定義Dev環(huán)境并部署php
docker其實(shí)比之前想象的要簡(jiǎn)單,下載你想要的服務(wù)鏡像,用 docker run 生成一個(gè)容器,當(dāng)你基礎(chǔ)環(huán)境都o(jì)k的時(shí)候,docker commit 命令保存你新的自定義鏡像,我需要的是centos中集成的lnmp,要求php >= 7.2,并開(kāi)啟以下擴(kuò)展。
extension = yaf.so extension = swoole.so extension = mongodb.so extension = redis.so extension = trie_filter.so extension = apcu.so extension = xdiff.so
1.lnmp官網(wǎng)穩(wěn)定版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 :從容器創(chuàng)建一個(gè)新的鏡像。
docker commit -a "stark" -m "stark_lnmp" a404c6c174a2 ChangPei_lnmp2.0(新鏡像名):(Tag)cp2.0
安裝擴(kuò)展
PHP官網(wǎng)找到相應(yīng)的擴(kuò)展 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
4.安裝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
http://m.fzitv.net/article/224449.htm
搭建成功后,執(zhí)行docker ,命令如下,用phpinfo()來(lái)查看下配置
docker run -it -d -p 8086:80 -v /Users/stark/cp/gzcp:/home/wwwroot/default/ 6ded827cca6d /bin/bash
啟動(dòng)后也發(fā)現(xiàn)了新的問(wèn)題:
1.當(dāng)docker運(yùn)行起來(lái)時(shí),怎么訪問(wèn)其他docker實(shí)例中的redis,怎么訪問(wèn)外部的docker機(jī)器?
2.當(dāng)docker啟動(dòng)時(shí),是不是因?yàn)槎丝谡加枚鴮?dǎo)致別的redis無(wú)法啟動(dòng)?
[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.第三個(gè)就是靜態(tài)頁(yè)面的路徑不正確,不知道yaf里是怎么搞的,這個(gè)問(wèn)題先放放
到此這篇關(guān)于Docker 自定義Dev環(huán)境(部署PHP)的文章就介紹到這了,更多相關(guān)Docker 自定義Dev環(huán)境內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于Docker實(shí)現(xiàn)MySQL主從復(fù)制的詳細(xì)教程
這篇博客整理了如何在Docker環(huán)境下配置MySQL主從復(fù)制,通過(guò)創(chuàng)建和命名兩個(gè)MySQL容器,設(shè)置獨(dú)立IP,并詳細(xì)說(shuō)明了在宿主機(jī)上持久化數(shù)據(jù)、開(kāi)啟root遠(yuǎn)程訪問(wèn)及添加復(fù)制用戶的過(guò)程,需要的朋友可以參考下2024-10-10
開(kāi)源框架?Matrix-Dendrite?搭建聊天服務(wù)器的詳細(xì)過(guò)程
Matrix?是一個(gè)開(kāi)源、可交互、去中心化的實(shí)時(shí)通信服務(wù)框架。使用?Matrix?可以搭建安全的通信服務(wù)器,配合支持?Matrix?的客戶端可以實(shí)現(xiàn)個(gè)人、團(tuán)隊(duì)間的實(shí)時(shí)聊天交互,對(duì)Matrix?Dendrite搭建聊天服務(wù)器的過(guò)程感興趣的朋友一起看看吧2022-03-03
docker中搭建overlay 網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境
這篇文章主要介紹了docker中搭建overlay 網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境的相關(guān)資料,需要的朋友可以參考下2017-08-08
IDEA直接打包Docker鏡像的實(shí)現(xiàn)
Docker提供了多種方法來(lái)打包鏡像,本文主要介紹了IDEA直接打包Docker鏡像的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2024-06-06
dockerfile-maven-plugin使用指南小結(jié)
最近在將應(yīng)用部署到容器平臺(tái),需要在打包時(shí)生成docker鏡像,在網(wǎng)上首先搜到了docker-maven-plugin這個(gè)插件,本文就來(lái)介紹了dockerfile-maven-plugin使用小結(jié),感興趣的可以了解一下2021-09-09
Docker如何解決tomcat容器啟動(dòng)成功,無(wú)法訪問(wèn)的問(wèn)題
這篇文章主要介紹了Docker如何解決tomcat容器啟動(dòng)成功,無(wú)法訪問(wèn)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07

