sft0farid commited on
Commit
30bc526
·
verified ·
1 Parent(s): e81d27a

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +31 -18
Dockerfile CHANGED
@@ -95,24 +95,37 @@ RUN echo '[supervisord]'
95
  && echo 'stderr_logfile=/dev/stderr' >> /data/supervisor/conf.d/supervisord.conf \
96
  && echo 'stderr_logfile_maxbytes=0' >> /data/supervisor/conf.d/supervisord.conf
97
 
98
- RUN echo '#!/bin/bash' > /app/start_zrok.sh \
99
- && echo 'echo "ZROK_TOKEN=${ZROK_TOKEN:+SET}"' >> /app/start_zrok.sh \
100
- && echo 'echo "ZROK_ZITI_IDENTITY=${ZROK_ZITI_IDENTITY:+SET}"' >> /app/start_zrok.sh \
101
- && echo 'echo "ZROK_SHARE_NAME=${ZROK_SHARE_NAME:+SET}"' >> /app/start_zrok.sh \
102
- && echo 'echo "ZROK_IDENTITY_B64=${ZROK_IDENTITY_B64:+SET}"' >> /app/start_zrok.sh \
103
- && echo 'if [ -z "$ZROK_TOKEN" ] || [ -z "$ZROK_SHARE_NAME" ] || [ -z "$ZROK_ZITI_IDENTITY" ] || [ -z "$ZROK_IDENTITY_B64" ]; then' >> /app/start_zrok.sh \
104
- && echo ' echo "Required ZROK vars not set, skipping zrok"' >> /app/start_zrok.sh \
105
- && echo ' sleep infinity' >> /app/start_zrok.sh \
106
- && echo ' exit 0' >> /app/start_zrok.sh \
107
- && echo 'fi' >> /app/start_zrok.sh \
108
- && echo 'export HOME=/data/zrok-home' >> /app/start_zrok.sh \
109
- && echo 'mkdir -p "$HOME/.zrok/identities"' >> /app/start_zrok.sh \
110
- && echo 'ZROK_API="${ZROK_API_ENDPOINT:-https://api-v1.zrok.io}"' >> /app/start_zrok.sh \
111
- && echo 'printf "{\"zrok_token\":\"%s\",\"ziti_identity\":\"%s\",\"api_endpoint\":\"%s\"}\n" "$ZROK_TOKEN" "$ZROK_ZITI_IDENTITY" "$ZROK_API" > "$HOME/.zrok/environment.json"' >> /app/start_zrok.sh \
112
- && echo 'echo "$ZROK_IDENTITY_B64" | base64 -d > "$HOME/.zrok/identities/environment.json"' >> /app/start_zrok.sh \
113
- && echo 'printf "{\"v\":\"v0.4\"}" > "$HOME/.zrok/metadata.json"' >> /app/start_zrok.sh \
114
- && echo 'echo "Starting zrok share reserved: $ZROK_SHARE_NAME"' >> /app/start_zrok.sh \
115
- && echo 'exec zrok share reserved "$ZROK_SHARE_NAME" --headless' >> /app/start_zrok.sh \
 
 
 
 
 
 
 
 
 
 
 
 
 
116
  && chmod +x /app/start_zrok.sh
117
 
118
  # 8. Entrypoint
 
95
  && echo 'stderr_logfile=/dev/stderr' >> /data/supervisor/conf.d/supervisord.conf \
96
  && echo 'stderr_logfile_maxbytes=0' >> /data/supervisor/conf.d/supervisord.conf
97
 
98
+ RUN echo '#!/bin/bash' > /app/start_zrok.sh \
99
+ && echo 'if [ -z "$ZROK_TOKEN" ]; then' >> /app/start_zrok.sh \
100
+ && echo ' echo "ZROK_TOKEN not set, skipping zrok"' >> /app/start_zrok.sh \
101
+ && echo ' sleep infinity' >> /app/start_zrok.sh \
102
+ && echo ' exit 0' >> /app/start_zrok.sh \
103
+ && echo 'fi' >> /app/start_zrok.sh \
104
+ && echo 'export HOME=/data/zrok-home' >> /app/start_zrok.sh \
105
+ && echo 'mkdir -p "$HOME"' >> /app/start_zrok.sh \
106
+ && echo 'ZROK_API="${ZROK_API_ENDPOINT:-https://api-v1.zrok.io}"' >> /app/start_zrok.sh \
107
+ && echo 'zrok config set apiEndpoint "$ZROK_API"' >> /app/start_zrok.sh \
108
+ && echo 'if [ ! -f "$HOME/.zrok/environment.json" ]; then' >> /app/start_zrok.sh \
109
+ && echo ' echo "Enabling zrok..."' >> /app/start_zrok.sh \
110
+ && echo ' zrok enable "$ZROK_TOKEN" --headless' >> /app/start_zrok.sh \
111
+ && echo ' if [ $? -ne 0 ]; then echo "zrok enable failed"; sleep infinity; exit 1; fi' >> /app/start_zrok.sh \
112
+ && echo 'fi' >> /app/start_zrok.sh \
113
+ && echo 'SHARE_FILE="$HOME/.zrok/reserved_share"' >> /app/start_zrok.sh \
114
+ && echo 'if [ -n "$ZROK_SHARE_NAME" ]; then' >> /app/start_zrok.sh \
115
+ && echo ' SHARE_TOKEN="$ZROK_SHARE_NAME"' >> /app/start_zrok.sh \
116
+ && echo 'elif [ -f "$SHARE_FILE" ]; then' >> /app/start_zrok.sh \
117
+ && echo ' SHARE_TOKEN=$(cat "$SHARE_FILE")' >> /app/start_zrok.sh \
118
+ && echo ' echo "Using existing reserved share: $SHARE_TOKEN"' >> /app/start_zrok.sh \
119
+ && echo 'else' >> /app/start_zrok.sh \
120
+ && echo ' echo "Creating new reserved share..."' >> /app/start_zrok.sh \
121
+ && echo ' SHARE_TOKEN=$(zrok reserve public http://localhost:7860 2>&1 | grep "token is" | awk "{print \$NF}" | tr -d "'"'"'")' >> /app/start_zrok.sh \
122
+ && echo ' if [ -z "$SHARE_TOKEN" ]; then echo "Failed to create reserved share"; sleep infinity; exit 1; fi' >> /app/start_zrok.sh \
123
+ && echo ' echo "$SHARE_TOKEN" > "$SHARE_FILE"' >> /app/start_zrok.sh \
124
+ && echo ' echo "Reserved share created: $SHARE_TOKEN"' >> /app/start_zrok.sh \
125
+ && echo ' echo "URL: https://${SHARE_TOKEN}.share.zrok.io"' >> /app/start_zrok.sh \
126
+ && echo 'fi' >> /app/start_zrok.sh \
127
+ && echo 'echo "Starting zrok share reserved: $SHARE_TOKEN"' >> /app/start_zrok.sh \
128
+ && echo 'exec zrok share reserved "$SHARE_TOKEN" --headless' >> /app/start_zrok.sh \
129
  && chmod +x /app/start_zrok.sh
130
 
131
  # 8. Entrypoint