простой чат, можно обмениваться только текстом
Find a file
2026-06-30 11:22:38 +03:00
static Загрузить файлы в «static» 2026-06-30 11:00:47 +03:00
go.mod Загрузить файлы в «/» 2026-06-30 11:01:24 +03:00
LICENSE Initial commit 2026-06-30 10:58:37 +03:00
main.go Загрузить файлы в «/» 2026-06-30 11:01:24 +03:00
README.md Обновить README.md 2026-06-30 11:22:38 +03:00

ParleyChat

простой чат, можно обмениваться только текстом

Рекомендации

  • настроить админа в бд в методе initDB()
  • очиститьь переменные на всякий случай
$env:GOOS = "linux"
$env:GOARCH = "amd64"
$env:CGO_ENABLED = "0"
  • сбилдить бинарник
go build -o parley main.go
  • положить на сервер
  • сделать его исполняемым
  • написать к нему сервис и сделать enabled(см. сервис)
  • настроить nginx(конфиг)
  • дать nginx разрешение на чтение файлов фронта (в зависимости от того где лежит приложение - sudo chmod -R 755 /opt/parley/static/ и sudo chown -R www-data:www-data /opt/parley/static/ )
  • установить sqlite: apt-get install -y sqlite3
  • начать использвать

конфиги

nginx /etc/nginx/sites-available/default

  • СДЕЛАЙ БЭКАП ПРЕЖДЕ ЧЕМ ЧТО-ТО ДЕЛАТЬ!!!!!
# --- PARLEY CHAT ---
	location = /parley {
    	return 301 /parley/;
	}

	location /parley/ {
    	proxy_pass http://127.0.0.1:3100/parley/;
    	proxy_http_version 1.1;
    	proxy_set_header Host $host;
    	proxy_set_header X-Real-IP $remote_addr;
    	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    	proxy_set_header X-Forwarded-Proto $scheme;
    	proxy_set_header X-Forwarded-Prefix /parley;
	}

	location /parley/static/ {
    	alias /opt/parley/static/;
    	expires 30d;
    	add_header Cache-Control "public, immutable";
	}
	# --- PARLEY CHAT END ---
  • проверь что изменения в nginx применились успешно и перезагрузи
sudo nginx -t
sudo systemctl reload nginx

сервис

sudo nano /etc/systemd/system/parley.service
[Unit]
Description=Parley Chat Service
After=network.target

[Service]
Type=simple
User=root
WorkingDirectory=/opt/parley   
Environment="BASE_PATH=/parley"
ExecStart=/opt/parley/parley   
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target  
запуск сервиса
sudo systemctl daemon-reload
sudo systemctl enable parley
sudo systemctl start parley
sudo systemctl status parley

# проверим что слушает порт
sudo netstat -tlnp | grep 3100