···11+name: media-server-stack
22+runtime:
33+ name: nodejs
44+ options:
55+ nodeargs: "--loader ts-node/esm --no-warnings --experimental-specifier-resolution=node"
66+ typescript: true
77+description: Pulumi definitions for my media server
88+config:
99+ pulumi:tags:
1010+ value:
1111+ pulumi:template: https://www.pulumi.com/ai/api/project/836ba65a-7cc5-4519-930b-2e6ec54cc841.zip
+6-19
README.md
···11-# Media Server Stack
11+# Media Server
2233-My media server is hosted with Docker Swarm. This repo consists of a Docker Compose file written in Jsonnet and compiled to JSON (works with any YAML parser because JSON is a subset of YAML).
33+My single node media server. Used to be Docker Swarm (in the jsonnet folder), now just Docker containers orchestrated using Pulumi.
4455-My main server is called Haring (following my device hostname naming scheme of Dutch food).
55+# Setup
6677-Compile and copy to clipboard in WSL:
88-```bash
99-jsonnet haring.jsonnet -o haring.json && win32yank.exe -i < haring.json
1010-```
1111-or under Wayland
1212-```bash
1313-jsonnet haring.jsonnet -o haring.json && wl-copy < haring.json
1414-```
1515-or under Xorg
1616-```bash
1717-jsonnet haring.jsonnet -o haring.json && xclip < haring.json
1818-```
77+First change the required variables in .env, then
1982020-## Setup
219```bash
2222-docker swarm init
2323-docker stack deploy -c portainer-agent-stack.yml portainer
1010+bun install
1111+pulumi up
2412```
2525-then deploy the media server stack by copying the contents of `haring.json` to Portainer.
bun.lockb
This is a binary file and will not be displayed.
haring.json
jsonnet/haring.json
haring.jsonnet
jsonnet/haring.jsonnet
+25
jsonnet/README.md
···11+# Media Server Stack
22+33+My media server is hosted with Docker Swarm. This repo consists of a Docker Compose file written in Jsonnet and compiled to JSON (works with any YAML parser because JSON is a subset of YAML).
44+55+My main server is called Haring (following my device hostname naming scheme of Dutch food).
66+77+Compile and copy to clipboard in WSL:
88+```bash
99+jsonnet haring.jsonnet -o haring.json && win32yank.exe -i < haring.json
1010+```
1111+or under Wayland
1212+```bash
1313+jsonnet haring.jsonnet -o haring.json && wl-copy < haring.json
1414+```
1515+or under Xorg
1616+```bash
1717+jsonnet haring.jsonnet -o haring.json && xclip < haring.json
1818+```
1919+2020+## Setup
2121+```bash
2222+docker swarm init
2323+docker stack deploy -c portainer-agent-stack.yml portainer
2424+```
2525+then deploy the media server stack by copying the contents of `haring.json` to Portainer.