-
Notifications
You must be signed in to change notification settings - Fork 16
Expand file tree
/
Copy pathegg-ocap2-web.json
More file actions
137 lines (137 loc) · 5.48 KB
/
egg-ocap2-web.json
File metadata and controls
137 lines (137 loc) · 5.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
{
"meta": {
"version": "PLCN_v3",
"update_url": null
},
"exported_at": "2026-02-17T00:00:00+00:00",
"name": "OCAP2 Web",
"author": "ocap2@github.com",
"uuid": "b3f5a8e2-7c41-4d6f-9e1a-2f8b0c3d4e5f",
"description": "OCAP2 Web Server — archives and replays Arma 3 military simulation missions on interactive Leaflet maps. Provides a web interface for browsing operations, streaming playback, and mission upload via API.",
"image": "ghcr.io/ocap2/web:full",
"tags": [],
"features": null,
"docker_images": {
"Full (with map tools)": "ghcr.io/ocap2/web:full",
"Slim": "ghcr.io/ocap2/web:latest"
},
"file_denylist": [],
"startup_commands": {
"Default": "/usr/local/ocap/app"
},
"config": {
"files": "{}",
"startup": "{\"done\":\"Server running\"}",
"logs": "{}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!/bin/ash\nset -eu\n\n## Create persistent data directories\nmkdir -p /mnt/server/data /mnt/server/db /mnt/server/maps\n\n## Fix ownership so the container user (UID 999) can write to them.\n## See https://github.com/pelican-dev/panel/issues/2098\nchown -R 999:999 /mnt/server\n\necho \"Installation complete\"",
"container": "alpine:3.23",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "OCAP Secret",
"description": "Shared secret for mission uploads and streaming authentication. Must be changed from the default.",
"env_variable": "OCAP_SECRET",
"default_value": "change-me",
"user_viewable": true,
"user_editable": true,
"rules": ["required", "string", "min:6"],
"sort": 1
},
{
"name": "Listen Address",
"description": "Address and port the server binds to. Uses the Pelican-allocated port by default.",
"env_variable": "OCAP_LISTEN",
"default_value": "0.0.0.0:5000",
"user_viewable": true,
"user_editable": false,
"rules": ["required", "string"],
"sort": 2
},
{
"name": "Database Path",
"description": "Path to the SQLite database file.",
"env_variable": "OCAP_DB",
"default_value": "/home/container/db/data.db",
"user_viewable": true,
"user_editable": false,
"rules": ["required", "string"],
"sort": 3
},
{
"name": "Data Directory",
"description": "Directory for mission data files (uploads and converted protobuf).",
"env_variable": "OCAP_DATA",
"default_value": "/home/container/data",
"user_viewable": true,
"user_editable": false,
"rules": ["required", "string"],
"sort": 4
},
{
"name": "Maps Directory",
"description": "Directory for map tile files (PMTiles).",
"env_variable": "OCAP_MAPS",
"default_value": "/home/container/maps",
"user_viewable": true,
"user_editable": false,
"rules": ["required", "string"],
"sort": 5
},
{
"name": "Enable Conversion",
"description": "Enable background conversion of JSON missions to chunked protobuf format for faster streaming playback.",
"env_variable": "OCAP_CONVERSION_ENABLED",
"default_value": "true",
"user_viewable": true,
"user_editable": true,
"rules": ["required", "string", "in:true,false"],
"sort": 6
},
{
"name": "Enable Streaming",
"description": "Enable the WebSocket streaming endpoint for live mission data ingestion from Arma 3.",
"env_variable": "OCAP_STREAMING_ENABLED",
"default_value": "false",
"user_viewable": true,
"user_editable": true,
"rules": ["required", "string", "in:true,false"],
"sort": 7
},
{
"name": "Allowed Steam IDs",
"description": "Comma-separated list of Steam64 IDs authorized for admin login via Steam OpenID. Leave empty to disable Steam admin login.",
"env_variable": "OCAP_AUTH_ADMINSTEAMIDS",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": ["nullable", "string"],
"sort": 8
},
{
"name": "Steam API Key",
"description": "Steam Web API key for fetching player display names and avatars. Get one at https://steamcommunity.com/dev/apikey. Optional — without it, the admin badge shows the Steam ID instead of a name.",
"env_variable": "OCAP_AUTH_STEAMAPIKEY",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": ["nullable", "string"],
"sort": 9
},
{
"name": "CSS Overrides",
"description": "JSON object of CSS variable overrides for UI theming. Example: {\"--accent-primary\":\"#fcb00d\",\"--bg-dark\":\"#1a2a1a\",\"--text-on-accent\":\"#1a2a1a\"}",
"env_variable": "OCAP_CUSTOMIZE_CSSOVERRIDES",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": ["nullable", "string"],
"sort": 10
}
]
}