commit a3887805f0dd48a593ecbbb30403b66f790cf580 Author: Beda Schmid Date: Mon Aug 17 17:26:02 2026 +0000 Reset history to current sanitized state diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9b0a104 --- /dev/null +++ b/.gitignore @@ -0,0 +1,27 @@ +# ---> VisualStudioCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +!.vscode/*.code-snippets + +# Local History for Visual Studio Code +.history/ + +# Built Visual Studio Code Extensions +*.vsix + +.env +data/ + +# BEGIN reset-history environment exclusions +.env +.env.* +*.env +*.env.* +!.env.example +!.env.*.example +!*.env.example +!*.env.*.example +# END reset-history environment exclusions diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..efb9808 --- /dev/null +++ b/LICENSE @@ -0,0 +1,24 @@ +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or +distribute this software, either in source code form or as a compiled +binary, for any purpose, commercial or non-commercial, and by any +means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to diff --git a/README.md b/README.md new file mode 100644 index 0000000..4f76e5f --- /dev/null +++ b/README.md @@ -0,0 +1,25 @@ +# ConvertX + +ConvertX is a self-hosted web application for converting files between more than a thousand supported formats. + +## Deployment layout + +- **Compose:** `/srv/docker/convertx/docker-compose.yml` +- **Static configuration/source:** no additional mounted configuration or local build source +- **Non-secret environment:** no non-secret values are declared in Compose; image defaults apply, including automatic +cleanup of old conversion files +- **Secrets:** `/srv/docker/secrets/convertx/.env` +- **NVMe application state:** `/srv/appdata/convertx/data` +- **Bulk HDD data:** none +- **Other mounts:** none + +Secrets are never committed to this repository. The central secret environment supplies the recommended `JWT_SECRET` +variable to the ConvertX service. + +## Dependencies and recovery + +- **Networks/dependencies:** ConvertX uses the external `npm_proxy` network at `192.168.98.18`; no Compose service +dependency is declared +- **Back up:** `/srv/appdata/convertx/data` and the separately protected ConvertX secret environment +- **Re-creatable:** the ConvertX container and transient uploaded or converted job files; the account database and +retained conversion history are not re-creatable diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..c3ce2aa --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,16 @@ +services: + convertx: + image: ghcr.io/c4illin/convertx + container_name: convertx + restart: unless-stopped + env_file: + - /srv/docker/secrets/convertx/.env + volumes: + - /srv/appdata/convertx/data:/app/data + networks: + npm_proxy: + ipv4_address: 192.168.98.18 + +networks: + npm_proxy: + external: true