主頁 > 知識庫 > Docker從零構(gòu)建php-nginx-alpine鏡像的方法

Docker從零構(gòu)建php-nginx-alpine鏡像的方法

熱門標(biāo)簽:燃?xì)夤芫€地圖標(biāo)注顏色 寧波400電話辦理對企業(yè)的意義 北京人工外呼系統(tǒng)廠家 話術(shù)外呼系統(tǒng) 廣東如何申請400電話 西柏坡地圖標(biāo)注 哈爾濱400電話去哪辦理 i智能電話機(jī)器人yeta 400電話申請要什么條件

雖然之前也曾用docker環(huán)境運(yùn)行了一些項目,但對于鏡像這塊還不是很理解,且鑒于網(wǎng)上現(xiàn)成的鏡像都包含太多用不到的庫,所以決定從零開始構(gòu)建一個自己的鏡像。

alpine linux為基礎(chǔ)鏡像

docker pull gliderlabs/alpine

alpine linux 鏡像地址

目前最新的tag是3.8版本,鏡像只有4M的大小,非常的精簡。

運(yùn)行鏡像

docker run -it gliderlabs/alpine

運(yùn)行后可以看到里面有基本的linux文件系統(tǒng),這里不做演示,有興趣者可自行嘗試。

安裝php 和 nginx

apk update
apk add php7 nginx

接下來,根據(jù)自己的需要可以繼續(xù)安裝php相關(guān)擴(kuò)展包,或者其他linux擴(kuò)展包。

搜索擴(kuò)展包,如php7工具包,可通過以下指令:

# apk search php7

安裝php擴(kuò)展

復(fù)制代碼 代碼如下:
apk add php7-mysqli php7-pdo_mysql php7-mbstring php7-json php7-zlib php7-gd php7-intl php7-session php7-fpm php7-memcached

目錄結(jié)構(gòu)

  • php7目錄: /etc/php7
  • nginx目錄: /etc/nginx

啟動php-fpm和nginx

# 先創(chuàng)建pid文件,否則nginx運(yùn)行不了
mkdir /run/nginx 
touch /run/nginx/nginxpid

# 先運(yùn)行php,再運(yùn)行nginx
/usr/sbin/php-fpm7
/usr/sbin/nginx

至此,能看到php和nginx正常運(yùn)行,鏡像環(huán)境已經(jīng)基本完成了。 接下來,可以看看怎么把這個鏡像保存起來。

創(chuàng)建鏡像

另起一個終端,用 docker ps查看鏡像ID,如下指令可以保存鏡像:

docker commit -a "yisonli" -m "my first php7-nginx" 9d9c6030e5e9 yisonli/php7-nginx-alpine:0.1

注:9d9c6030e5e9為鏡像ID,yisonli/php7-nginx-alpine為保存的鏡像名,版本定義為0.1

運(yùn)行新生成的鏡像

綁定8080端口看看效果

docker run -it -p 8080:8080 yisonli/php7-nginx-alpine:0.1

手動啟動php-fpm和nginx后,瀏覽器就可看到效果了。

http://127.0.0.1:8080/index.php

docker補(bǔ)充記錄

【共享文件夾】

docker run -v `pwd`/www:/var/www/html -it -p 8080:8080 yisonli/php7-nginx-alpine:0.1

【刪除未運(yùn)行的容器】

docker rm $(docker ps -a -q)

【用Dockerfile方式構(gòu)建鏡像】

docker build -t yisonli/php7-nginx-alpine:0.2 .

0.2是本文流程稍作優(yōu)化后,寫成Dockerfile后build出來的,而且?guī)幽_本。

 已上傳到 Docker Hub,可供下載研究。

【給鏡像添加額外的tag標(biāo)簽】

docker tag 9d9c6030e5e9 test/mytag

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

標(biāo)簽:湘潭 巴中 阜陽 珠海 襄陽 西藏 張家口 開封

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Docker從零構(gòu)建php-nginx-alpine鏡像的方法》,本文關(guān)鍵詞  Docker,從,零,構(gòu)建,php-nginx-alpine,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Docker從零構(gòu)建php-nginx-alpine鏡像的方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于Docker從零構(gòu)建php-nginx-alpine鏡像的方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章