基于docker容器搭建lnmp

本文详细介绍了如何利用Docker容器分别构建nginx、mysql和php镜像,并最终整合配置完成LNMP(Linux、Nginx、MySQL、PHP)环境的搭建过程。
摘要由CSDN通过智能技术生成

nginx 镜像

// 拉取镜像
[root@localhost ~]# docker pull centos
Using default tag: latest
latest: Pulling from library/centos
a1d0c7532777: Pull complete 
Digest: sha256:a27fd8080b517143cbbbab9dfb7c8571c40d67d534bbdee55bd6c473f432b177
Status: Downloaded newer image for centos:latest
docker.io/library/centos:latest

// 创建容器,设置端口映射进入容器,编译安装nginx
[root@localhost ~]# docker run --name  centos01 -it  centos:7 
Unable to find image 'centos:7' locally
7: Pulling from library/centos
2d473b07cdd5: Pull complete 
Digest: sha256:9d4bcbbb213dfd745b58be38b13b996ebb5ac315fe75711bd618426a630e0987
Status: Downloaded newer image for centos:7
[root@1ea950782ea2 /]# useradd -r -M -s /sbin/nologin nginx
[root@1ea950782ea2 /]# id nginx
uid=999(nginx) gid=998(nginx) groups=998(nginx)
[root@1ea950782ea2 /]# yum -y install pcre-devel openssl openssl-devel gd-devel gcc gcc-c++
[root@1ea950782ea2 /]# mkdir -p /var/log/nginx
[root@1ea950782ea2 /]# chown -R nginx.nginx /var/log/nginx

// 另起一个终端,然后执行命令传输nginx源码包
[root@localhost ~]# docker cp /usr/src/nginx-1.18.0.tar.gz  centos01:/usr/src

// 回到原来的终端,继续编译安装nginx
[root@1ea950782ea2 /]#  cd /usr/src/
[root@1ea950782ea2 src]# ls
debug  kernels  nginx-1.18.0.tar.gz
[root@1ea950782ea2 src]# tar xf nginx-1.18.0.tar.gz 
[root@1ea950782ea2 src]# ls
debug  kernels  nginx-1.18.0  nginx-1.18.0.tar.gz
[root@1ea950782ea2 src]# cd nginx-1.18.0
[root@1ea950782ea2 nginx-1.18.0]# ls
CHANGES     LICENSE  auto  configure  html  src
CHANGES.ru  README   conf  contrib    man
[root@1ea950782ea2 nginx-1.18.0]# ./configure \
 --prefix=/usr/local/nginx \
 --user=nginx \
 --group=nginx \
 --with-debug \
 --with-http_ssl_module \
 --with-http_realip_module \
 --with-http_image_filter_module \
 --with-http_gunzip_module \
 --with-http_gzip_static_module \
 --with-http_stub_status_module \
 --http-log-path=/var/log/nginx/access.log \
 --error-log-path=/var/log/nginx/error.log
[root@1ea950782ea2 nginx-1.18.0]# make && make install

// 配置环境变量
[root@1ea950782ea2 nginx-1.18.0]# echo 'export PATH=/usr/local/nginx/sbin:$PATH' > /etc/profile.d/nginx.sh
[root@1ea950782ea2 nginx-1.18.0]# . /etc/profile.d/nginx.sh

// 没有ss命令,安装下列软件包
[root@1ea950782ea2 nginx-1.18.0]# yum install iproute iproute-doc
[root@1ea950782ea2 nginx-1.18.0]# nginx
[root@1ea950782ea2 nginx-1.18.0]# ss -antl
State      Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN     0      128     *:80                  *:*                 

// 配置php
[root@111c56820bfb /]# vi /usr/local/nginx/conf/ngi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值