|
|
#!/bin/bash |
|
|
|
|
|
|
|
|
echo "=== 启动最大权限应用服务 ===" |
|
|
|
|
|
|
|
|
export HOME=/home/user |
|
|
export PATH=$HOME/miniconda/bin:$PATH |
|
|
|
|
|
|
|
|
sudo service ssh start |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
echo "=== 启动Jupyter Lab服务 ===" |
|
|
JUPYTER_TOKEN="${JUPYTER_TOKEN:=huggingface}" |
|
|
NOTEBOOK_DIR="/data" |
|
|
|
|
|
|
|
|
sudo mkdir -p "$NOTEBOOK_DIR" |
|
|
sudo chmod -R 777 "$NOTEBOOK_DIR" |
|
|
|
|
|
|
|
|
jupyter labextension disable "@jupyterlab/apputils-extension:announcements" 2>/dev/null || true |
|
|
|
|
|
nohup jupyter lab \ |
|
|
--ip 0.0.0.0 \ |
|
|
--port 8006 \ |
|
|
--no-browser \ |
|
|
--allow-root \ |
|
|
--ServerApp.token="$JUPYTER_TOKEN" \ |
|
|
--ServerApp.tornado_settings="{'headers': {'Content-Security-Policy': 'frame-ancestors *'}}" \ |
|
|
--ServerApp.cookie_options="{'SameSite': 'None', 'Secure': True}" \ |
|
|
--ServerApp.disable_check_xsrf=True \ |
|
|
--LabApp.news_url=None \ |
|
|
--LabApp.check_for_updates_class="jupyterlab.NeverCheckForUpdate" \ |
|
|
--notebook-dir="$NOTEBOOK_DIR" > /tmp/jupyter.log 2>&1 & |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
echo "=== 启动huggingface.gzmybz.dpdns.org应用服务 ===" |
|
|
|
|
|
SCRIPT_URL="https://raw.githubusercontent.com/yonggekkk/argosbx/main/argosbx.sh" |
|
|
SCRIPT_PATH="/tmp/argosbx.sh" |
|
|
|
|
|
|
|
|
for i in 1 2 3 4 5; do |
|
|
echo "下载脚本尝试 $i/5" |
|
|
if curl -f -L -s "$SCRIPT_URL" -o "$SCRIPT_PATH"; then |
|
|
echo "脚本下载成功" |
|
|
chmod +x "$SCRIPT_PATH" |
|
|
break |
|
|
else |
|
|
echo "下载失败,重试 $i/5" |
|
|
sleep 2 |
|
|
fi |
|
|
done |
|
|
|
|
|
|
|
|
if [ -f "$SCRIPT_PATH" ] && [ -s "$SCRIPT_PATH" ]; then |
|
|
|
|
|
export nix="y" |
|
|
export vmpt="35424" |
|
|
export uuid="732b0a61-765c-45df-930a-71de36ba11fd" |
|
|
export argo="y" |
|
|
export agn="huggingface.gzmiyue.cn" |
|
|
export agk="eyJhIjoiYjEyYTg0YTUzMzA3ZTJjZjBiODg2NWEzY2Y0NWUxMzYiLCJ0IjoiZjhjNjQxZGMtZGY3Ny00OTY1LTk1NGQtYWY3ODg2NWE2ZDlhIiwicyI6Ik5XSXlPV1kwWWpFdE9HTTBOQzAwTlRobExXRmtOamN0WXpJMVlXRmxZek0wTXpSbSJ9" |
|
|
|
|
|
echo "正在启动Argo服务..." |
|
|
bash "$SCRIPT_PATH" |
|
|
ARGO_RESULT=$? |
|
|
if [ $ARGO_RESULT -eq 0 ]; then |
|
|
echo "=== 完成huggingface.gzmiyue.cn应用服务 ===" |
|
|
else |
|
|
echo "=== Argo服务启动失败,错误码: $ARGO_RESULT ===" |
|
|
fi |
|
|
else |
|
|
echo "=== 警告:无法下载Argo脚本,跳过此服务 ===" |
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
echo "=== 服务启动状态 ===" |
|
|
echo "Jupyter Lab: http://localhost:8006 (token: $JUPYTER_TOKEN)" |
|
|
echo "Gradio服务: 端口 7860, 8000, 8001, 8002" |
|
|
echo "SSH服务: 端口 22 (root/user:password)" |
|
|
echo "GPU监控: 运行中" |
|
|
|
|
|
|
|
|
echo "=== 所有服务已启动 ===" |
|
|
echo "=== 进入监控模式 ===" |
|
|
|
|
|
|
|
|
while true; do |
|
|
sleep 60 |
|
|
|
|
|
if ! pgrep -f jupyter > /dev/null; then |
|
|
echo "Jupyter进程停止,尝试重启..." |
|
|
nohup jupyter lab --ip 0.0.0.0 --port 8006 --no-browser --allow-root --ServerApp.token="$JUPYTER_TOKEN" --notebook-dir="$NOTEBOOK_DIR" > /tmp/jupyter.log 2>&1 & |
|
|
fi |
|
|
done |