- Move entrypoint.sh from build/scripts/ to shared/ (no longer baked into image) - Add entrypoint directive to docker-compose.json pointing to /shared/entrypoint.sh - Update entrypoint.sh to reference /shared/startup-vnc.sh instead of /opt/scripts/ - Bump tipi_version to 7 All scripts are now dynamically controlled via volume mounts from the shared/ directory. The Docker image is a clean base with only packages installed. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
76 lines
1.7 KiB
JSON
Executable File
76 lines
1.7 KiB
JSON
Executable File
{
|
|
"schemaVersion": 2,
|
|
"services": [
|
|
{
|
|
"name": "cistech-tunnel",
|
|
"image": "git.alexzaw.dev/alexz/openconnect-vpn:latest",
|
|
"entrypoint": "/shared/entrypoint.sh",
|
|
"environment": [
|
|
{
|
|
"key": "VPN_EMAIL",
|
|
"value": "${VPN_EMAIL}"
|
|
},
|
|
{
|
|
"key": "VPN_PASSWORD",
|
|
"value": "${VPN_PASSWORD}"
|
|
},
|
|
{
|
|
"key": "VPN_TOTP_SECRET",
|
|
"value": "${VPN_TOTP_SECRET}"
|
|
},
|
|
{
|
|
"key": "VPN_HOST",
|
|
"value": "${VPN_HOST}"
|
|
},
|
|
{
|
|
"key": "VNC_PASSWORD",
|
|
"value": "${VNC_PASSWORD}"
|
|
},
|
|
{
|
|
"key": "TZ",
|
|
"value": "${TZ}"
|
|
},
|
|
{
|
|
"key": "TARGET_IP",
|
|
"value": "${TARGET_IP}"
|
|
}
|
|
],
|
|
"internalPort": 6092,
|
|
"volumes": [
|
|
{
|
|
"hostPath": "${APP_DATA_DIR}/config",
|
|
"containerPath": "/config",
|
|
"readOnly": false
|
|
},
|
|
{
|
|
"hostPath": "${APP_DATA_DIR}",
|
|
"containerPath": "/runtime",
|
|
"readOnly": false
|
|
},
|
|
{
|
|
"hostPath": "/etc/runtipi/repos/runtipi/apps/cistech-tunnel/shared",
|
|
"containerPath": "/shared",
|
|
"readOnly": false
|
|
},
|
|
{
|
|
"hostPath": "/etc/runtipi/repos/runtipi/apps/cistech-tunnel/shared/xstartup",
|
|
"containerPath": "/root/.vnc/xstartup",
|
|
"readOnly": true
|
|
}
|
|
],
|
|
"stopGracePeriod": "30s",
|
|
"devices": [
|
|
"/dev/net/tun"
|
|
],
|
|
"privileged": true,
|
|
"capAdd": [
|
|
"NET_ADMIN"
|
|
],
|
|
"isMain": true,
|
|
"extraLabels": {
|
|
"runtipi.managed": true
|
|
}
|
|
}
|
|
]
|
|
}
|