README.md 3 KB
Newer Older
1
# Poduptime
2

dmorley's avatar
dmorley committed
3
Poduptime is software to get live stats and data on pods that support nodeinfo output.
4

dmorley's avatar
dmorley committed
5 6 7 8 9
# To Install:

Environmental items you need (debian based system assumed):

OS Dependencies:
10
```
dmorley's avatar
dmorley committed
11
php7.4 php7.4-curl php7.4-pgsql php7.4-bcmath php-geoip php7.4-cli php7.4-common php7.4-fpm php7.4-bcmath php7.4-json php7.4-readline php7.4-mbstring php7.4-xml php7.4-intl php-cgi git curl postgresql postgresql-contrib dnsutils bind9 npm nodejs composer
12
```
dmorley's avatar
dmorley committed
13

dmorley's avatar
dmorley committed
14
Yarn is a separate install: sudo npm install -g yarn
dmorley's avatar
dmorley committed
15

16

dmorley's avatar
dmorley committed
17
Clone and setup:
18
```
dmorley's avatar
dmorley committed
19
git clone https://git.feneas.org/diasporg/Poduptime
20
cd Poduptime
dmorley's avatar
dmorley committed
21
yarn install
David Morley's avatar
David Morley committed
22
composer install
dmorley's avatar
dmorley committed
23
cp config.php.example config.php (all fields required)
24
```
25

26 27 28 29 30 31 32 33 34 35
If you need to setup your Postgresql/DB:
```
sudo -u postgres bash -c "psql -c \"CREATE USER podupuser WITH PASSWORD 'MYpassword';\""
sudo -u postgres bash -c "psql -c \"CREATE DATABASE podupdb;\""
sudo -u postgres bash -c "psql -c \"GRANT ALL PRIVILEGES ON DATABASE podupdb TO podupuser;\""

# update your local line to allow md5 METHOD
sudo nano /etc/postgresql/vx.x/main/pg_hba.conf

# restart postgresql
dmorley's avatar
dmorley committed
36
```
37

dmorley's avatar
dmorley committed
38 39
Import database schema
```
dmorley's avatar
dmorley committed
40
psql -U podupuser podupdb < db/tables.sql
41 42
```

43 44 45 46 47
Configure your webserver (nginx example)
```
see file http-server-config.example
```

dmorley's avatar
dmorley committed
48
1. Edit `config.php` to add your DB and file settings
49 50
2. Create your backup folder
3. Add a pod and run `php db/update.php init` 
dmorley's avatar
dmorley committed
51 52

# To Use:
53

dmorley's avatar
dmorley committed
54
run `php-cgi db/update-all.php` to update your data for all pods
dmorley's avatar
dmorley committed
55 56 57 58
run `php db/update.php debug` to debug output  
run `php db/update.php sqldebug` to debug sql  
run `php db/update.php develop` to run without email alerts to end users  
run `php db/update.php Check_System_Deleted` to re-check system deleted pods as needed  
dmorley's avatar
dmorley committed
59
These commands can be combined  
60

dmorley's avatar
dmorley committed
61
# To Upgrade:
62 63
```
git pull
dmorley's avatar
dmorley committed
64
yarn install
David Morley's avatar
David Morley committed
65
composer install
dmorley's avatar
dmorley committed
66
psql -U podupuser podupdb < db/migrations/xxx.sql (see db/migrations/README.md for proper migration versions)
67 68
```

dmorley's avatar
dmorley committed
69
# Status
dmorley's avatar
dmorley committed
70

dmorley's avatar
dmorley committed
71 72
[![pipeline status](https://git.feneas.org/diasporg/Poduptime/badges/develop/pipeline.svg)](https://git.feneas.org/diasporg/Poduptime/commits/develop)
[![coverage report](https://git.feneas.org/diasporg/Poduptime/badges/develop/coverage.svg)](https://git.feneas.org/diasporg/Poduptime/commits/develop)
dmorley's avatar
dmorley committed
73 74


krishna's avatar
krishna committed
75 76
============================

dmorley's avatar
dmorley committed
77
Source for Podpptime
David Morley's avatar
1st  
David Morley committed
78

dmorley's avatar
dmorley committed
79
  Poduptime is software to get live stats and data on federated network hosts.
krishna's avatar
krishna committed
80
  Copyright (C) 2011 David Morley
81

krishna's avatar
krishna committed
82 83 84 85
  This program is free software: you can redistribute it and/or modify
  it under the terms of the GNU Affero General Public License as
  published by the Free Software Foundation, either version 3 of the
  License, or (at your option) any later version.
86

krishna's avatar
krishna committed
87 88 89 90
  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU Affero General Public License for more details.
91

krishna's avatar
krishna committed
92
  You should have received a copy of the GNU Affero General Public License
93
  along with this program.  If not, see <https://www.gnu.org/licenses/>.