Initial commit: VPS tutorial complet (105 etapes)
This commit is contained in:
115
11-applications.md
Normal file
115
11-applications.md
Normal file
@@ -0,0 +1,115 @@
|
||||
# 11. Applications Web
|
||||
|
||||
## Wordpress
|
||||
|
||||
1. DNS A `wordpress` -> `<IP>`
|
||||
2. Sous-domaine ISPConfig `wordpress.<DOMAINE>` (SSL, LE, PHP-FPM, HTTPS redirect)
|
||||
3. Creer base de donnees `wordpress` (user + database dans ISPConfig)
|
||||
4. Identifier le proprietaire :
|
||||
```bash
|
||||
ls -la /var/www/wordpress.<DOMAINE>/ | head -5
|
||||
# Noter webX:clientY
|
||||
```
|
||||
|
||||
5. Installer :
|
||||
```bash
|
||||
cd /tmp
|
||||
wget -O wordpress.tar.gz https://wordpress.org/latest.tar.gz
|
||||
tar -xzf wordpress.tar.gz
|
||||
mv wordpress/* /var/www/wordpress.<DOMAINE>/wordpress/
|
||||
rm wordpress.tar.gz && rm -rf wordpress
|
||||
chown -R webX:clientY /var/www/wordpress.<DOMAINE>/wordpress/
|
||||
```
|
||||
|
||||
6. Acceder : `https://wordpress.<DOMAINE>` et suivre l'assistant.
|
||||
|
||||
> **Piege :** Si la page par defaut ISPConfig s'affiche, verifier que SSL/LE est coche. Supprimer `standard_index.html` si present.
|
||||
|
||||
## Nextcloud
|
||||
|
||||
1. Installer les prerequis PHP :
|
||||
```bash
|
||||
apt install php-cgi php-curl
|
||||
```
|
||||
|
||||
2. Modifier `/etc/php/8.3/fpm/php.ini` :
|
||||
```ini
|
||||
memory_limit = 512M
|
||||
upload_max_filesize = 500M
|
||||
post_max_size = 500M
|
||||
max_execution_time = 300
|
||||
```
|
||||
|
||||
3. DNS A `nextcloud` -> `<IP>`
|
||||
4. Sous-domaine ISPConfig (SSL, LE, PHP-FPM, HTTPS redirect, Webstatistics: None)
|
||||
5. Creer base de donnees `nextcloud`
|
||||
|
||||
6. Telecharger l'installeur :
|
||||
```bash
|
||||
wget -O /var/www/nextcloud.<DOMAINE>/nextcloud/setup-nextcloud.php https://download.nextcloud.com/server/installer/setup-nextcloud.php
|
||||
chown webX:clientY /var/www/nextcloud.<DOMAINE>/nextcloud/setup-nextcloud.php
|
||||
```
|
||||
|
||||
7. Acceder : `https://nextcloud.<DOMAINE>/setup-nextcloud.php`
|
||||
- Repertoire : `.`
|
||||
- Choisir MariaDB, renseigner la base
|
||||
|
||||
## Gitea
|
||||
|
||||
1. DNS A `gitea` -> `<IP>`
|
||||
2. Sous-domaine ISPConfig avec proxy vers `http://localhost:3000/`
|
||||
3. Creer base de donnees `gitea`
|
||||
|
||||
4. Installer :
|
||||
```bash
|
||||
# Creer l'utilisateur
|
||||
adduser --system --disabled-password --group --shell /bin/bash --home /home/gitea gitea
|
||||
|
||||
# Repertoires
|
||||
mkdir -p /var/lib/gitea/{data,log} /etc/gitea /run/gitea
|
||||
chown -R gitea:gitea /var/lib/gitea /run/gitea
|
||||
chown -R root:gitea /etc/gitea
|
||||
chmod -R 750 /var/lib/gitea
|
||||
chmod 770 /etc/gitea
|
||||
|
||||
# Telecharger (derniere version)
|
||||
VERSION=$(wget -qO- https://api.github.com/repos/go-gitea/gitea/releases/latest | grep tag_name | cut -d'"' -f4 | tr -d v)
|
||||
wget "https://dl.gitea.com/gitea/${VERSION}/gitea-${VERSION}-linux-amd64" -O /usr/local/bin/gitea
|
||||
chmod 755 /usr/local/bin/gitea
|
||||
```
|
||||
|
||||
5. Creer `/etc/systemd/system/gitea.service` :
|
||||
```ini
|
||||
[Unit]
|
||||
Description=Gitea (Git with a cup of tea)
|
||||
After=syslog.target
|
||||
After=network.target
|
||||
Requires=mysqld.service
|
||||
[Service]
|
||||
Type=simple
|
||||
User=gitea
|
||||
Group=gitea
|
||||
WorkingDirectory=/var/lib/gitea/
|
||||
RuntimeDirectory=gitea
|
||||
ExecStart=/usr/local/bin/gitea web -c /etc/gitea/app.ini
|
||||
Restart=always
|
||||
Environment=USER=gitea HOME=/home/gitea GITEA_WORK_DIR=/var/lib/gitea
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
```
|
||||
|
||||
```bash
|
||||
systemctl daemon-reload
|
||||
systemctl enable gitea.service
|
||||
systemctl start gitea.service
|
||||
```
|
||||
|
||||
6. Acceder : `https://gitea.<DOMAINE>/install` et configurer.
|
||||
|
||||
7. Securiser apres installation :
|
||||
```bash
|
||||
chmod 750 /etc/gitea
|
||||
chown root:gitea /etc/gitea/app.ini
|
||||
chmod 640 /etc/gitea/app.ini
|
||||
systemctl restart gitea
|
||||
```
|
||||
Reference in New Issue
Block a user