|
1
|
|
{
|
|
2
|
|
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PANEL",
|
|
3
|
|
"meta": {
|
|
展开 62 行未改动
|
|
4
|
|
"version": "PTDL_v2",
|
|
5
|
|
"update_url": "https://eggs.pterodactyl.top/eggs/5/download/egg-forgejo.json"
|
|
6
|
|
},
|
|
7
|
|
"exported_at": "2024-06-02T14:40:58+00:00",
|
|
8
|
|
"name": "Forgejo",
|
|
9
|
|
"author": "seaswimmerthefsh@gmail.com",
|
|
10
|
|
"uuid": "5186ceff-ff39-4df8-aa87-d83dbd4b1a68",
|
|
11
|
|
"description": "Forgejo is a community managed lightweight code hosting solution written in Go. It is published under the MIT license, and is a fork of Gitea.",
|
|
12
|
|
"features": null,
|
|
13
|
|
"docker_images": {
|
|
14
|
|
"Debian": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:debian"
|
|
15
|
|
},
|
|
16
|
|
"file_denylist": [
|
|
17
|
|
"forgejo"
|
|
18
|
|
],
|
|
19
|
|
"startup": "./forgejo web -p {{SERVER_PORT}} -c ./app.ini",
|
|
20
|
|
"config": {
|
|
21
|
|
"files": "{\r\n \"custom/app.ini\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"DISABLE_SSH\": \"DISABLE_SSH: {{server.build.env.DISABLE_SSH}}\",\r\n \"SSH_PORT\": \"SSH_PORT: {{server.build.env.SSH_PORT}}\"\r\n }\r\n }\r\n}",
|
|
22
|
|
"startup": "{\r\n \"done\": \"Listen: \"\r\n}",
|
|
23
|
|
"logs": "{}",
|
|
24
|
|
"stop": "^C"
|
|
25
|
|
},
|
|
26
|
|
"scripts": {
|
|
27
|
|
"installation": {
|
|
28
|
|
"script": "## Forgejo Installscript\r\n## Modified version of the Gitea installscript, see https://github.com/parkervcp/eggs/blob/master/software/gitea/egg-gitea.json\r\n\r\n## update system\r\napt update\r\napt -y install --no-install-recommends jq curl ca-certificates dnsutils\r\n\r\n## Variables\r\nARCH=$([[ \"$(uname -m)\" == \"x86_64\" ]] && echo \"amd64\" || echo \"arm64\")\r\nLATEST=$(dig +short release.forgejo.org TXT | grep -oE '([0-9]+\\.){2}[0-9]+(-[a-zA-Z0-9]+)*')\r\n\r\n\r\ncd /mnt/server\r\n\r\n## install forgejo\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n echo -e \"Downloading Forgejo $LATEST (latest)\"\r\n URL=https://codeberg.org/forgejo/forgejo/releases/download/v${LATEST}/forgejo-${LATEST}-linux-${ARCH}\r\nelse\r\n echo -e \"Downloading Forgejo $VERSION\"\r\n URL=https://codeberg.org/forgejo/forgejo/releases/download/v${VERSION}/forgejo-${VERSION}-linux-${ARCH}\r\nfi\r\n\r\necho -e \"Download URL: $URL\"\r\n\r\ncurl -sSL -o forgejo $URL\r\n\r\nchmod +x forgejo\r\n\r\nmkdir -p custom\r\n\r\nif [ -f \"/mnt/server/custom/app.ini\" ]; then\r\n echo \"Config file exists\"\r\nelse\r\n echo \"[server]\r\n LOCAL_ROOT_URL = http://${SERVER_IP}:${SERVER_PORT}/\r\n DOMAIN = ${SERVER_IP}\r\n HTTP_PORT = ${SERVER_PORT}\r\n ROOT_URL = http://${SERVER_IP}:${SERVER_PORT}/\r\n DISABLE_SSH = ${DISABLE_SSH}\r\n SSH_PORT = ${SSH_PORT}\" > /mnt/server/custom/app.ini\r\nfi\r\n\r\necho -e \"-------------------------------------------------\"\r\necho -e \"Installation completed\"\r\necho -e \"-------------------------------------------------\"",
|
|
29
|
|
"container": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:debian",
|
|
30
|
|
"entrypoint": "bash"
|
|
31
|
|
}
|
|
32
|
|
},
|
|
33
|
|
"variables": [
|
|
34
|
|
{
|
|
35
|
|
"name": "Disable SSH",
|
|
36
|
|
"description": "Disable the SSH feature when it’s not available.",
|
|
37
|
|
"env_variable": "DISABLE_SSH",
|
|
38
|
|
"default_value": "false",
|
|
39
|
|
"user_viewable": true,
|
|
40
|
|
"user_editable": false,
|
|
41
|
|
"rules": "required|string|in:true,false",
|
|
42
|
|
"sort": null,
|
|
43
|
|
"field_type": "text"
|
|
44
|
|
},
|
|
45
|
|
{
|
|
46
|
|
"name": "SSH Port",
|
|
47
|
|
"description": "SSH port displayed in clone URL.",
|
|
48
|
|
"env_variable": "SSH_PORT",
|
|
49
|
|
"default_value": "2020",
|
|
50
|
|
"user_viewable": true,
|
|
51
|
|
"user_editable": false,
|
|
52
|
|
"rules": "required|integer|between:1024,65535",
|
|
53
|
|
"sort": null,
|
|
54
|
|
"field_type": "text"
|
|
55
|
|
},
|
|
56
|
|
{
|
|
57
|
|
"name": "Version",
|
|
58
|
|
"description": "Use either `latest` or a specific version, such as `1.21.7-0`.",
|
|
59
|
|
"env_variable": "VERSION",
|
|
60
|
|
"default_value": "latest",
|
|
61
|
|
"user_viewable": true,
|
|
62
|
|
"user_editable": true,
|
|
63
|
|
"rules": "required|string|max:15",
|
|
64
|
|
"sort": null,
|
|
65
|
|
"field_type": "text"
|
|
66
|
|
}
|
|
67
|
|
]
|
|
68
|
|
}
|