基於Laravel-websocket 的 laravel-ssh-client

jcc123發表於2022-03-01

基於Laravel-websocket 的 laravel-ssh-client

快速開始

git clone https://gitee.com/wpjscc/laravel-ssh-client
composer install
cp .env.example .env
php artisan serve --port=8088
php artisan websocket:serve

或者

docker run -it -p 8088:8000 -p 6001:6001 wpjscc/laravel-ssh-client

訪問

127.0.0.1:8088

開發

npm install
npm run dev

其他

參考的: github.com/roke22/Laravel-ssh-clie...

Laravel-ssh-client 有兩個小瑕疵

該專案做了幾點最佳化

  • 使用 github.com/phpseclib/phpseclib 這個庫,建立 ssh 連結
  • 整合在 laravel-websocket 內
  • 支援密碼和 ssh-key 登入

如果你想自定義打包docker映象

docker login
docker build -t yourusername/laravel-ssh-client -f docker/Dockerfile
docker push yourusername/laravel-ssh-client

如果你想自定義打包私有映象,比如阿里雲,個人可以免費300個私有映象

docker login yourdomain.com
docker build -t yourdomain.com/yourusername/laravel-ssh-client -f docker/Dockerfile
docker push -t yourdomain.com/yourusername/laravel-ssh-client

你可能發現了只是加了個域名字首

如果你想自定義php映象,比如在docker/Dockerfile中的wpjscc/php:7.4.7-fpm-alpine 想換成自己的,可以看這個倉庫
gitee docker-php
github docker-php

注意

  • 連線成功後會隱藏登入框,請確定密碼和ssh key 是否正確
  • 使用docker時,注意是執行在docker容器中的,其他內網ip容器訪問不到,可以用外網ip或宿主主機ip除錯
    • mac 可以用 docker.for.mac.host.internal 做為宿主主機IP
    • linux 找到 ifconfig | grep docker 獲取ip

效果預覽

login.png

iterm.png

iterm-share.png

top.png

本作品採用《CC 協議》,轉載必須註明作者和本文連結
NOT IS BECAUSE I WANT TO WRITE, BUT I WANT TO INCREASE, SO I GO TO WRITE~~

相關文章