Загрузка...

Деплой сайта с GitHub на хостинг через SSH

Тема в разделе Frontend создана пользователем aquadew 8 июл 2021. 229 просмотров

  1. aquadew
    aquadew Автор темы 8 июл 2021 0 20 фев 2020
    Для реализации требуется хостинг с SSH

    1. Создание SSH-ключа
    Открываем Git Bash, вводим следующую команду:
    пароль указывать не нужно
    Код
    ssh-keygen -t rsa -b 2048
    Ключ сохраняется в файле C:\Users\ИмяПользователя.ssh, позже их нужно удалить, так как они могут попасть в файл репозитория.

    В файле будут:
    id_rsa - приватный ключ
    id_rsa.pub - публичный ключ

    2. Добавление ключей

    Заходим в панель хостинга (пишем в тп)
    и вписываем ключи.

    Теперь идем в репозиторий GitHub, переходим в Settings, оттуда переходим в Secrets. Внутри нужно будет назвать секрет и ввести приватный ключ (сохраните его заранее в буфер обмена). Называйте ключ просто – key, вставляйте ключ и сохраняйте.

    Пишем файл для деплоя deploy.yml

    Код
    name: Deploy

    on:
    push:
    branches:
    - main

    jobs:
    deploy:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    # Setup key
    - run: set -eu
    - run: mkdir "$HOME/.ssh"
    - run: echo "$" > "$HOME/.ssh/key"
    - run: chmod 600 "$HOME/.ssh/key"
    # Build
    - run: npm ci - быстрее загрузки с гита
    - run: npm run build - если у вас есть билды, если нету - удалите эти 2 строчки
    # Deploy
    - run: cd app && rsync -e "ssh -p 20022 -i $HOME/.ssh/key -o StrictHostKeyChecking=no" --archive --compress --delete . m71516@hostru04.fornex.org:/home/m71516/public_html/bk.club - деплой данных

    В - run: echo "$" > "$HOME/.ssh/key" где именно будет запускаться ключ.
    файл deploy.yml закиньте в ваш проект в специальную папку .github.

    Желаю удачи!
     
Загрузка...
Top