Latest Posts

Marketplace. Скрипт обменного пункта Exchange

Marketplace. Скрипт обменного пункта Exchange

Скрипт: Автоматический обменный пункт Exchange.

Скрипт производит прием и обмен средств с заданным курсом и комиссией системы. Курсы возможно получать в режиме реального времени с одного из провайдеров курсов, процент или коэффициент сделки задается через систему администрирования скрипта.

Поддерживаемые валюты:

  1. Webmoney WMZ,WME,WMR,WMU,WMG,WMX
  2. Яндекс.Деньги
  3. Qiwi
  4. Perfect Money
  5. Bitcoin (Bitcoind, coinbase API, blockchain API)
  6. Ethereum
  7. Litecoin
  8. Monero
  9. Ripple
  10. Bytecoin
  11. Advcash
  12. Unitpay
  13. OKPAY
  14. Paxum
  15. BTCE-E (WEX) коды
  16. Payeer

Для некоторых провайдеров услуг требуется установка дополнительного программного обеспечения.

Read more

Отправка писем из alpine контейнера с помощью SSMTP

Отправка писем из alpine контейнера с помощью SSMTP

Для отправки писем при помощи стороннего почтового сервера пригодится утилита ssmtp. Распишем по шагам как можно отправлять письма внутри alpine или любого другого linux дистрибутива.

Установим ssmtp пакет:

apk add ssmtp

Правим файл /etc/ssmtp/ssmtp.conf:

[email protected]
# любой доступный mail сервер
mailhub=smtp.mail.ru:465

UseTLS=YES

# пользователь от кого будем отсылать письма
[email protected]
AuthPass=

rewriteDomain=visla.dev
hostname=visla.dev
realname=visla.dev

FromLineOverride=YES

Правим /etc/ssmtp/revaliases:

Read more

Скрипт системы приема криптодепозитов

Скрипт системы приема криптодепозитов

Подготовлена и внедрена система учета и приема депозитов для криптовалют.

В основу скрипта выделены следующие модули:

  1. Пополнение баланса пользователя. Доступен прием Ethereum и Bitcoin, для каждого пользователя выдается случайный адрес из пула всех адресов. Уведомление администратору.
  2. Раздел мои депозиты. После пополнения баланса возможно создать новый депозит на определенный или безлимитный срок. Начисление процентов на депозит происходит в заданное в системе время еженедельно.
  3. Администрирование. Для учета пополнений и депозитов, вывода статистики по системе, пользователям и конфигурационные данные.

Внедрение системы простое и не потребует дополнительных знаний при использовании серверов Sassoft. Доступна аренда решения.

Read more

Вывод релизов с Github API при помощи SH скрипта

Вывод релизов с Github API при помощи SH скрипта

Пришлось на днях работать над выводом списка релизов с Github. Для остроты ощущений был написан простой sh скрипт, который выводит в stdout список всех релизов указанного репозитория на гитхабе. Для манипуляции с JSON ответом была выбрана библиотека jq.

#!/usr/bin/env sh

# Get releases
DRAFTS=""
i=1
while [ $i   -le ${PAGES} ]; do
    p=$(curl --silent --get "https://${ACCESS_TOKEN}@api.github.com/repos/${REPOSITORY}/releases?per_page=100" | jq -r '.[] | select(.draft==false) | [ .tag_name, .id|tostring ] | join(";")')
    DRAFTS="$DRAFTS$p"
    i=$(( i + 1 ))
done
DRAFT_COUNT=$(echo "${DRAFTS}" | wc -l)
DRAFT_COUNT=$((DRAFT_COUNT + 0))
echo "Found ${DRAFT_COUNT} releases"

Для работы необходимо предоставить ACCESS_TOKEN для с github и REPOSITORY вида team_name/repo_name

Read more

Просмотр docker logs

Просмотр docker logs

Для просмотра логов из контейнера используется удобная и понятная команда docker logs.

Что еще удобного есть в команде docker logs?

  1. —follow  — просматривать логи в режиме реального времени (-f)
  2. —details — выводить дополнительную информацию в логах
  3. —tail n — выводить последние n логов. Удобно если контейнер пишет очень много логов, а нам интересна лишь ее последняя часть.
  4. —since и —until — показывать логи в определенном интервале, заданным timestamp (2018-11-014T21:23:37) или вида 1m, 30m и так далее.
  5. —timestamps или -t  — показывать время логов.

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Read more

Генератор интерфейсов на Go — ifacemaker

Генератор интерфейсов на Go — ifacemaker

Нашел очень удобную библиотеку для генерации интерфейсов на Go — ifacemaker.

Для того, чтобы сгенерировать интерфейс исходя из имеющегося класса достаточно запустить библиотеку со следующими параметрами:

ifacemaker -f request.go -s Request -i RequestInterface -p humantest -c "Don't edit: Autogenerated"

После запуска скрипт сгенерирует нам готовый интерфейс RequestInterface на базе класса Request в пакете request.go

Read more

Скрипт объявлений

Скрипт объявлений

Разработано и внедрено решение для создания собственной площадки объявлений по определенной тематике: от портала недвижимости до нишевого сайта объявлений. В сервисе реализована поддержка групп объявлений, личного кабинета пользователя для создания нового объявления, базовые фильтры и система администрирования.

Для развертывания решения теперь не требуется своего сервера или специальных знаний по настройке скрипта — развернуть сервис на своем домене можно на облачной платформе Sassoft абсолютно бесплатно в течение первого месяца. От вас лишь требуется свой домен и подходящий шаблон для проекта. Также поддерживается решение на вашем сервере с полной автоматизацией по развертыванию сервиса.

Read more

Мониторинг Docker контейнеров в DataDog

Мониторинг Docker контейнеров в DataDog

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

Для этого необходимо добавить datadog agent в виде контейнера:

docker run -d --name dd-agent \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-v /proc/:/host/proc/:ro \
-v /sys/fs/cgroup/:/host/sys/fs/cgroup:ro \
-e DD_API_KEY=YOUR_KEY \
datadog/agent:latest

После этого можно установить готовый Docker Overview dashboard, который уже имеется внутри Datadog и собирать метрики.

Read more

Работа с S3 в Yii2

Работа с S3 в Yii2

На сегодняшний момент любое Stateless приложение невозможно представить без использования object storage хранилища на подобии AWS S3. Также многие облачные провайдеры (DigitalOcean) стали предоставлять S3-совместимые хранилища по привлекательным ценам.

Как подключить работу с S3 в Yii2?

Для этого для начала воспользуемся библиотекой aws/aws-sdk-php:

composer require aws/aws-sdk-php

Далее для работы нам необходимо сгенерировать ключи доступа на стороне провайдера и записать их как переменные AWS_SECRET_ACCESS_KEY и AWS_ACCESS_KEY_ID. SDK будет брать эти ключи из наших переменных окружения ($_ENV).

Read more

Использование Sendgrid в Yii2

Использование Sendgrid в Yii2

Sendgrid — очень удобный сервис по отправке транзакционных писем с обширной аналитикой и отчетами по доставленным письмам. Сервис также очень удобен для обхода спам фильтров ваших писем, используя Sendgrid вы можете быть уверены что письмо будет доставлено и прочитано адресатом.

Хотя API очень прост и удобен, мы все же воспользуемся готовым расширением wadeshuler/yii2-sendgrid

Read more