最近在研究 gateway-worker 的使用,使用的 php 基礎映象是 debian,在安裝 event 擴充套件時遇到 php7 configure: error: Cannot find OpenSSL's <evp.h>
問題搞了好久,安裝 openssl,libssl-dev,都沒有解決,於是嘗試把 php 環境換了,使用 alpine 來搭建 php 環境試一下。
- 以下是對應 Dockerfile 檔案
其中擴充套件是按照以前的環境擴充套件安裝的,可以到 pkgs.alpinelinux.org/packages 查詢相關擴充套件,比如查詢 event 擴充套件,搜尋from alpine:latest label author="xxx@163.com" RUN set -x \ && sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories \ && apk update \ && apk add --no-cache tzdata vim openssl openssh openssl-dev bash curl libevent \ && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \ && apk del tzdata RUN set -x \ && apk update \ && apk add --no-cache php7 \ php7-ctype php7-curl php7-json php7-fileinfo php7-iconv \ php7-mbstring php7-openssl php7-pcntl php7-pdo php7-pdo_mysql \ php7-posix php7-session php7-pecl-event CMD ["/bin/bash"]
php7*event*
。
這裡有個問題是安裝的是 php7.3版本的,有時我們的 php 版本不能隨便變,就要安裝其他版本的 php。 - 安裝其他版本的 php
在 alpine 映象中wget -O /etc/apk/keys/phpearth.rsa.pub https://repos.php.earth/alpine/phpearth.rsa.pub
echo "https://repos.php.earth/alpine/v3.7" >> /etc/apk/repositories
apk update
更新索引apk search php7.1
搜尋相關 php 版本軟體資訊
這個方法也只能安裝 php7.X 版本的而已,參考 docs.php.earth/docker/alpine/
本作品採用《CC 協議》,轉載必須註明作者和本文連結