• Как автоматизировать установку и настройку VPN сервера?

    @Drno
    bash скрипт с набором нужных команд. Либо Ансибл - если надо массово устанавливать(хотя можно и parallel-ssh использовать)

    Vless элементарно упаковывается в докер. Нужный файл json монтируется в файле docker-compose yml

    Итого...
    ставим нужный софт - докер,компос, fail2ban итд по желанию
    копируем файлы для докер компос
    стартуем docker-compose up -d -f my.yml

    всё...

    краткий пример yml -
    version: '3'
    services:
      xray-turk:
        image: teddysun/xray:latest
        volumes:
          - /opt/xray-turk/config.json:/etc/xray/config.json
          - /opt/xray-turk/geosite.dat:/usr/local/share/xray/geosite.dat
        ports:
          - "443:443"
        restart: unless-stopped


    краткий bash для установки софта (который лично мне нужен) (да я знаю что там старый докер, но меня устраивает) -

    #!/bin/bash
    
    # Обновление пакетов
    sudo apt-get update -qq && sudo apt-get install jq fail2ban mc htop vnstat wget git curl rsync apt-transport-https ca-certificates software-properties-common -qq -y;
    
    # Добавление ключа репозитория Docker
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
    
    # Получение кодового имени текущей версии Ubuntu
    codename=$(lsb_release -cs)
    
    # Добавление репозитория Docker
    sudo add-apt-repository -y "deb [arch=amd64] https://download.docker.com/linux/ubuntu $codename stable";
    
    # Обновление пакетов после добавления репозитория
    sudo apt-get update;
    
    # Установка Docker
    sudo apt-get install docker-ce -qq -y;
    
    # Установка Docker Compose
    sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    
    # Добавление прав на выполнение для Docker Compose
    sudo chmod +x /usr/local/bin/docker-compose


    Желание комерческой поддержки - милости просим в ТГ )
    Ответ написан
    Комментировать
  • Актуален ли ассемблер на сегодняшний день?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Ассемблер полезен при анализе прошивок на безопасность.
    При изучении того как работает софт без исходного кода (обратный инжинеринг)
    и при решении задач интеграции разных слоёв софта.

    Ассемблер также очень близко стоит к разработке компилляторов. И если у вас нет
    соотвествующих знаний то строить свой компиллятор вы не сможете. Или вам нужно
    будет изучать готовые back-ends, virtual-machines.

    Ассемблер помогает при анализе узких мест в коде. В частности например
    векторизация вычислений ставит в первую очередь вопросы на которые ассемблер
    отвечает а ЯВУ - нет.

    Знания ассемблера помогают сделать бинарник компактнее. Это важно при разработке
    встраиваемых систем.
    Ответ написан
    Комментировать
  • Какие легковесные дистрибутивы Linux еще остались?

    @rPman
    Не путай размер дистрибутива и размер установленной системы на диске

    Дистрибутив на установочном livecd/liveusb диске это минимально рабочий (или специально подобранный для типового пользователя) набор пакетов, чтобы минимизировать запросы к серверам репозитариев мейнтейнера, а вот их размер почти у любого дистрибутива - десятки гигабайт.

    Например одно время ubuntu server альтернативно можно было установить, загрузившись в примерно 100-200мб iso образ, с установщиком, который с удобным текстовым интерфейсом устанавливал абсолютно все пакеты по сети из репозитария..

    Место, занимаемое установленной ОС зависит не от выбора мейнтейнера, а от выбора софта, который тебе нужен. Что бы ты не выбрал, пример - если тебе нужно ставить пакеты для разработки нейронных сетей (tensorflow) на nvidia gpu, то качать тебе минимум 5 гигабайт всего что с этим связано (а то и больше).

    Единственный известный мне дистрибутив (с большим комунити), дающий наибольший контроль над устанавливаемыми компонентами - это gentoo. Он не спроста компилирует каждый пакет под пользовательские настройки, в нем с помощью тех же USE флагов определяются не только возможности но и зависимости, которые потянут за собой устанавливаемые пакеты.

    К сожалению, юзерфрендли его не назовешь, так как поддержка обновлений своего конфига это достаточно тяжелый труд (хоть и предоставлена куча удобных инструментов), который если запустить на год другой, может сильно усложнить дальнейшее обновление системы, вплоть до ее полной переустановки (по крайней мере так было с 5-10 лет назад). Придется изучать и разбираться почти во всем, что ты используешь. С gentoo именно ты являешься мейнтейнером своего дистрибутива.

    Но и результат может быть потрясающим, можно собрать графическую систему в несколько сотен мегабайт с неплохим набором современного (буквально, новее чем тестовые версии бинарных дистрибутивов) софта, с минимальными (ничем больше не достижимыми) требованиям к оперативной памяти и даже некоторыми значимыми оптимизациями для своего процессора (бинарные дистрибутивы собирают софт без них, но некоторые разработчики пакетов заморачиваются сборкой оптимизаций сразу под несколько платформ самостоятельно) что может ускорить работу в некоторых случаях.
    Ответ написан
    4 комментария
  • Terraform для alicloud?

    amk4
    @amk4 Автор вопроса
    Вопрос решился документацией.
    https://developer.hashicorp.com/terraform/language...

    Скачал последний архив https://releases.hashicorp.com/terraform-provider-...
    Поместил в папку
    /usr/local/share / terraform/plugins / HOSTNAME/NAMESPACE/TYPE / terraform-provider-TYPE_VERSION_TARGET.zip

    /usr/local/share/terraform/plugins/amkhost/amkrepo/alicloud/terraform-provider-alicloud_1.206.0_linux_amd64.zip

    В ali.tf добавил
    terraform {
      required_providers {
        alicloud = {
         source  = "amkhost/amkrepo/alicloud"
         version = "1.206.0"
        }
      }
    }
    
    terraform init прошел успешно
    Ответ написан
    Комментировать
  • Какие могут быть полезные или интересные применения для демо-сайта с ChatGPT?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Самая интересная идея для ИИ - как разбогатеть очень быстро и без рисков.

    Идея - нужная. Я гарантирую это (С)
    Ответ написан
    2 комментария
  • Как сделать чат-бот на основе ИИ, обученный на собственной базе знаний?

    Maksim_64
    @Maksim_64
    Data Analyst
    Есть ощущение, что вы ожидаете очень сложного ответа, а ответ очень прост. Нет никакой математики в этой задаче, так же нету в этой задаче и архитектуры нейронных сетей. Есть лишь только работа с API, что оно предоставляет, таковы и возможности. Если бы мне нужно было решать такую задачу, я бы открывал статьи на medium (открывается с vpn) и естественно смотрел бы в стороны платных статей и от них бы отталкивался, потому что там множество пошаговых гайдов высокого качества для создания чат-ботов на базе GPT ( предполагаю вы свободно владеете английским).
    Ответ написан
    2 комментария
  • Как сделать чат-бот на основе ИИ, обученный на собственной базе знаний?

    @vitaly_il1
    DevOps Consulting
    Согласен с Максимом - заставить это заработать в принципе несложно. Нюансы могут быть при тонкой настройке.
    Я не спец в AI, а DevOps. Но недавно заказчик попросил поднять приватный "ChatGPT" с его страшно секретными документами. Я использовал клон https://github.com/imartinez/privateGPT. Работает в целом.

    Что искать в гугле для загрузки доеументов в chatgpt - например "chatgpt my documents" .
    Ответ написан
    Комментировать
  • Как сделать чат-бот на основе ИИ, обученный на собственной базе знаний?

    @Kakagawa
    Ответ очень прост) Вот пример реализации похожей задачи со своей базой данных - https://www.youtube.com/watch?v=9AXP7tCI9PI
    Ответ написан
    4 комментария
  • Есть ли какие-либо курсы по повышению квалификации для Backend разработчика (Node.js)?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Лучший курс повышения квалификации - решение реальных задач. Особенно более сложных, чем предыдущие. Все остальное - мусор и инфоцыганство в основной массе. Все нужные знания лежат в сети в открытом доступе - надо просто научиться их искать и применять в реальном деле.
    Ответ написан
    3 комментария
  • Альтернативы Google Photo?

    @rPman
    Если нужно хранить, то syncting, запускаете везде где хотите, не хранит ничего на серверах, точнее каждая ваша машина становится сервером, поэтому если совсем нужно чтобы был сервер - покупаете за пару баксов vps-ку и поднимаете демон там же.

    Работает без проблем везде, на всех ОС, быстро, удобно, красиво, бесплатно, так хорошо - что хочется задонатить.

    Свой сервер - ваши правила, даже со слабыми знаниями можно запилить пару скриптиков, которые позволили бы перемещать автоматом файлы по папкам (по времени например), тогда ваш телефон автоматически будет чиститься от старых файлов, а они в свою очередь оставаться на сервере.

    Дешевле этого вы не найдете реализации.
    Ответ написан
    9 комментариев
  • Как организовать хранение фотографий для сайта?

    @dimuska139
    Backend developer
    Загружайте файлы не в папку, а в s3-совместимое хранилище (чтобы при желании можно было без страданий и изменений в коде перейти на Amazon или в Linode какой-нибудь) - MinIO. Т.е. генерируете некий id, превращаете его в хеш, формируете ключ и по нему льёте в MinIO. Причём храните только оригиналы.

    Что касается миниатюр, то их нарезать и хранить не нужно. Представьте, если размеры в дизайне поменялись - что тогда? А если для каждой миниатюры webp-версия потребовалась - все картинки опять обрабатывать? Есть решение - imgproxy. Это специальный прокси-сервис (можно на свой сервер поставить, как и MinIO), который нарезает картинки "на лету" в момент обращения (по параметрам в url). Кроме нарезки, есть ещё куча разных возможностей. Кеша внутреннего нет, т.е. перед imgproxy есть смысл поставить Nginx для кеширования миниатюр (чтобы при каждом обращении не нарезало).
    Ответ написан
    7 комментариев
  • В чём разница в направлениях подготовки по информационной безопасности в ВУЗах России?

    GreaterGlider
    @GreaterGlider
    Автор, погуглите темы дипломов или курсовых этих специальностей, многое станет ясно. Это довольно точный способ определить чем занимаются на специальности (отбросив всю маркетинговую чушь о них), жаль я допёр до него спустя 10 лет после выпуска. Вдобавок по научным руководителям поймете кто из профессуры специализируется на том, что вам интересно и в каком вузе они обитают. Удачи!
    Ответ написан
    1 комментарий
  • Стоит ли начинать изучение программирования в 13 - 14 лет?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Те, кому действительно стоит изучать программирование, этим вопросом не задаются, они просто начинают изучать, как только им становится интересно.
    Ответ написан
    3 комментария
  • Что вообще происходит с современным софтом?

    hottabxp
    @hottabxp
    Сначала мы жили бедно, а потом нас обокрали..
    Вину всему развитие интернета и доступ к любой информации. Раньше все учились по книгам. Писали практически все с нуля, без использования +100500 прослоек. Оптимизировали. Но это занимало время. Сейчас можно вбить в гугл "как сделать * на языке *" и получить ссылку на Stack Overflow. Скопировать без раздумий в свой проект и все. Или найти библиотеку для своего проекта, которая решает вашу задачу и которая дает вам возможность написать программу за 1-5 минут. Только никто не учитывает, что данная библиотека использует зависимости других десятков библиотек, а те в свою очередь тоже используют в своих зависимостях... ну вы поняли. В итоге получается Египетская пирамида.

    Было у меня лет 10 назад приложение facebook на кнопочном телефоне. Занимало оно примерно 100 КБ! Сейчас оно занимает(на android) пол гига. Только ничего нового туда не добавили. (А нет, оказывается добавили, тоесть удалили сообщения).

    Также есть сейчас electron, который суют везде где не надо. Мало того, что нужно скачивать и хранить на hdd более 100 МБ, так и ещё тормозит не по-детски.

    Также в программы суют "красивый фантастический" интерфейс, которому нужно 32 ГБ оперативной памяти. Но это программы для лохов или дебилов. Действительно полезные программы имеют стандартный интерфейс.

    Microsoft тоже по наклонной пошла(начиная с Windows 8). Практически, ничего нового не добавили(с времен Windows 7 или XP) - а размер вырос практически в 10 раз! А нет, добавили - Microsoft Malware и Microsoft Telemetry.
    Ответ написан
    3 комментария
  • Как выбрать активную цену и предыдущую?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Ну так а в чем у вас проблема-то? Вы в принципе не знаете как запрос писать и это задание такое?
    Если так, то данный ресурс не для этого.
    Если у вас конкретный вопрос, то заайте его конкретно. Что именно у вас не получется?
    Не ясно как сформулировать рамочные условия с интервалами, пересекающими конкретную дату?
    Не понятно как сгруппировать интервалы по товарам?
    Не знаете про coalesce?
    Запутались с граничными точками интервалов?
    В чем проблема?
    Ответ написан
  • Существуют ли алгоритмы сжатия случайных данных с конечным алфавитом?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Случайные данные - это наихудший вариант для сжатия. Практически все алгоритмы сжатия данных без потерь основаны на поиске закономерностей и повторяющихся последовательностей. В случайной последовательности нет ни того, ни другого.
    Ответ написан
    12 комментариев
  • Как быть медлительному разработчику?

    @dimoff66
    Кратко о себе: Я есть
    Это же все относительно. Кто-то работает быстрее кто-то медленнее. Это ваш темп, если вы помимо решения задач еще и будете грузиться скоростью - на пользу не пойдет. Ну зафейлили значит зафейлили, кто сказал, что сроки были корректные.
    Ответ написан
    Комментировать
  • Как определяют номер телефона у посетителей сайта?

    @granty
    Куки исключены, браузер не сохраняет их и не хранит историю.

    1. Про evercookie слышали? А про Web Fingerprint?
    На хакере перечислена масса способов хранить ID на вашем компе без использования Куков и кэша, а технология Web Fingerprint позволяет хранить цифровой отпечаток компа, браузера на сервере банка: Фингерпринтинг конкретного ПК с точностью 99,24%, не спасает даже смена браузера.

    Если вы - клиент банка и заходили в его интернет-банкинг, он легко может вас опознать при использовании того же браузера и того же компа.
    А если у вас на мобиле установлено приложение интернет-банкинга - вы вообще под колпаком :)

    2. Если вы лазите по инету залогиненым в Вконтакте/Яндексе, то через backdoors в их API можно определить ваш профиль и все ваши данные.
    Сайт Соцфишинг работает на этом принципе.
    Сам банк тоже может использовать соцфишинг и ставить невидимый ифрейм на своё меню, и при клике вы автоматически авторизуетесь через аккаунт, например, Вконтакте. Зная ваш ID на Вконтакте, ваш телефон легко узнаётся, их базы регулярно сливаются и продаются

    PS: Узнать как конкретно вас "слил" и каким образом - невозможно без исследования конкретной ситуации.

    факультатив

    Всё вышеперечисленное - детский лепет по сравнению с тем, какие возможности имеет Google (и, частично, Яндекс с Apple).
    У всех дома стоит точка WiFi, к которой коннектится ваш комп и мобильник с Андроид. Через мобильник Гугл знает все номера телефонов, которые подключаются к этой точке доступа (и все аккаунты соцсетей в которые вы логинились с мобильника). Поэтому когда вы лезете Хромом с компа через эту же точку доступа - Гугль уже знает, что это вы (или один из ваших домочадцев). По GPS на мобильнике он знает даже адрес вашего проживания с точностью до подъезда.
    Так что мы все давно уже добровольно "чипованы", чего удивляться что о нас всё известно.
    Ответ написан
    Комментировать
  • Что такое SOLID и как его можно использовать в веб-разработке?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Если чтоб и ребенок понял - то это такие правила, придуманные взрослыми дядями, если ты им будешь следовать то твой код будет хорошим, ты сможешь создать более сложную систему, меньше наговнякать и соседские пацаны, смотря как их мелкие проекты, вчера бывшие такими клевыми, вдруг превращаются в хаос и обитель зла, будут завидовать, смотря на то как ты лихо продолжаешь ваять свой проект все таким же красивым, и все девчонки захотят с тобой дружить.

    Посмотреть детальнее, что за правила и как их выполнять можно в таком большом количестве мест в интернете что перепечатывание сюда будет порицаемо в любом приличном обществе.

    Один момент - не все принципы одинаково полезны и применимы в веб-разработке, но знать и понимать их все в любом случае на пользу.
    Ответ написан
    4 комментария