• 基于apline构建php7+nginx


    什么是apline?

      apline 是一个基于musl libc和busybox的面向安全性的轻量级Linux发行版。简单来说就是一个精简的linux系统。最新的3.11.6标准版本安装包只有120M左右。

    为什么基于apline构建我们的docker环境呢?

      基于docker的部署方式给运维工作带来了极大的便利,但是镜像的大小有时候影响了部署的速度。基于apline构建的镜像可以明显减小镜像的存储占用。方便拷贝和下载。

     如何快速构建镜像:

      一般的web项目都是lnmp方式部署。但是考虑到数据独立存储。我在镜像中只集成了php73 和 nginx.

    先写个启动脚本 run.sh,内容如下:

    #!/bin/sh
    mkdir -p /run/nginx
    /usr/sbin/nginx
    /usr/sbin/php-fpm7
    tail -f /etc/hosts%
    

    再将如下内容复制到Dockerfile中,跟run.sh 放在一起。

    FROM alpine:3.11
    COPY run.sh /
    
    RUN cd / && 
        sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories && 
        apk update  && 
        apk add build-base curl shadow openssh bash libxml2-dev openssl-dev libjpeg-turbo-dev libpng-dev libxpm-dev freetype-dev gd-dev gettext-dev libmcrypt-dev binutils && 
        addgroup www  && 
        adduser -G www -D -s /sbin/nologin www  && 
        apk add nginx && 
        apk add php7 php7-fpm php7-opcache php7-curl php7-gd php7-mbstring php7-mysqli php7-json php7-mcrypt php7-redis php7-pdo  redis  && 
        apk del build-base shadow binutils && 
        #rm -rf  /var/cache/apk/* && 
        chmod +x /run.sh
    EXPOSE  80
    ENTRYPOINT ["/run.sh"]
    

    然后执行命令

    docker build -t apline-php7.3.17-nginx:1.2 .
    

    成功则显示如下,我也是尝试了几次成功的,可能跟网速有关。下面显示用了cache。

    接下来 我们尝试启动一个名为 afei 的容器

    docker run   --name afei  -d  apline-php7.3.17-nginx:1.2 .
    

     查看启动情况

    进入容器查看进程。

     

     至此,php-fpm和nginx都已启动。

    可以将自己php和nginx的配置文件映射至容器的如下两个目录

    /etc/php7/php.ini

    /etc/nginx/conf.d/default.conf

    如果线上使用,最好在Dockerfile中指定安装的php和nginx版本。并经过运维的审核。

    工具用的好,下班回家早。祝好!!!

  • 相关阅读:
    WP7应用开发笔记插曲 小心使用MessageBox
    WP7应用开发笔记 继承BitmapSource并使用独立存储来缓存远程的图片
    WP7应用开发笔记(10) 导航
    Bangumi 番組計劃 WP手机客户端发布
    WP7应用开发笔记(17) 提交应用
    WP7应用开发笔记(8) IP输入框控件
    从FLC中学习的设计模式系列结构型模式(2)装饰
    Windows Phone Toolkit for WP8 已经出了
    狂神说HTML笔记
    期待
  • 原文地址:https://www.cnblogs.com/kala00k/p/12729638.html
Copyright © 2020-2023  润新知