亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 服務器 > Web服務器 > 正文

用Docker快速構建LEMP環境的方法示例

2024-09-01 13:56:33
字體:
來源:轉載
供稿:網友

LEMP (Linux + Nginx + MySQL + PHP) 基本是如今網頁開發者的必備環境,正常情況下我們可以直接通過系統包管理工具如 apt、yum 直接安裝使用,然而由于兼容考慮,系統自帶的軟件源往往更新緩慢,在半年左右就會停滯在上個版本,影響開發者對新功能的跟進測試。

為了追求最新版本,不少開發者開始下載源碼包自己進行編譯,但過程過于繁瑣,到后來也催化出類似 Oneinstack、lamp.sh 等一鍵安裝包。

而 Docker 的推出,可以大大簡化以上的過程。在 Docker Hub 上有許多維護者將 php、nginx 等各個組件打包成一個個 image,作為用戶只要拉取組合相關的 image 即可搭建 LEMP。而且基于 Docker 的特性至少帶來以下優點:

  • 更新迅速,隨時回滾指定版本
  •  容器隔離,安全性高
  • 無系統殘留,不存在依賴鏈沖突

兩個月前我就開始著手構建整個 LEMP 的框架,并根據需要自行維護了部分 image,相關編排模板開源在 https://github.com/metowolf/docker-lemp。當前整個博客、API 站都跑在 docker 上,運行起來相當穩定。

容器

 

容器名 版本
metowolf/php 7.3.1, 7.3, 7, current
metowolf/nginx 1.15.8, 1.15, 1, current
mysql/mysql-server 8.0.15
phpmyadmin/phpmyadmin 4.8.5
abiosoft/caddy 0.11.2
redis 5.0.3-alpine

 

演示

下面我用一個簡單的例子做個示范。

首先需要安裝 docker 和 docker-compose 兩個環境。為了方便演示,這里直接使用 PWD 的試用主機來運行。

$ curl -fsSL https://get.docker.com -o get-docker.sh$ sh get-docker.sh$ curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose$ chmod +x /usr/local/bin/docker-compose

登陸服務器,拉取編排模板

$ git clone https://github.com/metowolf/docker-lemp.git$ cd docker-lemp

創建配置文件

$ cp .env.example .env$ cp docker-compose.example.yml docker-compose.yml

創建 nginx 配置

$ cat > etc/nginx/config/example.conf <<EOFserver { listen  80; server_name example.com *.direct.labs.play-with-docker.com; root /var/www/example.com; index index.php; location / { try_files /$uri /$uri/ /index.php?/$query_string; } location ~ /.php/$ { fastcgi_split_path_info ^(.+/.php)(/.+)/$; fastcgi_pass php-fpm:9000; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME /$document_root/$fastcgi_script_name; fastcgi_param PATH_INFO /$fastcgi_path_info; }}EOF

創建 phpinfo 文件

$ mkdir wwwroot/example.com/$ cat > wwwroot/example.com/index.php <<EOF<?phpphpinfo();EOF

啟動容器

$ docker-compose up -d php-fpm nginx mysql

啟動成功后,如果沒有意外,我們就能在 80 端口看到熟悉的頁面了。

Docker,LEMP

高級玩法

 QUIC

在編排示例中,我添加了一個 caddy 來反代 nginx,以此來獲得 quic 特性。借助 docker 的特性,我們可以讓 caddy 單獨監聽 443 udp 端口,讓 nginx 依舊監聽 443 tcp 端口,這樣可以同時兼顧 TLSv1.3 和 quic。

nginx 配置中需要添加一個返回頭,提醒瀏覽器嘗試連接 quic

add_header alt-svc 'quic=":443"; ma=2592000; v="44,43,39"';

brotli

在 nginx 容器中,我將 brotli 編譯成動態模塊,可以根據需要開啟。

新建 etc/nginx/nginx.conf 配置文件

user nginx;worker_processes auto;error_log /var/log/nginx/error.log warn;pid  /var/run/nginx.pid;# 掛載 brotli 模塊load_module modules/ngx_http_brotli_filter_module.so;load_module modules/ngx_http_brotli_static_module.so;events { worker_connections 1024;}http { include  /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" '      '$status $body_bytes_sent "$http_referer" '      '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile  on; #tcp_nopush  on; keepalive_timeout 65; #gzip on; include /etc/nginx/conf.d/*.conf;}

新建 etc/nginx/config/brotli.conf 配置文件

brotli    on;brotli_comp_level 6;brotli_types  application/x-httpd-php application/javascript application/x-javascript application/xml application/json text/plain text/javascript text/css text/xml image/jpeg image/gif image/png image/svg+xml;

修改 docker-compose.yml 掛載 nginx.conf 配置文件

--- docker-compose.yml+++ docker-compose.yml@@ -11,6 +11,7 @@  - php-fpm  volumes:  - ./log/nginx:/var/log/nginx:rw+  - ./etc/nginx/nginx.conf:/etc/nginx/nginx.conf:rw  - ./etc/nginx/config:/etc/nginx/conf.d:rw  - ./etc/ssl:/etc/nginx/ssl:rw  - ./wwwroot:/var/www:rw@@ -65,6 +66,8 @@

最后更新容器編排即可

$ docker-compose up -d --no-deps --build

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日日噜噜噜夜夜爽亚洲精品| 国产精品小说在线| 国产一区二区精品丝袜| 青青久久aⅴ北条麻妃| 成人淫片在线看| 欧美日韩免费区域视频在线观看| 日本一区二三区好的精华液| 欧美一级bbbbb性bbbb喷潮片| 成人h视频在线| 欧美国产高跟鞋裸体秀xxxhd| 亚洲日本aⅴ片在线观看香蕉| 91av网站在线播放| 亚洲天堂av女优| 久久久免费观看视频| 一色桃子一区二区| 欧美日韩一区二区免费视频| 亚洲精品久久久久国产| 亚洲女人天堂色在线7777| 一区二区亚洲精品国产| 亚洲精品按摩视频| 亚洲成人1234| 日韩高清电影免费观看完整版| 欧美大片在线免费观看| 中文字幕视频一区二区在线有码| 国产精品久久久久aaaa九色| 国外成人免费在线播放| 日本免费一区二区三区视频观看| 国产精品精品一区二区三区午夜版| 亲爱的老师9免费观看全集电视剧| 欧美在线视频在线播放完整版免费观看| 亚洲精品中文字| 96国产粉嫩美女| 亚洲美女久久久| 国产一区二区免费| 欧美成人激情图片网| 成人免费自拍视频| 精品伊人久久97| 亚洲精品在线不卡| 国产精品影院在线观看| 亚洲国产91色在线| 国产精品极品美女在线观看免费| 九九热精品视频国产| 亚洲 日韩 国产第一| 国内免费精品永久在线视频| 日韩在线观看成人| 国产精品一香蕉国产线看观看| 日韩激情av在线播放| 国产免费一区二区三区香蕉精| 亚洲国产日韩欧美综合久久| 国产欧美日韩精品在线观看| 九九热这里只有精品免费看| 欧美性极品xxxx做受| 久久手机精品视频| 中文字幕日本精品| 欧美成人在线免费| 欧美极品少妇xxxxx| 日韩最新免费不卡| 成人国产精品久久久久久亚洲| 一本色道久久88亚洲综合88| 97视频在线观看视频免费视频| 一区二区三区美女xx视频| 在线看国产精品| 欧美日韩免费在线观看| 成人免费自拍视频| 国产91在线播放精品91| 最近的2019中文字幕免费一页| 日韩av手机在线看| 欧美精品激情blacked18| 欧美亚洲激情视频| 久久在精品线影院精品国产| 亚洲国产精品中文| 亚洲精品720p| 亚洲国产精品一区二区三区| 日韩视频―中文字幕| 黑人精品xxx一区一二区| 日韩黄色在线免费观看| 久久久久国产精品一区| 国产不卡精品视男人的天堂| 亚洲人成网站免费播放| 韩国三级日本三级少妇99| 亚洲香蕉成视频在线观看| 国产成人在线视频| 久久国产精品视频| 精品毛片网大全| 91九色国产在线| 亚洲精品999| 青青草国产精品一区二区| 在线免费看av不卡| 欧美性xxxxxxxxx| 成人福利网站在线观看11| 欧美精品激情视频| 亚洲国产中文字幕在线观看| 伊人精品在线观看| 国产精品第2页| 欧美视频免费在线| 亚洲视频精品在线| 欧美国产极速在线| 久久精品国产96久久久香蕉| 色偷偷av亚洲男人的天堂| 欧美午夜xxx| 中文国产成人精品久久一| 欧美中文字幕第一页| 国产91精品久久久久久久| 日韩欧美在线第一页| 国产精品视频久久| 亚洲激情在线视频| 亚洲精品免费一区二区三区| 欧美日韩国产麻豆| 国产精品亚洲美女av网站| 成人春色激情网| 黄色成人在线免费| 国产精品第3页| 日本一区二三区好的精华液| 亚洲人午夜色婷婷| 亚洲国产精品久久91精品| 91精品国产777在线观看| 日韩在线免费高清视频| 亚洲丝袜一区在线| 国产精品视频区1| 91九色精品视频| 狠狠色狠狠色综合日日小说| 国产精品海角社区在线观看| 在线成人激情黄色| 亚洲视频在线播放| 国内精品小视频| 日韩av男人的天堂| 亚洲成人黄色网址| 国产精品∨欧美精品v日韩精品| 色悠悠国产精品| 中文字幕一精品亚洲无线一区| 午夜免费日韩视频| 国外成人性视频| 97激碰免费视频| 欧美精品激情在线| 日韩av日韩在线观看| 亚洲欧洲xxxx| 国产精品成人av性教育| 91免费版网站入口| 中文字幕欧美日韩精品| 欧美日韩国产成人高清视频| 欧美黑人xxxⅹ高潮交| 国产成人av网| 欧美成人性生活| 国产精品自产拍高潮在线观看| 欧美视频在线免费| 富二代精品短视频| 国产精品电影久久久久电影网| 亚洲国产精品yw在线观看| 欧美大片免费观看在线观看网站推荐| 国产99在线|中文| 欧美成在线观看| 日韩欧美一区视频| 亚洲最大成人网色| 成人在线国产精品| 国产精品美女免费视频| 日韩av黄色在线观看| 欧美性jizz18性欧美| 一本一本久久a久久精品牛牛影视| 久久色免费在线视频| 色婷婷久久av| 国色天香2019中文字幕在线观看| 精品久久久久久久久国产字幕| 国产欧美日韩精品在线观看| 亚洲无限av看|