服務器使用docker部署nginx和php

docker提供了在服務端分布式的部署應用,這樣的好處是方便維護和升級。

接下來我來介紹一些我在自己的服務器是如何使用docker部署nginx和php的。

首先需要在服務器端安裝docker,這個不是本篇文章的重點所以就不詳加敘述了,具體docker的安裝方法在docker的官網上有,而且非常詳細,按照官網提供的步驟一步一步來就可以安裝成功。

接下來就開始介紹具體部署的過程:

下載或者構建需要的php和nginx的鏡像。這里我使用的nginx鏡像是docker官網提供的nginx鏡像,php的鏡像是使用ubuntu:16.04的鏡像構建的php鏡像。php的版本是PHP 7.0.8-0ubuntu0.16.04.3 (cli) ( NTS )。注意如果php啟動是需要php-fpm。php5.3以上版本fpm就內建在php內。如果是5.3一下需要在另外安裝編譯php,具體的教程可是可以找到的。nginx的版本是nginx/1.11.6。這個是現在目前docker官網最新的版本。具體的執行的命令有:

docker search nginx ? ?在官網的倉庫中搜索nginx的鏡像

docker search nginx:version ? ?nginx:version 是指定nginx的版本進行搜索。例如要安裝nginx1.8.1,那么命令就是docker search nginx:1.8.1

docker pull $ImageName:Desciption ? ?根據search返回的鏡像列表,選擇要下載的鏡像。

上面的是給大家做一些介紹,下面是我下載和構建容器使用的方法:

docker pull nginx ?下載官方nginx鏡像

docker pull ubuntu 下載官方的ubuntu鏡像用來創建PHP的容器。

docker run -it --name PHP -v /code:/home/code ubuntu /bin/bash ?使用ubuntu創建容器,容器的名稱是PHP,添加數據卷使宿主主機的文件路徑/code和容器的文件路徑/home/code進行綁定。

docker run -it --name Nginx -v /code:/home/code --link PHP:php -p 80:80 ngixn /bin/bash? 使用nginx鏡像構建容器,容器名稱是Nginx,添加數據卷使宿主主機的文件路徑/code和容器的文件路徑/home/code進行綁定,連接之前創建的PHP,并把PHP容器命名為php。這里要注意,由于需要用到nginx和php容器的互連,所以需要先創建PHP容器,然后在創建Nginx容器,在創建Nginx容器是才能指定連接PHP。否則就會報錯。

docker start PHP ?先啟動PHP容器

docker start Nginx ?啟動Nginx容器。

由于PHP容器是使用使用ubuntu的鏡像創建的,所以需要安裝php先。

docker exec -it PHP /bin/bash ?啟動一個PHP容器的偽終端的命令行。

apt-get update ?更新,官方提供的ubuntu系統是最簡潔的版本

apt-get install php ?安裝php,php的安裝過程與在平常的安裝過程是一樣的。

php安裝完成后需要使用php-fpm的服務,這里需要修改php-fpm的配置。這里需要修改的是php-fpm的www.conf。

find / -name www.conf ?查找www.conf文件所在的位置。這里需要注意,docker官方提供的ubuntu鏡像里滿是沒有安裝vi或者vim的。要修改配置文件可以安裝vim或者使用mv或者cp的命令將www.conf放到數據卷內,然后在宿主主機中進行修改,修改完成后再mv或者cp覆蓋容器中的文件。

修改www.conf,在文件中找到?listen = /run/php/php7.0-fpm.sock 這一行并注釋掉,并添加一行保存并退出如下:

;listen = /run/php/php7.0-fpm.sock

listen = 0.0.0.0:9000

whereis php-fpm ?查找php-fpm服務可執行文件所在的路徑

/usr/sbin/php-fpm7.0 ?啟動php-fpm,這里的路徑是根據 whereis php-fpm 命令查找到的結果來啟動的。

如果之前已經啟動了fpm,使用ps aux | grep php-fpm 查看php-fpm的進程號然后kill掉再啟動。

這里php的配置就基本完成了。接下來是Nginx的配置。

docker exec -it Nginx /bin/bash ?啟動Nginx容器的偽終端命令行。

使用find / -name nginx.conf 找到nginx.conf配置文件的路徑。這里一樣沒有vi或者vim進行直接配置,可以按照配置php的方式進行配置。

配置php的配置文件:

server {

? ? ? ? listen 80;

? ? ? ? server_name 172.17.0.3;

? ? ? ? root /home/code; ? ? ?#這里的路徑是數據卷的路徑,php項目存放在這個目錄里面。

? ? ? ? location / {

? ? ? ? ? ? ? ? index index.html index.htm index.php;

? ? ? ? ? ? ? ? if (!-e $request_filename) {

? ? ? ? ? ? ? ? rewrite . /index.php last;

? ? ? ? ? ? ? ? }

? ? ? ? }

? ? ? ? location ~ \.php$ {

? ? ? ? ? ? ? ? include fastcgi_params;

? ? ? ? ? ? ? ? fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

? ? ? ? ? ? ? ? fastcgi_pass php:9000;

? ? ? ? ? ? ? ? fastcgi_index index.php;

? ? ? ? }

}

然后啟動nginx。使用service nginx start或者service nginx restart。

基本按照上述的步驟做下來就可以實現nginx和php的互聯了

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,702評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,143評論 3 415
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,553評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,620評論 1 307
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,416評論 6 405
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,940評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,024評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,170評論 0 287
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,709評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,597評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,784評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,291評論 5 357
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,029評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,407評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,663評論 1 280
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,403評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,746評論 2 370

推薦閱讀更多精彩內容