代码之家  ›  专栏  ›  技术社区  ›  code.g

Docker phpinstall php扩展ssh2

  •  1
  • code.g  · 技术社区  · 6 年前

    FROM php:5.6-fpm-jessie
    

    在后面的文件中,我想要这样的东西:

     RUN apt-get update \
        && apt-get install -y libssh2-1-dev libssh2-1 \
        && docker-php-ext-install ssh2
    

    但这告诉我:

    /usr/src/php/ext/ssh2 does not exist
    

    php:fpm dockerfile 所有扩展都是在使用过的php可执行文件中编译的。

    在这种情况下,如何安装更多扩展?

    2 回复  |  直到 6 年前
        1
  •  3
  •   code.g    6 年前

    最后,这是成功的。

    && apt-get install -y libssh2-1-dev libssh2-1 \
    && pecl install ssh2 \
    && docker-php-ext-enable ssh2 
    
        2
  •  1
  •   lightswitch05    6 年前

    php:7.1.27-cli 我可以用这些命令来设置它- php:7.1.27-cli 图片基于debian stretch:

    # install dependencies 
    RUN apt-get update && apt-get install -y \
        ssh \
        libssh2-1 \
        libssh2-1-dev \
        wget \
        libssl-dev \
        && apt-get clean \
        && rm -rf /var/lib/apt/lists/*
    
    # Install ssh2 extension
    RUN wget -O libssh2.tar.gz https://www.libssh2.org/download/libssh2-1.8.1.tar.gz \
        && wget -O ssh2.tgz https://pecl.php.net/get/ssh2-1.1.2.tgz \
        && mkdir libssh2 && tar vxzf libssh2.tar.gz -C libssh2 --strip-components 1 \
        && mkdir ssh2 && tar vxzf ssh2.tgz -C ssh2 --strip-components 1 \
        && cd libssh2 && ./configure \
        && make && make install \
        && cd ../ssh2 && phpize && ./configure --with-ssh2 \
        && make && make install \
        && echo "extension=ssh2.so" >> /usr/local/etc/php/conf.d/ssh2.ini \
        && cd ../ && rm -rf libssh2.tar.gz ssh2.tgz ssh2 libssh2