簡體   English   中英

如何從 Alpine Docker 映像安裝 php8.0-ssh2

[英]How can I install php8.0-ssh2 from an Alpine Docker image

這是我用於我的項目的 Dockerfile(見下文)。 你能向我解釋一下如何從這個 Dockerfile 安裝 php8.0-ssh2。

FROM php:8.0.0-fpm-alpine

ARG UID
ARG GID

RUN apk add --no-cache mysql-client msmtp perl wget procps shadow libzip libpng libjpeg-turbo libwebp freetype icu

RUN apk add --no-cache --virtual build-essentials \
    icu-dev icu-libs zlib-dev g++ make automake autoconf libzip-dev \
    libpng-dev libwebp-dev libjpeg-turbo-dev freetype-dev && \
    docker-php-ext-configure gd --enable-gd --with-freetype --with-jpeg --with-webp && \
    docker-php-ext-install gd && \
    docker-php-ext-install mysqli && \
    docker-php-ext-install pdo_mysql && \
    docker-php-ext-install intl && \
    docker-php-ext-install opcache && \
    docker-php-ext-install exif && \
    docker-php-ext-install zip && \
    apk del build-essentials && rm -rf /usr/src/php*

RUN wget https://getcomposer.org/composer-stable.phar -O /usr/local/bin/composer && chmod +x /usr/local/bin/composer

RUN apk add --no-cache tzdata
ENV TZ=Europe/Paris
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

COPY php.ini /usr/local/etc/php/php.ini

RUN apk --no-cache add shadow && \
    usermod -u $UID www-data && \
    groupmod -g $GID www-data

我做了很多研究和嘗試,包括:

RUN apk add --no-cache libssh2-dev autoconf build-base
RUN pecl install ssh2-1.2 && docker-php-ext-enable ssh2

這似乎適用於 PHP7,但不適用於 PHP8。

謝謝你的幫助。

我可以為 php 8 安裝和激活 ssh2:

RUN apk add --no-cache libssh2-dev autoconf build-base
RUN pecl install ssh2-1.3.1 && docker-php-ext-enable ssh2

感謝@Sammitch 的幫助。

嘗試手動安裝

RUN apk add --no-cache build-base libssh2-dev libssh2 autoconf
RUN curl https://pecl.php.net/get/ssh2-1.2.tgz -o ssh2.tgz \
    && pecl install ssh2 ssh2.tgz \
    && docker-php-ext-enable ssh2 \
    && rm -rf ssh2.tgz

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM