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

【Docker】基于Dockerfile搭建LNMP架構(gòu)

這篇具有很好參考價值的文章主要介紹了【Docker】基于Dockerfile搭建LNMP架構(gòu)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、項目環(huán)境

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

1. 環(huán)境配置

主機(jī) 操作系統(tǒng) IP地址 主要軟件
Docker CentOS 7.3 x86_64 192.168.145.15 Docker 19.03

容器ip地址規(guī)劃

nginx容器  ip地址:172.18.0.10
mysql容器  ip地址:172.18.0.20
php容器    ip地址:172.18.0.30

2. 任務(wù)需求

(1)使用Docker構(gòu)建LNMP環(huán)境并運(yùn)行Wordpress網(wǎng)站平臺。

(2)限制Nginx容器最多使用500Mb的內(nèi)存和1G的Swap。

(3)限制Mysql容器寫 /dev/sda 的速率為 10 MB/s。

(4)將所有容器進(jìn)行快照,然后將Docker鏡像打包成tar包備份到本地。

二、 部署過程

1. 環(huán)境配置

#前提本地已經(jīng)安裝docker,配置lnmp的文件目錄
 cd /opt/
mkdir lnmp
cd lnmp/
mkdir nginx mysql php

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#構(gòu)建yum安裝的依賴包容器
cd /opt/lnmp/
mkdir centos
cd centos/
vim Dockerfile

FROM centos:7
#nginx安裝包
RUN yum install -y pcre-devel \
zlib-devel \
openssl-devel \
gcc \
gcc-c++ \
make \
#mysql安裝包
ncurses \
ncurses-devel \
bison \
cmake \
#php安裝包
gd \
libjpeg libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#安裝鏡像
docker build -t centos7:pack .
docker images

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

2. 部署構(gòu)建 nginx 容器

#nginx目錄下已上傳nginx安裝包以及論壇安裝包
cd nginx/
ls

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#修改nginx配置文件
vim nginx.conf
...
    server {
    ...
        location / {
            root   html;
            index  index.php index.html index.htm;
        }
	...
		location ~ \.php$ {
            root           html;
            fastcgi_pass   172.18.0.30:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html$fastcgi_script_name;
            include        fastcgi_params;
        }

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#構(gòu)建自定義網(wǎng)絡(luò)
docker network create --subnet=172.18.0.0/16 --opt "com.docker.network.bridge.name"="docker1" mylnmp
1d31b24a91f3c5c38def3d3b853d470ebfa03605e6a14c57d6b6f0ea9939d98b

docker network ls
NETWORK ID     NAME      DRIVER    SCOPE
7fcb679c6080   bridge    bridge    local
e06421ce591e   host      host      local
b084bede80c1   mylnmp    bridge    local
ad41911b801f   none      null      local

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#創(chuàng)建nginx鏡像
cd /opt/lnmp/nginx
vim Dockerfile
FROM centos7:pack 
MAINTAINER this is nginx image <datang 2023-07-24>
ADD nginx-1.24.0.tar.gz /usr/local/
RUN useradd -M -s /sbin/nologin nginx && \
cd /usr/local/nginx-1.24.0 && \
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module && make && make install && \
yum clean all
COPY nginx.conf /usr/local/nginx/conf/nginx.conf

FROM centos:7
#設(shè)置多個階段的構(gòu)建,將第一階段構(gòu)建生成的軟件包目錄復(fù)制到第二階段的軟件包目錄里
COPY --from=0 /usr/local/nginx/ /usr/local/nginx/
RUN useradd -M -s /sbin/nologin nginx
EXPOSE 80

CMD ["/usr/local/nginx/sbin/nginx","-g","daemon off;"]

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#構(gòu)建nginx容器
docker build -t nginx:pack .
docker images

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#創(chuàng)建并啟動容器
docker run -d -P nginx:pack
077368b80269fd3d871abba1cdc8249fabe3152bc85b99c3e1cf1c283fd6512e

#查看容器
docker ps -a
CONTAINER ID   IMAGE           COMMAND                   CREATED             STATUS             PORTS                                     NAMES
077368b80269   nginx:pack   "/usr/local/nginx/sb…"   5 seconds ago   Up 4 seconds   0.0.0.0:32768->80/tcp, :::32768->80/tcp   romantic_fermat

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#瀏覽器訪問
http://192.168.145.15:32768/

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#解壓論壇壓縮包
ls
mkdir html
tar xf wordpress-4.9.4-zh_CN.tar.gz 
mv wordpress html/

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#刪除其余的容器,重新根據(jù)自定義網(wǎng)絡(luò)創(chuàng)建容器
docker rm -f $(docker ps -aq)

docker run -d --name nginx --network=mylnmp --ip=172.18.0.10 -p 80:80 -v /opt/lnmp/nginx/html/:/usr/local/nginx/html/ nginx:pack
da398761b9a04cb7bd5a48f33cfd776b8048567cc67f300d55a4b989d06a64b1

docker ps -a
CONTAINER ID   IMAGE        COMMAND                   CREATED         STATUS         PORTS                               NAMES
da398761b9a0   nginx:pack   "/usr/local/nginx/sb…"   6 seconds ago   Up 5 seconds   0.0.0.0:80->80/tcp, :::80->80/tcp   nginx

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

2. 部署構(gòu)建 mysql 容器

#準(zhǔn)備muysql的配置文件
cd /opt/lnmp/mysql/

ls
mysql-boost-5.7.41.tar.gz

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

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

vim Dockerfile
FROM centos7:pack
MAINTAINER this is mysql image <datang 2023-07-24>
ADD mysql-boost-5.7.41.tar.gz /opt/
RUN cd /opt/mysql-5.7.41/ && \
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 -j2 && make install

FROM centos:7
COPY --from=0 /usr/local/mysql/ /usr/local/mysql/
COPY my.cnf /etc/my.cnf
ENV PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
RUN useradd -M -s /sbin/nologin  mysql && \
chown -R mysql:mysql /usr/local/mysql/ && \
chown mysql:mysql /etc/my.cnf && \
/usr/local/mysql/bin/mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data

EXPOSE 3306
CMD ["/usr/local/mysql/bin/mysqld"]

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

docker build -t mysql:centos7 .

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#構(gòu)建 mysql 容器,--privileged 指定root權(quán)限
docker run -d --privileged  --network mylnmp --ip 172.18.0.20 mysql:centos7
412c0a21662b163429257c809fbf5402769cecc7b6b7bde95d53f02e6565b36f

docker ps -a

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#測試mysql
docker exec -it 412c0a21662b bash
ps aux
mysql
docker rm -f 412c0a21662b
docker ps -a

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#重新設(shè)置mysql的容器
docker run -d --name mysql --privileged --network mylnmp --ip 172.18.0.20 -v /usr/local/mysql mysql:centos7 
9d39b0103585f35e8fc22022faf33cbd94e3f3eaba1ad03dcc211e896eb42ef3

docker exec -it mysql bash
#設(shè)置登錄密碼
mysqladmin -u root -p password "abc123"
Enter password: 
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.

mysql -u root -pabc123

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#添加mysql授權(quán)登錄
mysql> CREATE DATABASE wordpress;
Query OK, 1 row affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| wordpress          |
+--------------------+
5 rows in set (0.00 sec)

mysql> grant all on wordpress.* to 'admin'@'%' identified by 'admin123';
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

3. 部署構(gòu)建 php 容器

#準(zhǔn)備php安裝包
cd /opt/lnmp/php/

ls
php-7.1.10.tar.bz2

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#安裝環(huán)境依賴包
yum -y install gd \
libjpeg libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#解壓并編譯
tar xf php-7.1.10.tar.bz2

cd php-7.1.10
./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 -j2
make install

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#將編譯安裝的php相關(guān)文件復(fù)制到/opt/lnmp/php/目錄下
cd /opt/lnmp/php/
mv /usr/local/php/etc/ /opt/lnmp/php/
cd etc/
mv php-fpm.conf.default  php-fpm.conf
ls

vim php-fpm.conf
pid = run/php-fpm.pid

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

cd php-fpm.d/
mv www.conf.default www.conf
vim www.conf 

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#將php相關(guān)配置文件復(fù)制到/opt/lnmp/php/目錄下
cd /opt/lnmp/php/php-7.1.10/
mv php.ini-development /opt/lnmp/php/php.ini
cd /opt/lnmp/php
mv etc/php-fpm.conf  /opt/lnmp/php/
mv etc/php-fpm.d/www.conf /opt/lnmp/php/

ls
etc  php-7.1.10  php-7.1.10.tar.bz2  php-fpm.conf  php.ini  www.conf

vim php.ini
#939行,修改時區(qū)
date.timezone = Asia/Shanghai
#1170行
mysqli.default_socket = /usr/local/mysql/mysql.sock

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#構(gòu)建php鏡像
vim Dockerfile
FROM centos7:pack
ADD php-7.1.10.tar.bz2 /opt
RUN cd /opt/php-7.1.10 && \
./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 -j2 && make install
COPY php.ini /usr/local/php/lib/php.ini
COPY php-fpm.conf /usr/local/php/etc/php-fpm.conf
COPY www.conf /usr/local/php/etc/php-fpm.d/www.conf

FROM centos:7
COPY --from=0 /usr/local/php /usr/local/php
RUN useradd -M -s /sbin/nologin php && yum -y install gd \
libjpeg-devel \
libpng-devel \
freetype-devel \
libxml2-devel \
zlib-devel \
curl-devel \
openssl-devel
EXPOSE 9000
CMD ["/usr/local/php/sbin/php-fpm", "-F"]

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#構(gòu)建php鏡像
docker build -t php:centos .

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#查看鏡像
docker images
REPOSITORY   TAG       IMAGE ID       CREATED             SIZE
php          centos    b1cae07dd109   2 minutes ago       800MB
mysql        centos7   f8c99d9f8a8a   18 minutes ago      4.24GB
nginx        pack      ec077bb0e047   About an hour ago   208MB
centos7      pack      5725aec209e6   About an hour ago   754MB
centos       7         eeb6ee3f44bd   22 months ago       204MB

#構(gòu)建php容器
docker run --name php -d -p 9000:9000 --network mylnmp --ip 172.18.0.30 php:centos
ff2422bed9cdb9f733e488be2ff9b98ff9b0ca736b47ef4bf656491297ea2b37

#查看容器
docker ps -a
CONTAINER ID   IMAGE        COMMAND                   CREATED          STATUS          PORTS                                       NAMES
ff2422bed9cd   php:centos   "/usr/local/php/sbin…"   5 seconds ago    Up 5 seconds    0.0.0.0:9000->9000/tcp, :::9000->9000/tcp   php
da398761b9a0   nginx:pack   "/usr/local/nginx/sb…"   57 minutes ago   Up 57 minutes   0.0.0.0:80->80/tcp, :::80->80/tcp           nginx

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#測試php網(wǎng)頁
cd /opt/lnmp/nginx/html/
vim index.php

cat index.php 
<?php
phpinfo();
?>

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#瀏覽器訪問
http://192.168.145.15/index.php

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

4. 連接所有容器

#刪除所有容器
docker rm -f $(docker ps -aq)

docker run -d --name nginx --network mylnmp --ip 172.18.0.10 -v /usr/local/nginx/html/ -p 80:80 nginx:pack
4d9eb17785e2ce9b88152644b8a9c02674212606a3390e0c089e48269e6eac91

docker run -d --name mysql --privileged --network mylnmp --ip 172.18.0.20 -v /usr/local/mysql/ mysql:centos7
51dbe9aed78636a27457a1279e0c1b09f8298d76ae829a3f9dc0ce4bbdbd9686

docker run -d --name php --network mylnmp --ip 172.18.0.30 --volumes-from nginx --volumes-from mysql -p 9000:9000  php:centos 9d134d25d84a2c418e9c41b58bfaaf30f57ccd33c56e99705ecc406e305eafb0

docker ps -a
CONTAINER ID   IMAGE           COMMAND                   CREATED         STATUS         PORTS                                       NAMES
9d134d25d84a   php:centos      "/usr/local/php/sbin…"   2 seconds ago   Up 1 second    0.0.0.0:9000->9000/tcp, :::9000->9000/tcp   php
51dbe9aed786   mysql:centos7   "/usr/local/mysql/bi…"   2 minutes ago   Up 2 minutes   3306/tcp                                    mysql
4d9eb17785e2   nginx:pack      "/usr/local/nginx/sb…"   4 minutes ago   Up 4 minutes   0.0.0.0:80->80/tcp, :::80->80/tcp           nginx

#將網(wǎng)頁和論壇配置文件上傳至容器內(nèi)部
cd /opt/lnmp/nginx/html/

docker cp index.php nginx:/usr/local/nginx/html/
Successfully copied 2.05kB to nginx:/usr/local/nginx/html/

docker cp wordpress/ nginx:/usr/local/nginx/html/
Successfully copied 29.4MB to nginx:/usr/local/nginx/html/

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器

#瀏覽器訪問
http://192.168.145.15/wordpress/index.php

【Docker】基于Dockerfile搭建LNMP架構(gòu),Docker,docker,架構(gòu),容器文章來源地址http://www.zghlxwxcb.cn/news/detail-605774.html

總結(jié)

如何縮小鏡像體積的大小

1.盡可能的使用小體積的基礎(chǔ)鏡像
2.盡可能減少Dockerfile文件中指令的數(shù)量
3.構(gòu)建鏡像步驟最后添加清空系統(tǒng)和應(yīng)用程序的緩存命令
4.使用多階段(多級)構(gòu)建      
  FROM 第一階段的基礎(chǔ)鏡像 [AS 別名]
  ...
  FROM 第二階段的基礎(chǔ)鏡像
  COPY --from=別名/0 第一階段構(gòu)建的文件/目錄 當(dāng)前階段的文件/目錄

到了這里,關(guān)于【Docker】基于Dockerfile搭建LNMP架構(gòu)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 基于Dockerfile搭建LNMP

    基于Dockerfile搭建LNMP

    目錄 一、基礎(chǔ)環(huán)境準(zhǔn)備 1、環(huán)境前期準(zhǔn)備? 二、部署nginx(容器IP 為 172.18.0.10) 1、配置Dockerfile文件 2、配置nginx.conf文件 3、構(gòu)建鏡像、啟動鏡像 三、部署mysql 1、配置Dockerfile文件 2、配置my.conf文件 3、構(gòu)建鏡像、啟動鏡像 5、驗證mysql 四、PHP部署 1、配置Dockerfile 2、配置相關(guān)文

    2024年02月08日
    瀏覽(16)
  • docker基于已有容器和通過Dockerfile進(jìn)行制作鏡像配置介紹

    目錄 一.制作鏡像的兩種方式 1.在已有容器中更新并提交這個鏡像 2.使用Dockerfile來制作 二.基于容器制作鏡像 1.格式 (1)主要格式 (2)可選參數(shù) 2.案例 基于容器創(chuàng)建鏡像設(shè)置標(biāo)簽并進(jìn)行驗證是否可用 (1)運(yùn)行容器并寫入驗證內(nèi)容(改變?nèi)萜鞔鎯觾?nèi)容) (2)另起終端制

    2024年02月11日
    瀏覽(107)
  • Docker學(xué)習(xí)入門(二):常用軟件安裝、掌握Docker遷移與備份、運(yùn)用Dockerfile編寫創(chuàng)建容器的腳本、搭建與使用docker私有倉庫;

    Docker的學(xué)習(xí)目標(biāo): 4.掌握Tomcat Nginx等軟件的常用的安裝 5.掌握Docker遷移與備份相關(guān)命令 6.能夠運(yùn)用Dockerfile編寫創(chuàng)建容器的腳本 7.能夠搭建與使用docker私有倉庫 8.學(xué)習(xí)總結(jié) 1.MYSQL的部署 ?? ?(1)拉取mysql鏡像 ?? ??? ? docker pull centos/mysql-57-centos7 ?? ??? ?? ?? ?(2)創(chuàng)建容

    2024年02月21日
    瀏覽(24)
  • 使用Docker Dockerfile構(gòu)建php LNMP集成開發(fā)環(huán)境,并運(yùn)行Thinkphp5

    使用Docker Dockerfile構(gòu)建php LNMP集成開發(fā)環(huán)境,并運(yù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基礎(chǔ)環(huán)境。mysql、redis基于官方Docker hub,分別構(gòu)建我們自己的鏡像。 ?code目錄存放工程代碼,會映

    2024年02月15日
    瀏覽(60)
  • Docker容器與虛擬化技術(shù):Docker compose部署LNMP

    Docker容器與虛擬化技術(shù):Docker compose部署LNMP

    目錄 ? ?一、理論 1.LNMP架構(gòu) 2.背景 3.Dockerfile部署LNMP 3.準(zhǔn)備Nginx鏡像 4.準(zhǔn)備MySQL容器 5.準(zhǔn)備PHP鏡像 6.上傳wordpress軟件包 7.編寫docker-compose.yml 8.構(gòu)建與運(yùn)行docker-compose 9.啟動 wordpress 服務(wù)? 10.瀏覽器訪問 11.將運(yùn)行中的?docker容器保存為 docker 鏡像并保存到本地tar包 二、實驗 ?1.環(huán)境

    2024年02月11日
    瀏覽(31)
  • Docker容器:docker鏡像的創(chuàng)建及dockerfile

    Docker容器:docker鏡像的創(chuàng)建及dockerfile

    創(chuàng)建鏡像有三種方法:基于現(xiàn)有鏡像創(chuàng)建、基于本地模板創(chuàng)建及基于dockerfile創(chuàng)建 1.1 啟動鏡像 1.2 生成新鏡像 2.1 OPENVZ 下載模板 2.2 導(dǎo)入容器生成鏡像 3.1 dockerfile結(jié)構(gòu)及分層 (1)dockerfile結(jié)構(gòu)大致分為4個部分 基礎(chǔ)鏡像信息 維護(hù)者信息 鏡像操作指令 容器啟動時執(zhí)行指令 Dockerfil

    2024年02月11日
    瀏覽(93)
  • Docker容器---dockerfile簡介

    Docker容器---dockerfile簡介

    1、dockerfile介紹 dockerfile是自定義鏡像的一套規(guī)則,dockerfie由多條指令構(gòu)成,Dockerfile中的每一條指令都會對應(yīng)于Docker鏡像中的每一層。Docker鏡像是一個特殊的文件系統(tǒng),除了提供容器運(yùn)行時所需的程序、庫、資源、配置等文件外,還包含了一些為運(yùn)行時準(zhǔn)備的一些配置參數(shù)(

    2023年04月23日
    瀏覽(26)
  • Docker容器 - DockerFile詳解

    Docker容器 - DockerFile詳解

    目錄 DockerFile 一、是什么 二、構(gòu)建步驟 DockerFile構(gòu)建過程 一、DockerFile基礎(chǔ) 二、Docker執(zhí)行DockerFile的流程 三、總結(jié) DockerFile常用保留字 零、參考Tomcat的DockerFile 一、FROM 二、MAINTAINER 三、RUN 1.shell 2.exec 四、EXPOSE 五、WORKDIR 六、USER 七、ENV 八、ADD 九、COPY 十、VOLUME 十一、CMD 1.舉個

    2024年02月15日
    瀏覽(24)
  • 基于LNMP架構(gòu)搭建Discuz論壇

    基于LNMP架構(gòu)搭建Discuz論壇

    LNMP: L----linux系統(tǒng),操作系統(tǒng)。 N-----nginx網(wǎng)站服務(wù)(前端),提供前端的靜態(tài)頁面服務(wù)。同時具有代理、轉(zhuǎn)發(fā)的作用。(轉(zhuǎn)發(fā)就是轉(zhuǎn)發(fā)后端請求,轉(zhuǎn)發(fā)PHP),nginx沒有處理動態(tài)資源的功能,他有可以支持準(zhǔn)發(fā)動態(tài)請求的模塊。 M----mysql 關(guān)系型數(shù)據(jù)庫,用來保存用戶的賬戶和密碼。

    2024年02月13日
    瀏覽(89)
  • docker 搭建lnmp環(huán)境

    docker 搭建lnmp環(huán)境

    ????????公司在實際的生產(chǎn)環(huán)境中,需要使用 Docker 技術(shù)在一臺主機(jī)上創(chuàng)建 LNMP 服務(wù)并運(yùn)行 Wordpress 網(wǎng)站平臺。然后對此服務(wù)進(jìn)行相關(guān)的性能調(diào)優(yōu)和管理工作。 ? 準(zhǔn)備所有安裝包: 容器? ? ? ? 操作系統(tǒng)? ? ? ? IP地址? ? ? ? ? ? ? 主要軟件 nginx? ? ? CentOS 7? ? ? 172.

    2024年04月29日
    瀏覽(22)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包