Skip to content

Latest commit

 

History

History
370 lines (306 loc) · 18.1 KB

v0.8.3.md

File metadata and controls

370 lines (306 loc) · 18.1 KB
layout
default

Cloud Commander 0.8.3

###[Главная][MainURL] [Блог][BlogURL] Демо(![IO][IO_LIVE_IMG] [IO][IOURL], ![JitSu][JitSu_LIVE_IMG] [JitSu][JitSuURL], ![Heroku][Heroku_LIVE_IMG] [Heroku][HerokuURL]) [NPM_INFO_IMG]: https://nodei.co/npm/cloudcmd.png?downloads=true&&stars "npm install cloudcmd" [MainURL]: http://cloudcmd.io "Главная" [BlogURL]: http://blog.cloudcmd.io "Блог" [IOURL]: http://io.cloudcmd.io "IO" [JitSuURL]: http://cloudcmd.jit.su "JitSu" [HerokuURL]: http://cloudcmd.herokuapp.com/ "Heroku" [IO_LIVE_IMG]: https://status-ok.cloudcmd.io/host/io.cloudcmd.io/img/txt.png "IO" [JitSu_LIVE_IMG]: https://status-ok.cloudcmd.io/host/cloudcmd.jit.su/img/txt.png "JitSu" [HEROKU_LIVE_IMG]: https://status-ok.cloudcmd.io/host/cloudcmd.herokuapp.com/img/txt.png "Heroku"

Cloud Commander - двухпанельный веб файл менеджер с консолью и редактором. Поможет вам управлять сервером и работать с файлами, папками и програмами в браузере на любом компьютере, смартфоне или планшете.

Cloud Commander

Преимущества

  • Открытый код (MIT License).
  • Две классические панели.
  • Возможность авторизации.
  • Клиент работает в веб браузере.
  • Сервер работает под Windows, Linux и Mac OS.
  • Может использоваться локально или удаленно.
  • Адаптируется под размер экрана.
  • Редактор с поддержкой подсветки синтаксиса для более чем 110 языков.
  • Косоль с поддержкой стандартной командной строки ОС.
  • Написан на JavaScript/Node.js.

Установка

Установить Cloud Commander проще простого.

  • установить node.js.
  • установить cloudcmd при помощи npm простой командой.

![NPM_INFO][NPM_INFO_IMG]

Запуск

Что бы запустить Cloud Commander нужна всего одна команда:

node cloudcmd

для windows:

cloudcmd

После чего , Cloud Commander считает информацию с порта з файла настроек config.json и запустит сервер на этом порту ( 8000, по умолчанию ), если сменных портов не существует( cloud9, cloudfoundry и nodester ). Тогда просто наберите в браузере:

http://127.0.0.1:8000

Гарячие клавиши

Key Operation
F1 помощь
F2 переименовать
F3 просмотр
F4 редактировать
F5 копировать
F6 переименовать/переместить
F7 новая папка
Shift + F7 новый файл
F8, Delete удалить текущий файл
Shift + Delete удалить без запроса о подтверждении
F9 меню
F10 настройки
(*) виделить/снять выделение со всех файлов
(+) расширить выделение
(-) сузить выделение
Ctrl + r обновить
Ctrl + d очистить локальное хранилище
Alt + q отключить привязку клавиш
Alt + s вернуть все привязки клавиш
Ctrl + A выбрать(выделить) все файлы на панели
up, down, enter перемещение по файловой системе
Ctrl + \ перейти в корневую папку
Tab переключение между панелями
Page Up вверх на одну страницу
Page Down вниз на одну страницу
Home в начало списка
End в конец списка
Space выделить текущий файл (и получить размер папки)
Insert выделить текущий файл (и перейти к следующему)
Shift + F10 контекстное меню
~ консоль
Ctrl + Click открыть файл в новой вкладке

Редактор

Демо Edit

###Гарячие клавиши

  • F4 - открыть
  • Ctrl + s - сохранить
  • Esc - закрыть

Подробнее Гарячие клавиши Ace.

Консоль

Демо Консоль

###Гарячие клавиши

  • ~ - открыть
  • Esc - закрыть

Настройки

Демо Настройки

###Гарячие клавиши

  • F10 - открыть
  • Esc - закрыть

Меню

Демо Menu Щелчок правой кнопкой мыши вызывает контекстное меню с такими пунктами:

  • Просмотр
  • Правка
  • Переименовать
  • Удалить
  • Выгрузить в (Dropbox, Github, GDrive)
  • Загрузить
  • Новый (Файл, Папка, с облака)

###Гарячие клавиши

  • F9 - открыть
  • Esc - закрыть

Настройки

Все основные настройки, можна осуществлять в config.json.

{
    "auth"              : false,            /* разрешить http авторизацию                                      */
    "username"          : "root",           /* имя пользователя для авторизации                                */
    "password"          : "toor",           /* пароль хеш в sha-1 для авторизации                              */
    "api_url"           :"/api/v1",
    "appCache"          : false,            /* кешировать файлы для оффлайн использования                      */
    "analytics"         : true,             /* поддержка google analytics                                      */
    "diff"              : false,            /* при сохранении - отсылает патч, а не весь файл                  */
    "notifications"     : false,            /* показувати сповіщення, коли вкладка не активна                  */
    "localStorage"      : true,             /* кеширование содержимого папки                                   */
    "minify"            : true,             /* минификация js,css,html и изображений                           */
    "cache"             : true,             /* кеширование                                                     */
    "online"            : true,             /* загрузить файлы js с cdn или Local path                         */
    "logs"              : false,            /* выводить в логи или в консоль                                   */
    "showKeysPanel"     : true,             /* показать классическую панель с кнопками функциональных клавишь  */
    "server"            : true,             /* режим сервера или тестирования                                  */
    "socket"            : true              /* включить web сокеты                                             */
    "port"              : 8000,             /* http порт                                                       */
    "sslPort"           : 443,              /* https порт                                                      */
    "ip"                : null,             /* ip или null(по умолчанию)                                       */
    "ssl"               : false             /* использовать https?                                             */
    "rest"              : true              /* включить остальной интерфейс                                    */
}

Если вы изменили config и хотите продолжать обновляться при помощи git, Вам нужно применить следующую команду в корневой директории Cloud Commander:

git update-index --assume-unchanged json/config.json

Что бы вернуться к отслеживанию:

git update-index --no-assume-unchanged json/config.json

Сервер

Обычно процессы, запущенные правами не root не могут обращаться к портам ниже чем 1024. В любом случае, Я советую Вам запускать Cloud Commander не под root. Как это сделать? Существует несколько простых и быстрых вариантов. Один из них - перенаправление портов через iptables.

###Iptables Просто запустите shell/addtables.sh для стандартных опций.

# iptables -t nat -L # look rules before
# iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8000
# iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 4430
# iptables -t nat -L # look reles after

Вы должны увидеть что-то вроде ( 8000 и 4430 должно быть в config как port и sslPort )

target     prot opt source               destination
REDIRECT   tcp  --  anywhere             anywhere             tcp dpt:http redir ports 8000
REDIRECT   tcp  --  anywhere             anywhere             tcp dpt:https redir ports 4430

Если захотите всё вернуть, просто очистите правила ( 1 и 2 это номера правил, в вашому случае они могут отличаться).

# iptables -t nat -D PREROUTING 1
# iptables -t nat -D PREROUTING 2

###nginx Возьмите nginx. В linux это можна сделать так:

sudo apt-get install nginx #for ubuntu and debian

И сделайте хост файл /etc/nginx/sites-enabled/io.cloudcmd.io ( io.cloudcmd.io ваше доменное імя) с содержимым:

server {
    listen 80;
    client_max_body_size 100m;
    server_name io.cloudcmd.io;
    access_log /var/log/nginx/io.cloudcmd.io.access.log;
    location / {
        proxy_pass    http://127.0.0.1:8000/;
    }
}

Если вы хотите включить ssl, добавьте несколько строчек в раздел сервера:

server {
    listen 443;
    client_max_body_size 100m;
    ssl                  on;
    ssl_certificate      /home/coderaiser/cloudcmd/ssl/ssl.crt;
    ssl_certificate_key  /home/coderaiser/cloudcmd/ssl/ssl.key;
    server_name io.cloudcmd.io;
    access_log /var/log/nginx/io.cloudcmd.io.access.log;
    location / {
        proxy_pass    http://127.0.0.1:8000/;
    }
}

Если Вам нужно перенаправление с http на https, просто сделайте так:

server {
    listen 80;
    server_name admin.cloudcmd.io;
    rewrite ^ https://io.cloudcmd.io$request_uri? permanent; #301 redirect
    access_log /var/log/nginx/io.cloudcmd.io.access.log;
}
# create symlink of this file
ln -s ./sites-enabled/io.cloudcmd.io ./sites-available
# restart nginx
/etc/init.d/nginx restart

Для запуска Cloud Commander под daemon в linux установите log в true в config-файлe и введите:

nohup node cloudcmd

Обновление

Cloud Commander обновляется часто. Обновление происходит автоматически, так же это можно сделать в ручную, вводя несколько команд в папке cloudcmd:

git pull

или проверить доступность новой версии в npm

npm info cloudcmd

и затем, если новая версия доступна

npm r cloudcmd
npm i cloudcmd

Список дополнительных модулей

Для расширения функционала файлового менеджера использованы следующие модули:

Присоединиться к проекту

Если вы желаете присоединиться к проекту - направьте pull запрос в dev ветку. Получение dev версии Cloud Commander:

git clone git://github.com/coderaiser/cloudcmd.git
git checkout dev

Возможно Вам понадобится dev версия Minify, в таком случае наберите следующие команды:

cd node_modules
rm -rf minify
git clone git://github.com/coderaiser/minify
git checkout dev

История версий

Особая благодарность: