docs: update README.md

This commit is contained in:
Maël Gangloff 2025-11-13 18:26:56 +01:00
parent d0f03570b8
commit aaf0016fce
No known key found for this signature in database
GPG Key ID: 11FDC81C24A7F629
3 changed files with 141 additions and 14 deletions

View File

@ -7,7 +7,7 @@ on [How to deploy a Symfony application](https://symfony.com/doc/current/deploym
### Prerequisites
- PHP 8.2 or higher
- PHP 8.4 or higher
- PostgreSQL 16 or higher
In order to retrieve information about domain names, Domain Watchdog will query the RDAP server responsible for the TLD.

View File

@ -4,7 +4,7 @@
<br/>
Domain Watchdog is an app that uses RDAP to collect publicly available info about domains, track their history, and purchase them.
For more information please check [the wiki](https://github.com/maelgangloff/domain-watchdog/wiki) !
For more information please check out [the documentation](https://domainwatchdog.eu) !
## Why use it?
@ -20,23 +20,27 @@ detailed history of events (ownership changes, renewals, etc.) is not feasible w
## Install
> [!TIP]
> For more details on the installation procedure, please refer to [INSTALL.md](/INSTALL.md).
> For more details on the installation procedure, please refer to the documentation.
### Docker Deployment
1. Clone the repository
2. Modify environment variables (.env) and add static files to customize your instance (see [INSTALL.md](/INSTALL.md))
3. Pull the latest version of the Domain Watchdog image from Docker Hub.
```shell
docker compose pull
```
4. Start the project in production environment. If you want, you can also build the Docker image to use yourself.
```shell
docker compose up
```
1. Download the [docker-compose.yml](https://github.com/maelgangloff/domain-watchdog/blob/develop/docker-compose.yml)
and modify it as needed
2. Download the [.env](https://github.com/maelgangloff/domain-watchdog/blob/develop/.env) and modify it as needed
3. Add static files to customize your instance (under `public/content`)
4. Pull the latest version of the Domain Watchdog image from Docker Hub
```shell
docker compose pull
```
5. Start the project in production environment
```shell
docker compose up
```
By default, the container listens on http://localhost:8080, but you can configure this in environment variables.
See the [Docker Compose file](./docker-compose.yml).
## Features

View File

@ -0,0 +1,123 @@
---
title: Manual Install
---
## Installation
To deploy a Domain Watchdog instance, please refer to the Symfony documentation
on [How to deploy a Symfony application](https://symfony.com/doc/current/deployment.html).
### Prerequisites
- PHP 8.4 or higher
- PostgreSQL 16 or higher
In order to retrieve information about domain names, Domain Watchdog will query the RDAP server responsible for the TLD.
It is crucial that the Domain Watchdog instance is placed in a clean environment from which these servers can be
queried.
In particular, the DNS servers and root certificates of the system must be trusted.
### Steps
Clone the repository:
```shell
git clone https://github.com/maelgangloff/domain-watchdog.git
```
#### Backend
1. Install dependencies:
```shell
composer install
```
2. Set up your environment variables:
```shell
cp .env .env.local
```
3. Generate the cryptographic key pair for the JWT signature
```shell
php bin/console lexik:jwt:generate-keypair
```
4. Run database migrations:
```shell
php bin/console doctrine:migrations:migrate
```
5. Start the Symfony server:
```shell
symfony server:start
```
6. Build assets:
```shell
php bin/console assets:install
```
7. Don't forget to set up workers to process the [message queue](https://symfony.com/doc/current/messenger.html)
#### Frontend
1. Install dependencies:
```shell
yarn install
```
2. Generate language files:
```shell
yarn run ttag:po2json
```
3. Make the final build:
```shell
yarn build
```
4. Add and modify the following files as you wish:
~~~
public/content/home.md
public/content/privacy.md
public/content/tos.md
public/content/faq.md
public/images/icons-512.png
public/images/banner.png
public/favicon.ico
~~~
## Update
**Any updates are your responsibility. Make a backup of the data if necessary.**
Fetch updates from the remote repository:
```shell
git pull origin master
```
### Backend
1. Install dependencies:
```shell
composer install
```
2. Run database migrations:
```shell
php bin/console doctrine:migrations:migrate
```
3. Clearing the Symfony cache:
```shell
php bin/console cache:clear
```
4. Build assets:
```shell
php bin/console assets:install
```
### Frontend
1. Install dependencies:
```shell
yarn install
```
2. Generate language files:
```shell
yarn run ttag:po2json
```
3. Make the final build:
```shell
yarn build
```