1. Установить виртуальные машины в соответствии со схемой развертывания сети.
2. Настроить сеть внутри виртуальной машины в соответствии с выбранным сценарием - Development или Production
3. Перенести на виртуальную машину код для развертывания
4. Создать БД для функционирования сервиса (если ее нет) для подключения к программному продукту. Рекомендуется использовать PostgreSQL
5. Подготовить Django-проект к запуску
6. Настроить сервисы (веб-сервер, XMPP-сервер и тп)
Установить виртуальные машины: Развертывание сети с использованием Proxmox или другой виртуализационной платформы. Рекомендуемые параметры для виртуальной машины:
Настроить сеть на виртуальной машине: Перейдите в /etc/systemd/network/ и создайте конфигурационный файл для сетевого интерфейса. Пример настройки VLAN интерфейса:
[Netdev] Name=ens19.20 Kind=vlan [VLAN] Id=20
Здесь ens19.20 — это интерфейс, на котором работает VLAN 20.
После установки виртуальной машины необходимо обновить пакеты и установить необходимые зависимости:
P.S обновляем под Root
apt update apt dist-upgrade update-kernel
apt install apache2 git python3 python3-venv python3-pip
cd ~/.ssh/
Создайте ключ:
ssh-keygen
Скопируйте публичный ключ и добавьте его в ваш профиль Git на сервере.
Host git.sharix-app.org Hostname git.sharix-app.org User Denis Port 300
ssh -vv git.sharix-app.org
Если все настроено правильно, вы получите сообщение «publickey succeeded».
cd /etc/apache2/sites-available/
sudo vim guide.conf
<VirtualHost *:80> ServerAdmin web@webserver.local DocumentRoot /var/www/webapps/<директория с приложением> ErrorLog /var/log/apache2/error_log CustomLog /var/log/apache2/access_log combined AddDefaultCharset utf-8 </VirtualHost>
a2ensite guide.conf systemctl restart apache2
git clone -b unstable https://git.sharix-app.org/ShariX_Open/sharix-open-webapp-base.git cd sharix-open-webapp-base
./bin/install.sh
python3 -m venv venv source venv/bin/activate
Укажите параметры подключения к базе данных. Настройте значения SECRET_KEY, ALLOWED_HOSTS, CSRF_TRUSTED_ORIGINS.
apt install postgresql
psql -U postgres
CREATE USER YOURUSER WITH PASSWORD 'yourpassword';
CREATE DATABASE НАЗВАНИЕ БД OWNER YOURUSER;
nano /etc/postgresql/12/main/pg_hba.conf
host all all 0.0.0.0/0 md5
systemctl restart postgresql
systemctl start sharix_open.service
systemctl status sharix_open.service
systemctl restart sharix_open.service
journalctl -u sharix_open.service
ps aux | grep gunicorn kill <pid>
После выполнения всех шагов ваш сервис будет готов к работе. Убедитесь, что все сервисы, такие как PostgreSQL, Apache и Django, работают корректно и не конфликтуют между собой.