mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-01-22 07:03:21 +01:00
Updated README.md
This commit is contained in:
parent
6dd84ddb7b
commit
c01203e8a1
@ -1,70 +1,135 @@
|
|||||||
# role friendica
|
# Friendica Docker Role
|
||||||
|
|
||||||
## Delete all
|
This role manages the setup, reset, and maintenance of a Friendica instance running with Docker.
|
||||||
docker exec -i central-mariadb mariadb -u root -p"${DB_ROOT_PASSWORD}" -e "DROP DATABASE IF EXISTS friendica; CREATE DATABASE friendica;"; docker compose down; rm -rv /mnt/hdd/data/docker/volumes/friendica_data; docker volume rm friendica_data
|
|
||||||
|
|
||||||
## Reset Database
|
## Overview 🚀
|
||||||
### Manual
|
|
||||||
|
Friendica is a decentralized social networking platform. This role helps manage Friendica in a containerized environment with Docker and provides tools for debugging, resetting, and maintaining the installation.
|
||||||
|
|
||||||
|
## Prerequisites 🛠️
|
||||||
|
|
||||||
|
Ensure you have the following:
|
||||||
|
- Docker and Docker Compose installed
|
||||||
|
- A central MariaDB instance running
|
||||||
|
- Necessary permissions to manage Docker and database configurations
|
||||||
|
|
||||||
|
## Usage 📚
|
||||||
|
|
||||||
|
### Full Reset 🚫➡️✅
|
||||||
|
|
||||||
|
The following environment variables need to be defined for successful operation:
|
||||||
|
|
||||||
|
- `DB_ROOT_PASSWORD`: The root password for the MariaDB instance
|
||||||
|
|
||||||
|
To completely reset Friendica, including its database and volumes, run:
|
||||||
|
```bash
|
||||||
|
docker exec -i central-mariadb mariadb -u root -p"${DB_ROOT_PASSWORD}" -e "DROP DATABASE IF EXISTS friendica; CREATE DATABASE friendica;"
|
||||||
|
docker compose down
|
||||||
|
rm -rv /mnt/hdd/data/docker/volumes/friendica_data
|
||||||
|
docker volume rm friendica_data
|
||||||
|
```
|
||||||
|
|
||||||
|
### Reset Database 🗄️
|
||||||
|
|
||||||
|
#### Manual Method:
|
||||||
|
1. Connect to the MariaDB instance:
|
||||||
|
```bash
|
||||||
|
docker exec -it central-mariadb mariadb -u root -p
|
||||||
|
```
|
||||||
|
2. Run the following commands:
|
||||||
|
```sql
|
||||||
DROP DATABASE friendica;
|
DROP DATABASE friendica;
|
||||||
CREATE DATABASE friendica;
|
CREATE DATABASE friendica;
|
||||||
exit;
|
exit;
|
||||||
|
```
|
||||||
|
|
||||||
### Automatic
|
#### Automatic Method:
|
||||||
|
```bash
|
||||||
DB_ROOT_PASSWORD="your_root_password"
|
DB_ROOT_PASSWORD="your_root_password"
|
||||||
docker exec -i central-mariadb mariadb -u root -p"${DB_ROOT_PASSWORD}" -e "DROP DATABASE IF EXISTS friendica; CREATE DATABASE friendica;"
|
docker exec -i central-mariadb mariadb -u root -p"${DB_ROOT_PASSWORD}" -e "DROP DATABASE IF EXISTS friendica; CREATE DATABASE friendica;"
|
||||||
|
```
|
||||||
|
|
||||||
## Enter application
|
### Enter the Application Container 🔍
|
||||||
|
|
||||||
docker compose exec -it application sh
|
To access the application container:
|
||||||
|
```bash
|
||||||
|
docker compose exec -it application sh
|
||||||
## debugging
|
```
|
||||||
|
|
||||||
## Check environment variables
|
### Debugging Tools 🛠️
|
||||||
docker compose exec -it application printenv
|
|
||||||
|
#### Check Environment Variables
|
||||||
ls -la /var/lib/docker/volumes/friendica_data/_data/
|
|
||||||
|
|
||||||
## autoinstall
|
|
||||||
docker compose exec --user www-data -it application bin/console autoinstall
|
|
||||||
|
|
||||||
## reinitialisation
|
|
||||||
|
|
||||||
### docker
|
|
||||||
docker-compose up -d --force-recreate
|
|
||||||
|
|
||||||
### full
|
|
||||||
docker-compose up -d --force-recreate && sleep 2; docker compose exec --user www-data -it application bin/console autoinstall;
|
|
||||||
|
|
||||||
### info
|
|
||||||
```bash
|
```bash
|
||||||
## Check general config
|
|
||||||
cat /var/lib/docker/volumes/friendica_data/_data/config/local.config.php
|
|
||||||
## Check environment variables
|
|
||||||
docker compose exec -it application printenv
|
docker compose exec -it application printenv
|
||||||
## Check email configuration
|
```
|
||||||
|
|
||||||
|
#### Inspect Volume Data
|
||||||
|
```bash
|
||||||
|
ls -la /var/lib/docker/volumes/friendica_data/_data/
|
||||||
|
```
|
||||||
|
|
||||||
|
### Autoinstall 🌟
|
||||||
|
|
||||||
|
Run the following command to autoinstall Friendica:
|
||||||
|
```bash
|
||||||
|
docker compose exec --user www-data -it application bin/console autoinstall
|
||||||
|
```
|
||||||
|
|
||||||
|
### Reinitialization 🔄
|
||||||
|
|
||||||
|
#### Docker Only:
|
||||||
|
```bash
|
||||||
|
docker-compose up -d --force-recreate
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Full Reinitialization:
|
||||||
|
```bash
|
||||||
|
docker-compose up -d --force-recreate && sleep 2; docker compose exec --user www-data -it application bin/console autoinstall;
|
||||||
|
```
|
||||||
|
|
||||||
|
### Configuration Information ℹ️
|
||||||
|
|
||||||
|
#### General Configuration:
|
||||||
|
```bash
|
||||||
|
cat /var/lib/docker/volumes/friendica_data/_data/config/local.config.php
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Email Configuration:
|
||||||
|
```bash
|
||||||
docker compose exec -it application cat /etc/msmtprc
|
docker compose exec -it application cat /etc/msmtprc
|
||||||
```
|
```
|
||||||
|
|
||||||
## email debugging:
|
### Email Debugging ✉️
|
||||||
docker compose exec -it application msmtp --account=system_email -t kevin@veen.world
|
|
||||||
|
|
||||||
## create user
|
To send a test email:
|
||||||
|
```bash
|
||||||
|
docker compose exec -it application msmtp --account=system_email -t kevin@veen.world
|
||||||
|
```
|
||||||
|
|
||||||
|
### Create User 👤
|
||||||
|
|
||||||
|
To manually create a user in the database:
|
||||||
|
```sql
|
||||||
INSERT INTO user (guid, username, email, password, verified, register_date, account_expires_on, account_expired)
|
INSERT INTO user (guid, username, email, password, verified, register_date, account_expires_on, account_expired)
|
||||||
VALUES (
|
VALUES (
|
||||||
UUID(), -- Generiert eine eindeutige Benutzer-ID
|
UUID(), -- Generates a unique user ID
|
||||||
'newusername', -- Benutzername
|
'newusername', -- Username
|
||||||
'newuser@example.com', -- E-Mail-Adresse
|
'newuser@example.com', -- Email address
|
||||||
MD5('newpassword'), -- Passwort (kann durch Bcrypt ersetzt werden, siehe unten)
|
MD5('newpassword'), -- Password (use Bcrypt if preferred)
|
||||||
1, -- Verifizierungsstatus (1 = verifiziert)
|
1, -- Verification status (1 = verified)
|
||||||
NOW(), -- Registrierungsdatum
|
NOW(), -- Registration date
|
||||||
'0001-01-01 00:00:00', -- Kontodauer unbegrenzt
|
'0001-01-01 00:00:00', -- Unlimited account duration
|
||||||
0 -- Konto ist nicht abgelaufen
|
0 -- Account is not expired
|
||||||
);
|
);
|
||||||
|
```
|
||||||
|
|
||||||
|
## Additional Resources 📖
|
||||||
|
|
||||||
|
- [Friendica Docker Hub](https://hub.docker.com/_/friendica)
|
||||||
|
- [Friendica Installation Docs](https://wiki.friendi.ca/docs/install)
|
||||||
|
- [Friendica GitHub Repository](https://github.com/friendica/docker)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
📜 Created by [Kevin Veen-Birkenbach](https://www.veen.world/)
|
||||||
|
|
||||||
## More information
|
|
||||||
- https://hub.docker.com/_/friendica
|
|
||||||
- https://wiki.friendi.ca/docs/install
|
|
||||||
- https://github.com/friendica/docker
|
|
Loading…
x
Reference in New Issue
Block a user