Ubuntu 搭建基于Docker的LNMP+Redis的開發(fā)環(huán)境(圖文)
Ubuntu 搭建基于Docker的LNMP+Redis的開發(fā)環(huán)境
服務(wù)器環(huán)境:Ubuntu 14.04
1.安裝Docker
1.1 執(zhí)行update命令,和服務(wù)器同步軟件包,執(zhí)行apt-get install * 時可以下載最新的軟件。
1.2 安裝Docker和創(chuàng)建軟鏈接
1.3 啟用Docker服務(wù)
2. 獲取搭建環(huán)境所需鏡像
2.1 MySQL鏡像
2.2 Redis鏡像
2.3 nginx-php-fpm鏡像
2.4 查看已下載的鏡像
對于Docker初學(xué)者來說,可以使用現(xiàn)有鏡像,目前下載鏡像的渠道主要有docker官方的公有倉庫Docker Hub(https://hub.docker.com)和國內(nèi)的DaoCloud(https://dashboard.daocloud.io), 兩者區(qū)別是國外的資源較多,但是下載速度極慢,國內(nèi)的資源較少,但是下載速度很快。當(dāng)然,能力比較好的技術(shù)人員,可以自己搭建所需鏡像,并且可以上傳到以上兩個網(wǎng)站共享出來。
3.使用鏡像生成對應(yīng)容器
3.1 生成MySQL容器
3.1.1 --name為容器名稱,mysql_test為自定義名稱;
3.1.2 -p 暴露端口,映射端口(可以映射多個端口),外部端口 : 容器內(nèi)部端口;
3.1.3 -e 設(shè)置任意環(huán)境變量(容器內(nèi))
MYSQL_ROOT_PASSWORD=root 這里指設(shè)置數(shù)據(jù)庫密碼為root;
3.1.4 mysql:5.6 鏡像名稱:版本
3.2 生成Redis容器
3.2.1 -p6379:6379 映射端口,即外部端口:容器內(nèi)端口
3.2.2 redis 鏡像版本
3.3 生成nginx-php-fpm容器
3.3.1 --namelnmp_test 為容器名稱;
3.3.2 -p 暴露端口,映射端口(可以映射多個端口) 外部端口:容器內(nèi)部端口;
-p 88:80 外部端口88:容器內(nèi)部端口80;
3.3.3 -d:后臺模式運行,如果沒有則以前臺運行(當(dāng)前進(jìn)程關(guān)閉后,當(dāng)前容器自動關(guān)閉)
3.3.4 richarvey/nginx-php-fpm 當(dāng)前鏡像名稱:版本
3.3.5 --link:容器內(nèi)部通信 容器名稱:內(nèi)部別名(內(nèi)部使用)
--link mysql:db 使用時,直接使用db 就可以訪問到數(shù)據(jù)庫mysql容器
php 訪問本地mysql 使用的是localhost,容器內(nèi)部即可使用 db
3.3.6 -v:卷,外部目錄虛擬到容器內(nèi)目錄 外部目錄:容器內(nèi)目錄
-v /home/lanmps/www:/www/wwwroot
/home/lanmps/www外部目錄,我的項目目錄
/www/wwwroot容器內(nèi)部目錄
3.4. 查看已經(jīng)生成的容器并啟動容器
可能遇上的問題:
1.鏡像下載緩慢或者失敗,如圖:
主要原因:資源已取消、網(wǎng)速慢;
解決辦法:優(yōu)先查找國內(nèi)鏡像資源,獲取鏡像失敗重新查找資源或者自己做所需鏡像資源;
1.修改掛載目錄文件,不能同步到容器環(huán)境;
原因:容器中的nginx配置文件中的網(wǎng)站目錄路徑跟我掛載的路徑不一致;
解決辦法:進(jìn)入容器環(huán)境,修改nginx配置文件。
測試是否搭建成功:
已經(jīng)能成功訪問到搭建的環(huán)境,數(shù)據(jù)庫也能成功連接。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
Docker File創(chuàng)建鏡像失敗ERROR [3/4] RUN yum&nbs
文章描述了在使用DockerFile創(chuàng)建基于CentOS Linux 8的鏡像時遇到的問題,即無法下載vim軟件包的元數(shù)據(jù),問題的原因是CentOS Linux 8的AppStream倉庫沒有可用的URL,為了解決這個問題,作者建議將CentOS版本修改為7,因為CentOS Linux 7的AppStream倉庫通常有可用的URL2024-11-11Docker部署HertzBeat實時監(jiān)控告警系統(tǒng)
HertzBeat是一款開源的實時監(jiān)控告警系統(tǒng),本文就來介紹一下Docker部署HertzBeat實時監(jiān)控告警系統(tǒng),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-11-11如何通過Dockerfile 創(chuàng)建 kali-novnc
這篇文章主要介紹了如何通過Dockerfile 創(chuàng)建 kali-novnc,在Dockerfile所在目錄運行相關(guān)命令操作即可完成,本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-04-04docker?搭建?vulhub?靶場環(huán)境的詳細(xì)過程
Vulhub是一個基于docker和docker-compose的漏洞環(huán)境集合,進(jìn)入對應(yīng)目錄并執(zhí)行一條語句即可啟動一個全新的漏洞環(huán)境,讓漏洞復(fù)現(xiàn)變得更加簡單,讓安全研究者更加專注于漏洞原理本身,這篇文章給大家介紹docker?搭建?vulhub?靶場環(huán)境的過程,感興趣的朋友一起看看吧2022-08-08