基于容器搭建lnmp架构

基于容器搭建lnmp架构


在docker环境中拉取最新的centos镜像,基于centos镜像来制作nginx、mysql、php镜像

[root@docker ~]# 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
[root@docker ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED        SIZE
centos       latest    5d0da3dc9764   2 months ago   231MB

构建nginx镜像

基于centos镜像创建一个新容器命名为nginx

[root@docker ~]# docker run --name nginx -it centos
[root@docker ~]# docker ps
CONTAINER ID   IMAGE     COMMAND       CREATED          STATUS          PORTS     NAMES
e9be839be5ed   centos    "/bin/bash"   17 seconds ago   Up 16 seconds             nginx

在容器中编译安装nginx

[root@docker src]# docker cp nginx-1.20.2.tar.gz nginx:/usr/src

[root@e9be839be5ed /]# useradd -r -M -s /sbin/nologin nginx
[root@e9be839be5ed /]# yum -y install pcre-devel openssl openssl-devel gd-devel gcc gcc-c++ make
[root@e9be839be5ed /]# mkdir -p /var/log/nginx
[root@e9be839be5ed /]# chown -R nginx.nginx /var/log/nginx 
[root@e9be839be5ed /]# cd /usr/src/
[root@e9be839be5ed src]# ls
debug  kernels  nginx-1.20.2.tar.gz
[root@e9be839be5ed src]# tar xf nginx-1.20.2.tar.gz 
[root@e9be839be5ed src]# cd nginx-1.20.2
[root@e9be839be5ed nginx-1.20.2]# ls
CHANGES  CHANGES.ru  LICENSE  README  auto  conf  configure  contrib  html  man  src
[root@e9be839be5ed nginx-1.20.2]# ./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@e9be839be5ed nginx-1.20.2]# make && make install

再开一个终端制作nginx镜像并用该镜像运行容器测试

[root@docker ~]# docker commit -c 'CMD ["/bin/bash","/opt/nginx-start.sh"]' -p nginx 93quan/nginx:v1
sha256:c6c354211762480e4b501a0c401f065e6987910f536c3efd77d300e8c562e45f
[root@docker ~]# docker images
REPOSITORY     TAG       IMAGE ID       CREATED          SIZE
93quan/nginx   v1        c6c354211762   38 seconds ago   549MB
93quan/php8    v1        8470c6b46097   57 seconds ago   1.52GB
93quan/mysql   v1        f7f5cd3137f3   2 hours ago      3.81GB
centos         latest    5d0da3dc9764   2 months ago     231MB

[root@docker ~]# docker run --name test -d 93quan/nginx:v1 
b048cca10c08802082dabcd682da4b8e4e67bddf98d50c3305afa882d0763f0c

构建mysql镜像

基于centos镜像创建一个新容器命名为mysql

[root@docker ~]# docker run --name mysql -it centos
[root@docker src]# docker ps
CONTAINER ID   IMAGE     COMMAND       CREATED          STATUS      
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
搭建基于LNMP(Linux + Nginx + MySQL + PHP)基础架构的政务平台,你可以按照以下流程进行: 1. 选择合适的Linux发行版:选择一个稳定、安全且适合政务应用的Linux发行版,如Ubuntu、CentOS等。 2. 安装操作系统:根据选择的Linux发行版,按照官方文档或参考在线教程进行操作系统的安装。 3. 系统配置:完成操作系统的安装后,进行一些基本的系统配置,如网络设置、防火墙配置等。 4. 安装Nginx:安装Nginx作为Web服务器。可以通过包管理器(如apt、yum)进行安装,也可以从源码编译安装。 5. 安装MySQL:安装MySQL数据库服务器,用于存储和管理数据。同样可以通过包管理器进行安装。 6. 配置Nginx和MySQL:根据实际需求,对Nginx和MySQL进行配置。配置文件通常位于`/etc/nginx/`和`/etc/mysql/`目录下。 7. 安装PHP:安装PHP解释器和相关扩展。可以使用包管理器进行安装,也可以从源码编译安装。 8. 配置Nginx和PHP:将Nginx与PHP进行集成,配置Nginx以将请求转发给PHP解释器处理。配置文件通常位于`/etc/nginx/`目录下。 9. 部署应用程序:根据政务平台的具体要求,进行应用程序的部署。这可能涉及到安装和配置各种应用程序和框架,如Laravel、WordPress等。 10. 数据库配置:根据政务平台的数据库需求,进行数据库的安装和配置。需要创建数据库、用户,并进行权限设置。 11. 安全设置:确保系统和应用程序的安全性。这包括使用合适的防火墙规则、加密通信、限制访问权限等。 12. 监控和日志:设置系统监控和日志记录机制,以便及时发现和解决问题。 13. 测试和优化:完成搭建后,进行测试和优化,确保平台的稳定性和性能。 14. 上线运维:将平台部署到生产环境后,进行持续的运维工作,包括系统更新、备份、故障排除等。 请注意,上述流程仅提供了一个基本的指导,具体的搭建流程可能因政务平台的具体需求而有所不同。建议在搭建过程中参考相关文档和教程,并根据实际情况进行适当调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值