Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
php-node-client
6 лет назад

Подключение secp256k1-php к php [dockerfile]

Занимаюсь подписанием транзакций на php, вчера пол дня подключал secp256k1-php к докеру
Инструкция по подключению простая, но плохая для докера) без граблей не работает. Поэтому для тех кто пойдет протореной тропой, выкину dockerfile.

Сама иснтрукция выглядит так
To Install:

    git clone git@github.com:Bit-Wasp/secp256k1-php
    git clone git@github.com:bitcoin-core/secp256k1
    cd secp256k1
    ./autogen.sh && ./configure --enable-experimental --enable-module-{ecdh,recovery} && make && sudo make install
    cd ../secp256k1-php/secp256k1
    phpize && ./configure --with-secp256k1 && make && sudo make install

сразу скажу, что

--enable-module-{ecdh,recovery}

следует заменить на

--enable-module-ecdh --enable-module-recovery

Для работы Bit-Wasp/secp256k1-php в докере следует установить дополнительно 2 компонента "automake", "libtool"
Далее

    git clone git@github.com:Bit-Wasp/secp256k1-php
    git clone git@github.com:bitcoin-core/secp256k1

не получится использовать в докере, поскольку нужен ssh ключь, чб докер не ругался, поэтому погуглив, сделал скачку zip с распоковкой.
Для распаковки архива и работы composer понадобится компонент "zip"

В результате докер файл выглядит так

# our base image
FROM php:7.1-fpm


#install zip extension for composer
RUN apt-get update && apt-get install -y \
    zip \
    automake \
    libtool

#install composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer

#install secp256k1-php
# Setup for ssh onto github
RUN  cd ~  && \
    curl -#L https://github.com/bitcoin-core/secp256k1/archive/master.zip > file.zip && \
    unzip file.zip && \
    rm file.zip && \
    cd secp256k1-master && \
    ./autogen.sh && \
    ./configure --enable-experimental --enable-module-ecdh --enable-module-recovery && \
    make && \
    make install
RUN  cd ~  && \
    curl -#L https://github.com/Bit-Wasp/secp256k1-php/archive/v0.1.2.zip > file.zip && \
    unzip file.zip && \
    rm file.zip && \
    cd secp256k1-php-0.1.2/secp256k1 && \
    phpize && \
    ./configure --with-secp256k1 && \
    make && \
    make install
RUN echo "extension=secp256k1.so" > /usr/local/etc/php/conf.d/secp256k1.ini

RUN chown -R www-data:www-data /var/www

WORKDIR  /var/www/php-node-client

Для тех кому интересно, benchmark показывает

real    0m1.348s
user    0m1.270s
sys     0m0.010s

Я не вкурсе насколько это круто, но говорят, что быстро)

20
333.324 GOLOS
На Golos с March 2017
Комментарии (1)
Сортировать по:
Сначала старые