首页 > 系统相关 > nginx容器与php容器连接

nginx容器与php容器连接

时间:2022-10-30 03:22:05浏览次数:75  
标签:容器 RUN https nginx usr composer php pecl

文档说明:只记录关键地方;
试验环境: linux debian 11
目标:nginx容器与php容器连接



构建PHP容器


curl -fsSL 'https://curl.haxx.se/ca/cacert.pem' -o /usr/local/etc/php/cacert.pem

RUN pecl channel-update https://pecl.php.net/channel.xml
RUN pear update-channels
RUN pecl install redis
RUN pecl install mongodb
RUN pecl install swoole
FROM php:7.4-cli-alpine


RUN sed -i "[email protected]/@mirrors.huaweicloud.com/@g" /etc/apk/repositories
RUN uname -a
RUN apk add --no-cache  autoconf   build-base bash   bash-completion git curl wget ca-certificates openssl openssl-dev
RUN apk add  --no-cache \
      freetype \
      freetype-dev \
      jpeg \
      libpng \
      libwebp \
      libpng \
      libpng-dev \
      libjpeg-turbo \
      libjpeg-turbo-dev \
      gd-dev \
      zlib-dev \
      gmp \
      gmp-dev \
      glib \
      glib-dev \
      libzip-dev \
      postgresql-dev \
      tini
#RUN addgroup -g 1000 -S wenba && adduser -u 1000 -S wenba -G wenba -s /sbin/nologin
ENV http_proxy="http://192.168.3.26:8015"
ENV https_proxy=$http_proxy
RUN pear config-set http_proxy $http_proxy
RUN pecl channel-update https://pecl.php.net/channel.xml
RUN pear update-channels



WORKDIR /

RUN pecl install redis
RUN pecl install mongodb
RUN pecl install swoole

#curl ssl 证书
#https://curl.haxx.se/docs/caextract.html curl ssl 证书下载网址

RUN curl -fsSL 'https://curl.haxx.se/ca/cacert.pem' -o /usr/local/etc/php/cacert.pem
#ADD ./cacert.pem  /usr/local/etc/cacert.pem

ENV http_proxy=""
ENV https_proxy=$http_proxy
RUN pear config-set http_proxy ""

# 启用扩展
RUN  docker-php-ext-enable redis
RUN  docker-php-ext-enable mongodb
RUN  docker-php-ext-enable swoole



RUN apk add --no-cache --repository http://dl-3.alpinelinux.org/alpine/edge/testing gnu-libiconv
ENV LD_PRELOAD /usr/lib/preloadable_libiconv.so php

#php 源码所在目录 /usr/src/php

RUN docker-php-source extract
RUN docker-php-ext-install gd   pdo_mysql pdo_pgsql sockets  bcmath gmp zip


ADD ./php.ini  /usr/local/etc/php/php.ini


RUN docker-php-source delete


#RUN rm -f /etc/localtime \
#&& ln -sv /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
#&& echo "Asia/Shanghai" > /etc/timezone


#RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
#RUN php composer-setup.php
#RUN php -r "unlink('composer-setup.php');"
#
#RUN mv composer.phar /usr/bin/composer.phar
RUN wget -P /usr/bin/  https://mirrors.aliyun.com/composer/composer.phar &&  chmod a+x /usr/bin/composer.phar
# ln –s 源文件 目标文件
RUN ln -s /usr/bin/composer.phar /usr/bin/composer && composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/



#RUN   apk add nfs-utils psmisc ceph-common psmisc strace lsof rsync libtool
#RUN   apk add  net-tools  strace socat


RUN rm -rf /var/cache/apk/* /tmp

WORKDIR /
#USER 1000:1000

参考文档

  1. 容器5种网络模式
  2. hub docker php
  3. hub docker nginx
  4. curl ssl 证书
  5. PHP四种设置回调函数的方式
  6. Unix 系统下的安装
  7. php docs
  8. php 所支持的时区列表

标签:容器,RUN,https,nginx,usr,composer,php,pecl
From: https://www.cnblogs.com/jingjingxyk/p/16830730.html

相关文章