国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺

這篇具有很好參考價值的文章主要介紹了Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一.環(huán)境及準備工作

1.項目環(huán)境

公司在實際的生產環(huán)境中,需要使用 Docker 技術在一臺主機上創(chuàng)建 LNMP 服務并運行 Wordpress 網站平臺。然后對此服務進行相關的性能調優(yōu)和管理工作。

所有安裝包下載:
wget http://101.34.22.188/lnmp_wordpress/mysql-boost-5.7.20.tar.gz
wget http://101.34.22.188/lnmp_wordpress/nginx-1.12.0.tar.gz
wget http://101.34.22.188/lnmp_wordpress/php-7.1.10.tar.bz2
wget http://101.34.22.188/lnmp_wordpress/wordpress-4.9.4-zh_CN.tar.gz

或者
wget -r -np http://101.34.22.188/lnmp_wordpress/

2.服務器環(huán)境

容器 操作系統(tǒng) IP地址 主要軟件
nginx CentOS 7 172.20.0.10 Docker-Nginx
mysql CentOS 7 172.20.0.20 Docker-Mysql
php CentOS 7 172.20.0.30 Docker-php

3.任務需求

(1)使用 Docker 構建 LNMP 環(huán)境并運行 Wordpress 網站平臺
(2)限制 Nginx 容器最多使用 500MB 的內存和 1G 的 Swap
(3)限制 Mysql 容器寫 /dev/sda 的速率為 10 MB/s
(4)將所有容器進行快照,然后將 Docker 鏡像打包成 tar 包備份到本地

二.Linux 系統(tǒng)基礎鏡像

提前關閉防火墻

#關閉防火墻
systemctl stop firewalld.service
setenforce 0

提前安裝好Docker容器,具體安裝步驟可以查看以下:

https://blog.csdn.net/Katie_ff/article/details/132304161?spm=1001.2014.3001.5501

下載完之后提前下載centos7的鏡像

docker pull centos:7

三.docker構建Nginx

1.建立工作目錄上傳安裝包

mkdir /opt/nginx
cd /opt/nginx
#上傳 nginx 安裝包 nginx-1.12.0.tar.gz和wordpress 服務包 wordpress-4.9.4-zh_CN.tar.gz

ls
nginx-1.12.0.tar.gz  wordpress-4.9.4-zh_CN.tar.gz

2.編寫 Dockerfile 腳本

vim Dockerfile

FROM centos:7
MAINTAINER this is nginx image <lnmp>
RUN yum -y install pcre-devel zlib-devel gcc gcc-c++ make;useradd -M -s /sbin/nologin nginx
ADD nginx-1.12.0.tar.gz /usr/local/src/
WORKDIR /usr/local/src/nginx-1.12.0
RUN ./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module;make -j 4 && make install
ENV PATH /usr/local/nginx/sbin:$PATH
ADD nginx.conf /usr/local/nginx/conf/
ADD wordpress-4.9.4-zh_CN.tar.gz /usr/local/nginx/html
RUN chmod 777 -R /usr/local/nginx/html/
EXPOSE 80
VOLUME [ "/usr/local/nginx/html/" ]
CMD [ "/usr/local/nginx/sbin/nginx","-g","daemon off;" ]

3.準備 nginx.conf 配置文件

vim nginx.conf

worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  localhost;
        charset utf-8;
        location / {
            root   html;
            index  index.html index.php;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
        location ~ \.php$ {
            root           html;
            #此地址是php端地址
            fastcgi_pass   172.20.0.30:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html$fastcgi_script_name;
            include        fastcgi_params;
        }
    }
}
egrep -v "^(.)*#(.)*$" nginx.conf | grep -v "^$"

4.生成鏡像

docker build -t nginx:lnmp .
docker images

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

5.創(chuàng)建自定義網絡

docker network create --subnet=172.20.0.0/16 --opt "com.docker.network.bridge.name"="docker1" mynetwork

docker network ls
ifconfig docker1

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

6.啟動鏡像容器

docker run -d --name nginx -p 80:80 -m 500m --memory-swap 1g --net mynetwork --ip 172.20.0.10 nginx:lnmp
docker ps

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

docker inspect nginx

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

7.驗證 nginx

#進入容器驗證
[root@nginx nginx]# curl http://192.168.198.11:80

<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a >nginx.org</a>.<br/>
Commercial support is available at
<a >nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

四.docker構建Mysql

1. 建立工作目錄

mkdir /opt/mysql
cd /opt/mysql/
#傳入mysql安裝包mysql-boost-5.7.20.tar.gz

2. 編寫 Dockerfile

vim Dockerfile 

FROM centos:7
MAINTAINER this is mysql image <lnmp>
RUN yum -y install ncurses ncurses-devel bison cmake pcre-devel zlib-devel gcc gcc-c++ make;useradd -M -s /sbin/nologin mysql
ADD mysql-boost-5.7.20.tar.gz /usr/local/src/
WORKDIR /usr/local/src/mysql-5.7.20/
RUN cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8  \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=boost \
-DWITH_SYSTEMD=1;make -j4;make install
ADD my.cnf /etc/my.cnf
EXPOSE 3306
RUN chown -R mysql:mysql /usr/local/mysql/;chown mysql:mysql /etc/my.cnf
WORKDIR /usr/local/mysql/bin/
RUN ./mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data;cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/;systemctl enable mysqld
ENV PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
VOLUME [ "/usr/local/mysql" ]
CMD ["/usr/sbin/init"]

3. 準備 my.cnf 文件

vim my.cnf
 
[client]
port = 3306
socket=/usr/local/mysql/mysql.sock
 
[mysqld]
user = mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
character-set-server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket=/usr/local/mysql/mysql.sock
bind-address = 0.0.0.0
skip-name-resolve
max_connections=2048
default-storage-engine=INNODB
max_allowed_packet=16M
server-id = 1
 
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES

4. 生成鏡像

docker build -t mysql:lnmp .
docker images

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

5. 啟動鏡像容器

 docker run --name=mysql -d --privileged --device-write-bps /dev/sda:10M -v /usr/local/mysql --net mynetwork --ip 172.20.0.20 mysql:lnmp
docker ps -a

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

6. 驗證 mysql

docker exec -it mysql bash
systemctl status mysqld

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

五、docker構建Php

1. 建立工作目錄

mkdir /opt/php
cd /opt/php/
#傳入php安裝包php-7.1.10.tar.bz2

2. 編寫 Dockerfile 腳本

vim Dockerfile 

FROM centos:7
MAINTAINER this is php image <lnmp>
RUN yum install -y gd \
libjpeg libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel \
gcc gcc-c++ make pcre-devel;useradd -M -s /sbin/nologin nginx
ADD php-7.1.10.tar.bz2 /usr/local/src/
WORKDIR /usr/local/src/php-7.1.10
RUN ./configure \
--prefix=/usr/local/php \
--with-mysql-sock=/usr/local/mysql/mysql.sock \
--with-mysqli \
--with-zlib \
--with-curl \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-fpm \
--enable-mbstring \
--enable-xml \
--enable-session \
--enable-ftp \
--enable-pdo \
--enable-tokenizer \
--enable-zip ; make -j 4 ; make install
ENV PATH /usr/local/php/bin:/usr/local/php/sbin:$PATH
ADD php.ini     /usr/local/php/lib/
ADD php-fpm.conf /usr/local/php/etc/
ADD www.conf /usr/local/php/etc/php-fpm.d/
EXPOSE 9000
CMD /usr/local/php/sbin/php-fpm -F

3. 準備 php.ini、php-fpm.conf、www.conf 配置文件

3.1 php.ini

該配置文件模板位于安裝目錄的 php-7.1.10/php.ini-development 位置

vim php.ini
#939行,取消注釋,修改
date.timezone = Asia/Shanghai
#1170行,修改
mysqli.default_socket = /usr/local/mysql/mysql.sock
egrep -v "^;" php.ini | egrep -v "^$"

3.2 php-fpm.conf

該配置文件位于 /usr/local/php/etc/php-fpm.conf.default

vim php-fpm.conf
#17行,刪除注釋符號“;”
pid = run/php-fpm.pid
egrep -v "^;" php-fpm.conf | egrep -v "^$"

3.3 www.conf

該配置文件位于 cd /usr/local/php/etc/php-fpm.d/

vim www.conf

user = nginx
group = nginx
#36行,修改監(jiān)聽IP和端口為容器IP:9000端口
listen = 172.20.0.30:9000
egrep -v "^;" www.conf | egrep -v "^$"

[www]
user = nginx
group = nginx
listen = 172.20.0.30:9000
listen.allowed_clients = 127.0.0.1,172.20.0.10
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

4. 生成鏡像

docker build -t php:lnmp .

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

docker images

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

5. 啟動鏡像容器

docker run -itd --name php --net mynetwork --ip 172.20.0.30 -p 9000:9000 --volumes-from nginx --volumes-from mysql php:lnmp
docker ps

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

6. 驗證 php

docker exec -it php bash
ps -aux

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

六、啟動 wordpress 服務

1. mysql 授權

#進入 mysql 容器
docker exec -it mysql bash
mysql -u root -p
Enter password: 
#初始密碼為空直接回車
mysql> create database wordpress;
Query OK, 1 row affected (0.00 sec)
 
mysql> grant all privileges on wordpress.* to 'wordpress'@'%' identified by '123456';
Query OK, 0 rows affected, 1 warning (0.00 sec)
 
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456';
Query OK, 0 rows affected, 1 warning (0.00 sec)
 
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維

2.瀏覽器訪問測試

訪問 http://192.168.198.11/wordpress/index.php
Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺,docker,容器,運維文章來源地址http://www.zghlxwxcb.cn/news/detail-661931.html

到了這里,關于Dockerfile創(chuàng)建 LNMP 服務+Wordpress 網站平臺的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Docker 搭建 LNMP + Wordpress(詳細步驟)

    Docker 搭建 LNMP + Wordpress(詳細步驟)

    目錄 一、項目模擬 1. 項目環(huán)境 2. 服務器環(huán)境? 3.任務需求 二、Linux 系統(tǒng)基礎鏡像? 三、Nginx 1. 建立工作目錄 2. 編寫 Dockerfile 腳本? 3. 準備 nginx.conf 配置文件?? 4. 生成鏡像?? 5. 創(chuàng)建自定義網絡? 6. 啟動鏡像容器?? 7. 驗證 nginx?? 四、Mysql? 1. 建立工作目錄 2. 編寫 Dockerfi

    2024年02月12日
    瀏覽(23)
  • [云原生案例1.] 構建LNMP架構并運行Wordpress個人博客平臺

    [云原生案例1.] 構建LNMP架構并運行Wordpress個人博客平臺

    需要使用Docker 技術在一臺主機上 創(chuàng)建LNMP服務并運行Wordpress網站平臺 。 然后對此服務進行相關的 性能調優(yōu) 和 管理工作 主機 操作系統(tǒng) IP地址 主要軟件 宿主機 CentOS 7.3 x86_64 192.168.67.100 Docker 19.03 Nginx容器 172.18.0.10 Mysql容器 172.18.0.20 PHP容器 172.18.0.30 容器IP:172.18.0.10 3.2.1 創(chuàng)建

    2024年02月07日
    瀏覽(24)
  • 【docker】基于dockerfile編寫LNMP

    【docker】基于dockerfile編寫LNMP

    目錄 一、基礎環(huán)境準備 二、部署nginx(容器IP為172.18.0.10)? 1、整個Dockerfile文件內容 ?2、配置nginx.conf文件 ?3、構建鏡像 ?編輯?三、部署mysql 1、整個Docker文件內容 2、準備my.conf文件? ?3、生成鏡像 ?4、啟動鏡像容器 ?5、驗證mysql ?四、PHP部署 1、整個Dockerfile文件內容 2、

    2024年02月12日
    瀏覽(23)
  • 【Docker】基于Dockerfile搭建LNMP架構

    【Docker】基于Dockerfile搭建LNMP架構

    ??公司在實際的生產環(huán)境中,需要使用Docker 技術在一臺主機上創(chuàng)建LNMP服務并運行Wordpress網站平臺。然后對此服務進行相關的性能調優(yōu)和管理工作。 主機 操作系統(tǒng) IP地址 主要軟件 Docker CentOS 7.3 x86_64 192.168.145.15 Docker 19.03 容器ip地址規(guī)劃 (1)使用Docker構建LNMP環(huán)境并運行Wo

    2024年02月15日
    瀏覽(22)
  • 打造高性能網站:使用 nginx、MySQL 和 PHP 編譯,搭建 LNMP 環(huán)境并安裝 WordPress實戰(zhàn)

    打造高性能網站:使用 nginx、MySQL 和 PHP 編譯,搭建 LNMP 環(huán)境并安裝 WordPress實戰(zhàn)

    ??個人主頁:我是沐風曉月 ??個人簡介:大家好,我是沐風曉月,阿里云社區(qū)博客專家???? ?? 座右銘: 先努力成長自己,再幫助更多的人 ,一起加油進步?????? ??歡迎大家:這里是CSDN,我總結知識的地方,喜歡的話請三連,有問題請私信?? 本次實驗環(huán)境見下表

    2024年02月07日
    瀏覽(34)
  • Docker容器與虛擬化技術:Dockerfile部署LNMP

    Docker容器與虛擬化技術:Dockerfile部署LNMP

    目錄 一、理論 1.LNMP架構 2.背景 3.Dockerfile部署LNMP 3.構建Nginx鏡像 4.構建MySQL容器 5.構建PHP鏡像 6.啟動 wordpress 服務? 二、實驗 ?1.環(huán)境準備 2.構建Nginx鏡像 3.構建MySQL容器 4.構建PHP鏡像 5.啟動 wordpress 服務? 三、問題 1.構建nginx鏡像報錯 2.構建php鏡像報錯 2.生成PHP鏡像一直為Exit

    2024年02月04日
    瀏覽(25)
  • 使用Docker Dockerfile構建php LNMP集成開發(fā)環(huán)境,并運行Thinkphp5

    使用Docker Dockerfile構建php LNMP集成開發(fā)環(huán)境,并運行Thinkphp5

    系統(tǒng):MAC、Windows10 Docker版本:Docker version 23.0.5 Docker Desktop:Dockerdesktop官方地址 這篇主要介紹如何在Mac、Windows10使用docker搭建LNMP集成開發(fā)環(huán)境。下面我會寫Dockerfile編譯安裝Nginx+php基礎環(huán)境。mysql、redis基于官方Docker hub,分別構建我們自己的鏡像。 ?code目錄存放工程代碼,會映

    2024年02月15日
    瀏覽(60)
  • 在 CentOS 7.4 上使用 Docker極速部署 LNMP (Linux, Nginx, MySQL, PHP) 環(huán)境和 WordPress

    前置CentOS7條件: 關閉防護墻: setenforce = 0 systemctl stop firewalld 1. 安裝 Docker* 如果你的系統(tǒng)中還沒有安裝 Docker,可以使用以下命令進行安裝: ? sudo yum install docker 啟動 Docker 服務并設置開機自啟: sudo systemctl start docker sudo systemctl enable docker 2. 安裝 Docker Compose Docker Compose 可以讓

    2024年01月17日
    瀏覽(24)
  • 【騰訊云 TDSQL-C Serverless 產品體驗】基于騰訊云輕量服務器以及 TDSQL-C 搭建 LNMP WordPress 博客系統(tǒng)

    【騰訊云 TDSQL-C Serverless 產品體驗】基于騰訊云輕量服務器以及 TDSQL-C 搭建 LNMP WordPress 博客系統(tǒng)

    在今天快速發(fā)展的數字化時代,數據庫技術日新月異。本文將帶領您追溯數據庫的歷程,探討云原生數據庫的概念,并重點關注騰訊云的創(chuàng)新力作—— TDSQL-C 數據庫 。 我們將揭示傳統(tǒng) MySQL 架構的問題,探究 TDSQL-C 數據庫的計算與存儲分離架構所帶來的優(yōu)勢。 通過實例,您將

    2024年02月11日
    瀏覽(33)
  • 云原生之使用Docker部署wordpress網站

    云原生之使用Docker部署wordpress網站

    WordPress是使用PHP語言開發(fā)的博客平臺,用戶可以在支持PHP和MySQL數據庫的服務器上架設屬于自己的網站。也可以把 WordPress當作一個內容管理系統(tǒng)(CMS)來使用。 選擇設置中文 設置站點信息。

    2024年02月09日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包