В этом видео я показал процесс деплоя бота на хостинг.
0:00 начало
0:26 хостинг timeweb поднял цены в 2.5 раза — поэтому он идёт лесом
1:54 настройка хостинга beget и регистрация домена
5:30 настройка виртуальной машины
14:55 обзор нового кода
20:54 продолжение настройки виртуальной машины
26:45 обзор админки traefik
27:45 тестирование работы телеграм бота
29:27 финал
Посмотреть новый код, добавленный в данном уроке:
https://github.com/AndreyYermolenko/B...
Хостинг Beget:
https://beget.com/ru/vps
Страница управления доменами:
https://cp.beget.com/domains
Добавление нового пользователя и установка ему пароля:
$ useradd pogreb -m
$ passwd pogreb
Добавить нового пользователя в sudoerr (иначе, не будет работать команда sudo)
$ usermod -a -G sudo pogreb
Зайти под новым пользователем (ввод пароля не требуется):
$ su pogreb
Перейти в домашнюю директорию и просмотреть путь к текущей директории:
$ cd
$ pwd
Установка докера на виртуалке.
Устанавливаем служебные пакеты:
$ sudo apt-get update && sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release
Добавляем ключ к официальному репозиторию Docker в систему:
$ curl -fsSL https://download.docker.com/linux/ubu... | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
Добавляем репозиторий Docker:
$ echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list /dev/null
ВНИМАНИЕ: ютуб запрещает в описание к видео вставлять угловые скобки, поэтому команда выше работать не будет. Чтоб все заработало, нужно после "list.d/docker.list" поставить угловую скобку, указывающие вправо =))
Обновляем пакетный индекс APT:
$ sudo apt-get update
Получаем список доступных версий Docker CE (Community Edition):
$ apt-cache madison docker-ce
Устанавливаем конкретную версию Docker, указав её полностью. Я буду использовать версию: 5:20.10.13~3-0~ubuntu-jammy
$ sudo apt-get install docker-ce=5:20.10.13~3-0~ubuntu-jammy
Проверяем, что docker успешно установился и процесс-демон работает:
$ sudo systemctl status docker
Чтобы выйти из режима просмотра - нужно нажать Q.
Добавляем текущего пользователя в docker группу, чтобы выполнять операции с docker-командой без sudo:
$ sudo usermod -aG docker pogreb
Выход с виртуалки, чтобы изменения вступили в силу:
$ exit
$ exit
Проверка, что можно выполнять команды к докеру без sudo:
$ docker ps
Создаем ключ SSH:
$ mkdir -p ~/.ssh
$ cd ~/.ssh
$ ssh-keygen -t rsa -b 2048 -f github_rsa
Получаем публичный ключ и копируем его в буфер:
$ ssh-keygen -y -f ~/.ssh/github_rsa
Нужно создать конфиг на виртуалке для подключения к гиту. Команда touch создаст пустой файлик с названием config в текущей директории.
$ touch config
Для работы с файлами в данном уроке будет использован редактор VI:
$ vi config
В .ssh/config дописать:
Host gitserv
Hostname github.com
User git
IdentityFile ~/.ssh/github_rsa
Чтобы сохранить файл в редакторе VI, нужно нажать Shift + двоеточие. Внизу появится двоеточие и мигающие курсор. Нужно ввести 2 английские буквы w и q. W — означает Write, а Q — означает Quit, т.е. выйти. Таким образом, мы сохраняем изменения и закрываем файл.
Проверка соединение с github:
$ ssh gitserv
Дока с публичными ключами гитхаба:
https://docs.github.com/en/authentica...
Переходим в домашнюю директорию и клонируем нужный репозиторий со всей историей коммитов:
$ cd
$ git clone gitserv:AndreyYermolenko/BabushkinPogreb.git
Здесь вместо AndreyYermolenko укажите свой аккаунт и актуальное название репозитория, если вы его поменяли у себя, когда делали Fork.
$ cd ~/BabushkinPogreb
Утилита для генерации хеша пароля:
$ sudo apt-get install apache2-utils
Генерация хеша:
$ echo $(htpasswd -nbB admin "password")
Утилита для работы с let's encrypt:
$ sudo apt install certbot
Выпуск сертификата:
$ sudo certbot certonly --standalone -d ваш_домен
Копирование ключей:
$ mkdir /home/pogreb/certs
$ sudo cp /etc/letsencrypt/live/ваш_домен/fullchain.pem /home/pogreb/certs/fullchain.pem
$ sudo cp /etc/letsencrypt/live/ваш_домен/privkey.pem /home/pogreb/certs/privkey.pem
Запуск системы:
$ /bin/bash ~/BabushkinPogreb/scripts/deploy.sh
Админка Traefik:
https://ваш_домен:9443/dashboard/#/
Временная почта:
https://tempail.com/ru/
Группа-беседка в тг: https://t.me/enter_I7
Github с кодом проекта:
https://github.com/AndreyYermolenko/B...
Ресурсы компании РЕЛЭКС:
https://relex.ru/ru/?utm_source=youtu...
https://t.me/relexru
/ relex-group
https://vk.com/relex_ru
#java #telegrambot #springboot #docker #deployment #vps #clouds #ssl #tls #traefik #timeweb #beget
Watch video Телеграм бот на Java. Деплой бота на VPS (хостинг). Настройка Traefik. Урок 21. online without registration, duration hours minute second in high quality. This video was added by user ВходИТе, открыто! 26 May 2024, don't forget to share it with your friends and acquaintances, it has been viewed on our site 1,724 once and liked it 71 people.