172 lines
4 KiB
Text
172 lines
4 KiB
Text
|
---
|
|||
|
Title: Self-Hosting
|
|||
|
Type: Document
|
|||
|
---
|
|||
|
## Hardware Requirements
|
|||
|
|
|||
|
| Minimium | Recommended |
|
|||
|
| ---------------------------------------- | ---------------------------------------- |
|
|||
|
| 10GB of Disk Space | 60GB of Disk Space |
|
|||
|
| 512MB | 4GB |
|
|||
|
| 1 Core | 2 Core |
|
|||
|
| 10TB of Traffic (Unlimited is preferred) | 20TB of Traffic (Unlimited is preferred) |
|
|||
|
|
|||
|
## Installation
|
|||
|
|
|||
|
### Docker Compose Method (Recommended)
|
|||
|
|
|||
|
Please make sure that the Docker Engine is installed on your system before continuing.
|
|||
|
|
|||
|
Clone MinPluto somewhere on your system:
|
|||
|
|
|||
|
Terminal window
|
|||
|
|
|||
|
```
|
|||
|
git clone https://sudovanilla.com/code/MinPluto/MinPluto/
|
|||
|
```
|
|||
|
|
|||
|
cd MinPluto
|
|||
|
|
|||
|
Then, edit the included `config.json` file:
|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"SERVER_DOMAIN": "https://example.org",
|
|||
|
|
|||
|
"SERVER_ADMIN": "Company LLC",
|
|||
|
|
|||
|
"SERVER_LOCATION": "Undisclosed",
|
|||
|
|
|||
|
"STATISTICS": false,
|
|||
|
|
|||
|
"ANALYLICS_TOOL": "",
|
|||
|
|
|||
|
"ANALYLICS_ID": "",
|
|||
|
|
|||
|
"SCRIPT_SRC": "",
|
|||
|
|
|||
|
"DOMAIN": "example.org",
|
|||
|
|
|||
|
"DEFAULT_VIDEO_PROXY": "https://v.minpluto.org",
|
|||
|
|
|||
|
"DEFAULT_DATA_PROXY": "https://v.minpluto.org",
|
|||
|
|
|||
|
"DEFAULT_IMAGE_PROXY": "https://i.minpluto.org",
|
|||
|
|
|||
|
"DEFAULT_PLAYER": "Zorn",
|
|||
|
|
|||
|
"SIDEBAR_CATEGORIES": true,
|
|||
|
|
|||
|
"SIDEBAR_DISCOVER": false,
|
|||
|
|
|||
|
"MODIFIED": false,
|
|||
|
|
|||
|
"CUSTOM_SOURCE_CODE": ""
|
|||
|
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
You should at the least edit `SERVER_DOMAIN` and `SERVER_ADMIN`. If you have an analytics tool that you use like Plausible or Umami, the configuration will work with them.
|
|||
|
|
|||
|
If you plan to make any changes to MinPluto on your instance, you must make it public and state what you’ve changed, and provide a link to the modified source code in `CUSTOM_SOURCE_CODE`.
|
|||
|
|
|||
|
You can now launch MinPluto:
|
|||
|
|
|||
|
Terminal window
|
|||
|
|
|||
|
```
|
|||
|
docker compose up -d # sudo may be required depending on your setup
|
|||
|
```
|
|||
|
|
|||
|
MinPluto should launch on the default port, which should be at [http://0.0.0.0:1930](http://0.0.0.0:1930). An image proxy is added to the Docker Compose file, which should be on port `1931`.
|
|||
|
|
|||
|
### Manual
|
|||
|
|
|||
|
You’ll need to install either NodeJS or Bun.
|
|||
|
|
|||
|
Clone MinPluto somewhere on your system:
|
|||
|
|
|||
|
Terminal window
|
|||
|
|
|||
|
```
|
|||
|
git clone https://sudovanilla.com/code/MinPluto/MinPluto/
|
|||
|
```
|
|||
|
|
|||
|
cd MinPluto
|
|||
|
|
|||
|
Then, edit the included `config.json` file:
|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"SERVER_DOMAIN": "https://example.org",
|
|||
|
|
|||
|
"SERVER_ADMIN": "Company LLC",
|
|||
|
|
|||
|
"SERVER_LOCATION": "Undisclosed",
|
|||
|
|
|||
|
"STATISTICS": false,
|
|||
|
|
|||
|
"ANALYLICS_TOOL": "",
|
|||
|
|
|||
|
"ANALYLICS_ID": "",
|
|||
|
|
|||
|
"SCRIPT_SRC": "",
|
|||
|
|
|||
|
"DOMAIN": "example.org",
|
|||
|
|
|||
|
"DEFAULT_VIDEO_PROXY": "https://v.minpluto.org",
|
|||
|
|
|||
|
"DEFAULT_DATA_PROXY": "https://v.minpluto.org",
|
|||
|
|
|||
|
"DEFAULT_IMAGE_PROXY": "https://i.minpluto.org",
|
|||
|
|
|||
|
"DEFAULT_PLAYER": "Zorn",
|
|||
|
|
|||
|
"SIDEBAR_CATEGORIES": true,
|
|||
|
|
|||
|
"SIDEBAR_DISCOVER": false,
|
|||
|
|
|||
|
"MODIFIED": false,
|
|||
|
|
|||
|
"CUSTOM_SOURCE_CODE": ""
|
|||
|
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
You should at the least edit `DEFAULT_IMAGE_PROXY`, `SERVER_DOMAIN`, and `SERVER_ADMIN`. If you have an analytics tool that you use like Plausible or Umami, the configuration will work with them.
|
|||
|
|
|||
|
If you plan to make any changes to MinPluto on your instance, you must make it public and state what you’ve changed, and provide a link to the modified source code in `CUSTOM_SOURCE_CODE`.
|
|||
|
|
|||
|
All domains should NOT end with a `/`.
|
|||
|
|
|||
|
Install packages:
|
|||
|
|
|||
|
* [NPM](https://sudovanilla.com/docs/minpluto/selfhosting/#tab-panel-0)
|
|||
|
|
|||
|
* [Bun](https://sudovanilla.com/docs/minpluto/selfhosting/#tab-panel-1)
|
|||
|
|
|||
|
* [Yarn](https://sudovanilla.com/docs/minpluto/selfhosting/#tab-panel-2)
|
|||
|
|
|||
|
* [PNPM](https://sudovanilla.com/docs/minpluto/selfhosting/#tab-panel-3)
|
|||
|
|
|||
|
```
|
|||
|
npm install
|
|||
|
```
|
|||
|
|
|||
|
Then run:
|
|||
|
|
|||
|
* [NPM](https://sudovanilla.com/docs/minpluto/selfhosting/#tab-panel-4)
|
|||
|
|
|||
|
* [Bun](https://sudovanilla.com/docs/minpluto/selfhosting/#tab-panel-5)
|
|||
|
|
|||
|
* [Yarn](https://sudovanilla.com/docs/minpluto/selfhosting/#tab-panel-6)
|
|||
|
|
|||
|
* [PNPM](https://sudovanilla.com/docs/minpluto/selfhosting/#tab-panel-7)
|
|||
|
|
|||
|
```
|
|||
|
npm start
|
|||
|
```
|
|||
|
|
|||
|
MinPluto should launch on the default port, which should be at [http://0.0.0.0:1930](http://0.0.0.0:1930).
|
|||
|
|