mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2026-01-04 09:03:17 -06:00
[chore/docs] Add /gotosocial/.cache to Docker container, document GTS_WAZERO_COMPILATION_CACHE
This commit is contained in:
parent
86fb00da10
commit
2301f524f5
5 changed files with 71 additions and 3 deletions
|
|
@ -126,3 +126,19 @@ This means in cases where you want to just try changing one thing, but don't wan
|
|||
Reasonable default values are provided for *most* of the configuration parameters, except in cases where a custom value is absolutely required.
|
||||
|
||||
See the [example config file](https://github.com/superseriousbusiness/gotosocial/blob/main/example/config.yaml) for the default values, or run `gotosocial --help`.
|
||||
|
||||
## `GTS_WAZERO_COMPILATION_CACHE`
|
||||
|
||||
On startup, GoToSocial compiles embedded WebAssembly `ffmpeg` and `ffprobe` binaries into [Wazero](https://wazero.io/)-compatible modules, which are used for media processing without requiring any external dependencies.
|
||||
|
||||
To speed up startup time of GoToSocial, you can cache the compiled modules between restarts so that GoToSocial doesn't have to compile them on every startup from scratch.
|
||||
|
||||
You can instruct GoToSocial on where to store the Wazero artifacts by setting the environment variable `GTS_WAZERO_COMPILATION_CACHE` to a directory, which will be used by GtS to store some smallish artifacts of 20MiB or so.
|
||||
|
||||
For an example of this in action, see the [docker-compose.yaml](https://raw.githubusercontent.com/superseriousbusiness/gotosocial/main/example/docker-compose/docker-compose.yaml), and the [gotosocial.service](https://raw.githubusercontent.com/superseriousbusiness/gotosocial/main/example/gotosocial.service) example files.
|
||||
|
||||
If you want to provide this value to GtS outside of systemd or Docker, you can do so in the following manner when starting up your GtS server:
|
||||
|
||||
```bash
|
||||
GTS_WAZERO_COMPILATION_CACHE=~/gotosocial/.cache ./gotosocial --config-path ./config.yaml server start
|
||||
```
|
||||
|
|
|
|||
|
|
@ -91,6 +91,32 @@ If you want to use [LetsEncrypt](../../configuration/tls.md) for TLS certificate
|
|||
|
||||
For help translating variable names from the config.yaml file to environment variables, refer to the [configuration section](../../configuration/index.md#environment-variables).
|
||||
|
||||
### Wazero Compilation Cache (optional)
|
||||
|
||||
On startup, GoToSocial compiles embedded WebAssembly `ffmpeg` and `ffprobe` binaries into [Wazero](https://wazero.io/)-compatible modules, which are used for media processing without requiring any external dependencies.
|
||||
|
||||
To speed up startup time of GoToSocial, you can cache the compiled modules between restarts so that GoToSocial doesn't have to compile them on every startup from scratch.
|
||||
|
||||
If you'd like to do this in your Docker container, first create a `.cache` directory in your working folder to store the modules:
|
||||
|
||||
```bash
|
||||
mkdir -p ~/gotosocial/.cache
|
||||
```
|
||||
|
||||
Then, uncomment the second volume in the docker-compose.yaml file by removing the leading `#` symbol, so that instead of
|
||||
|
||||
```yaml
|
||||
#- ~/gotosocial/.cache:/gotosocial/.cache
|
||||
```
|
||||
|
||||
it reads
|
||||
|
||||
```yaml
|
||||
- ~/gotosocial/.cache:/gotosocial/.cache
|
||||
```
|
||||
|
||||
This will instruct Docker to mount the `~/gotosocial/.cache` directory at `/gotosocial/.cache` inside the Docker container.
|
||||
|
||||
## Start GoToSocial
|
||||
|
||||
With those small changes out of the way, you can now start GoToSocial with the following command:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue