Document image building and migration testing

This commit is contained in:
Tr0n 2025-01-01 19:20:30 +01:00
parent e825992d58
commit 1f0af1f800
No known key found for this signature in database

View File

@ -1,26 +1,50 @@
# The Metin2 Website
This is a replica of the old Metin2 website in the pre-2014 era, made in Laravel. Still very much a work in progress,
it aims to be the management centre for the Metin2 stack.
## What works
- Registering a new account
- Account login
- Registering a new account
- Account login
## What's unfinished
- User management
- Complete multilanguage system & English translations
- Item-Shop with Stripe integration
- Populating the database tables with the minimum information to start the server
- Admin panel (which would allow you to post news, customize the navbar, etc. and also manage ingame actions such as bans)
- Docker image
- Ranking (with cache system for fast search)
- Adding Grotto & DC landing pages
- Converting Flash-based media players to HTML5.
- User management
- Complete multilanguage system & English translations
- Item-Shop with Stripe integration
- Populating the database tables with the minimum information to start the server
- Admin panel (which would allow you to post news, customize the navbar, etc. and also manage ingame actions such as bans)
- Docker image
- Ranking (with cache system for fast search)
- Adding Grotto & DC landing pages
- Converting Flash-based media players to HTML5.
## Development
To build the image, checkout the repo and run
### Image Building
To build the image, checkout the repo and run either of the following build statements
```shell
docker build -t metin2/web:test -f docker/image/prod/apache.Dockerfile .
# or
docker build -t metin2/web:test -f docker/image/prod/frankenphp.Dockerfile .
```
If you want to use this image in your deploy project, ensure to update the `WEB_IMAGE` variable in your `.env` to `metin2/web:test`.
### Testing Migrations
To test newly added migrations, use a temporary docker container that attaches to your existing deploy network.
```shell
docker run --env-file .env --network deploy_default --rm metin2/web:test "php artisan migrate"
```
Ensure that the rollback of your migration is also working as expected.
Adapt the `--step` parameter according to the number of migration files you added.
```shell
docker run --env-file .env --network deploy_default --rm metin2/web:test "php artisan migrate:rollback --step=1"
```