Отложите пиццу: хотя эта культовая выпечка может быть основным продуктом доставки, но это не означает, что она не сталкивается с растущей конкуренцией за вкусные блюда. Здесь мы рассмотрим примеры брендов доставки еды, достойные маркетинговых звезд Мишлен, в том числе инновационную и экологически чистую упаковку, индивидуальный подход к обеду и неупакованные палочки для еды. А теперь…
Первая неделя лета ознаменована XXVI Международной выставкой архитектуры и дизайна АРХ Москва и большим количеством лекций — о коллекционном дизайне, об экоактивизме, о пересечении искусства и моды в XX-XXI веках и об образе художника в XXI веке. 1 июня. Начало: 19:00. Цена: бесплатно О коллекционном дизайне в последнее время говорят много и громко. Что такое…
Получить работу аниматора и укрепить свои навыки не всегда легко. Я помню, как был разочарован, пытаясь понять, как попасть в индустрию. Нужно ли мне поступать в колледж, мне нужен наставник, или это похоже на конкурс, и если я получу стажировку, тогда я буду счастливчиком, которого научат работать в отрасли? Хотя у всех разные случаи, и…
Вы можете загрузить последний стабильный двоичный файл со страницы Releases. Обратите внимание, что выпуск с пометкой Предварительный выпуск создан для целей тестирования, которое может включать нестабильные или критические изменения. Загрузите выпуск с пометкой «Последний выпуск» для стабильной сборки.
(Файлы с именем darwin_amd64 предназначены для пользователей Mac OS X)
Установка Homebrew
Вы также можете установить GoTTY с Homebrew.
$ brew install sorenisanerd / gotty / gotty
получить Установка (разработка)
Если у вас есть языковая среда Go, вы можете установить GoTTY с помощью команды go get . Однако эта команда создает двоичный файл из последней основной ветки, которая может включать нестабильные или критические изменения. GoTTY требует go1.9 или более поздней версии.
$ go get github.com/sorenisanerd/gotty[19459013visible
<div class = "snippet-clipboard-content относительно позиции" data-snippet-clipboard-copy-content = "Использование: gotty [options] []
">
Использование: gotty [options] []
Запустите gotty указав предпочитаемую команду в качестве аргументов (например, gotty top ).
По умолчанию GoTTY запускает веб-сервер на порту 8080. Откройте URL-адрес в своем веб-браузере, и вы увидите выполняющуюся команду, как если бы она выполнялась на вашем терминале.
Параметры
- значение адреса, -значение IP-адреса для прослушивания (по умолчанию: « 0.0.0.0 » ) [ $ GOTTY_ADDRESS ]
--port value, -p value Номер порта для liten (по умолчанию: « 8080 » ) [ $ GOTTY_PORT ]
--path значение, -m значение Базовый путь (по умолчанию: « / » ) [ $ GOTTY_PATH ]
--permit-write, -w Разрешить клиентам писать в TTY (БУДЬТЕ ОСТОРОЖНЫ) (по умолчанию: false) [ $ GOTTY_PERMIT_WRITE ]
--credential value, -c value Credential for Basic Authentication (ex: user: pass, default disabled) [ $ GOTTY_CREDENTIAL ]
--random-url, -r Добавить случайную строку к URL-адресу (по умолчанию: false) [ $ GOTTY_RANDOM_URL ]
--random-url-length значение Случайная длина URL (по умолчанию: 8) [ $ GOTTY_RANDOM_URL_LENGTH ]
--tls, -t Включить TLS / SSL (по умолчанию: false) [ $ GOTTY_TLS ]
--tls-crt значение Путь к файлу сертификата TLS / SSL (по умолчанию: « ~ / .gotty.crt » ) [ $ GOTTY_TLS_CRT ]
--tls-key значение Путь к файлу ключей TLS / SSL (по умолчанию: « ~ / .gotty.key » ) [ $ GOTTY_TLS_KEY ]
--tls-ca-crt значение Файл сертификата TLS / SSL CA для сертификатов клиентов (по умолчанию: " ~ / .gotty.ca.crt " ] ) [ $ GOTTY_TLS_CA_CRT ]
--index значение Пользовательский файл index.html [ $ GOTTY_INDEX ]
--title-format value Формат заголовка окна браузера (по умолчанию: " {{.command}} @ {{.hostname}} " ) [ $ GOTTY_TITLE_FORMAT ]
--reconnect Включить повторное подключение (по умолчанию: false) [ $ GOTTY_RECONNECT ]
--reconnect-time значение Время повторного подключения (по умолчанию: 10) [ $ GOTTY_RECONNECT_TIME ]
--max-connection value Максимальное соединение с gotty (по умолчанию: 0) [ $ GOTTY_MAX_CONNECTION ]
--once Принимать только одного клиента и выходить из при отключении (по умолчанию: false) [ $ GOTTY_ONCE ]
--timeout значение Время ожидания в секундах для ожидания клиента (0 для отключения) (по умолчанию: 0) [ $ GOTTY_TIMEOUT ]
--permit-arguments Разрешить клиентам отправлять команду строковые аргументы в URL (например, http://example.com:8080/?arg=AAA ] & arg = BBB) (по умолчанию: false) [ $ GOTTY_PERMIT_ARGUMENTS ]
--width значение Статическая ширина экрана, 0 (по умолчанию) означает динамическое изменение размера (по умолчанию: 0) [ $ GOTTY_WIDTH ]
--height значение Статическая высота экрана, 0 (по умолчанию) означает динамическое изменение размера (по умолчанию: 0) [ $ GOTTY_HEIGHT ]
--ws-origin значение Регулярное выражение, которое соответствует исходным URL-адресам, принимаемым WebSocket. Запросы на другое происхождение по умолчанию недопустимы [ $ GOTTY_WS_ORIGIN ]
--term value Имя терминала для использования в браузере, одно из xterm или hterm. (по умолчанию: « xterm » ) [ $ GOTTY_TERM ]
--enable-webgl Включить средство визуализации WebGL (по умолчанию: false) [ $ GOTTY_ENABLE_WEBGL ]
--close-signal value Сигнал, отправляемый процессу command когда gotty закрывает его (по умолчанию: SIGHUP) (по умолчанию: 1) [ $ GOTTY_CLOSE_SIGNAL ]
--close-timeout значение Время в секундах для принудительного уничтожения процесса после отключения клиента (по умолчанию: -1) (по умолчанию: -1) [ $ GOTTY_CLOSE_TIMEOUT ]
--config значение Путь к файлу конфигурации (по умолчанию: " ~ / .gotty " ) [ $ GOTTY_CONFIG ]
--help, -h show help (по умолчанию: false)
--version, -v распечатать версию (по умолчанию: false)
Файл конфигурации
Вы можете настроить параметры по умолчанию и свой терминал (hterm), предоставив файл конфигурации команде gotty . GoTTY по умолчанию загружает файл профиля в ~ / .gotty если он существует.
// По умолчанию слушаем порт 9000
порт = "9000"
// Включить TSL / SSL по умолчанию
enable_tls = true
// настройки hterm
// Меньший шрифт и немного более синий цвет фона
предпочтения {
font_size = 5
background_color = "rgb (16, 16, 32)"
}
Список параметров конфигурации см. В файле .gotty в этом репозитории.
Параметры безопасности
По умолчанию GoTTY не позволяет клиентам отправлять какие-либо нажатия клавиш или команды, кроме изменения размера окна терминала. Если вы хотите разрешить клиентам записывать ввод в TTY, добавьте параметр -w . Однако прием ввода от удаленных клиентов опасен для большинства команд. Если вам по каким-то причинам необходимо взаимодействие с TTY, подумайте о запуске GoTTY с tmux или GNU Screen и запустите на нем свою команду (подробности см. В разделе «Совместное использование с несколькими клиентами»).
Чтобы ограничить доступ клиентов, вы можете использовать параметр -c чтобы включить базовую аутентификацию. С помощью этой опции клиентам необходимо ввести указанные имя пользователя и пароль для подключения к серверу GoTTY. Обратите внимание, что учетные данные будут передаваться между сервером и клиентами в виде обычного текста. Для более строгой аутентификации рассмотрите аутентификацию сертификата клиента SSL / TLS, описанную ниже.
Параметр -r - более простой способ ограничения доступа. С этой опцией GoTTY генерирует случайный URL-адрес, так что только люди, знающие URL-адрес, могут получить доступ к серверу.
По умолчанию весь трафик между сервером и клиентами НЕ шифруется. Когда вы отправляете секретную информацию через GoTTY, мы настоятельно рекомендуем вам использовать параметр -t который включает TLS / SSL в сеансе. По умолчанию GoTTY загружает файлы crt и ключей, размещенные в ~ / .gotty.crt и ~ / .gotty.key . Вы можете перезаписать эти пути к файлам с помощью параметров - tls-crt и - tls-key . Если вам нужно создать самоподписанный файл сертификации, вы можете использовать команду openssl .
(ПРИМЕЧАНИЕ. Для Safari см., Как включить самозаверяющие сертификаты для WebSockets при использовании самозаверяющих сертификатов)
Для дополнительной безопасности можно использовать аутентификацию сертификата клиента SSL / TLS, указав файл сертификата CA для параметра - tls-ca-crt (для этого параметра требуется -t или - tls должен быть установлен). Этот параметр требует, чтобы все клиенты отправляли действительные сертификаты клиентов, подписанные указанным центром сертификации.
Совместное использование с несколькими клиентами
GoTTY запускает новый процесс с заданной командой, когда новый клиент подключается к серверу. Это означает, что по умолчанию пользователи не могут использовать один терминал совместно с другими. Однако вы можете использовать терминальные мультиплексоры для совместного использования одного процесса с несколькими клиентами.
Экран
После установки экрана GNU запустите новый сеанс с помощью screen -S name-for-session и подключитесь к нему с помощью gotty в другом окне / вкладке терминала через screen -x name-for- сессия . Все команды и действия, выполняемые в первой вкладке / окне терминала, теперь будут транслироваться с помощью gotty.
Tmux
Например, вы можете начать новый сеанс tmux с именем gotty с помощью команды top с помощью приведенной ниже команды.
$ gotty tmux new -A -s gotty top
Эта команда не позволяет клиентам отправлять нажатия клавиш, однако вы можете подключиться к сеансу со своего локального терминала и выполнять такие операции, как переключение режима команды top . Чтобы подключиться к сеансу tmux с вашего терминала, вы можете использовать следующую команду.
Используя терминальные мультиплексоры, вы можете контролировать свой терминал и позволить клиентам просто видеть ваш экран.
Быстрый обмен через tmux
Чтобы поделиться своим текущим сеансом с другими с помощью сочетания клавиш, вы можете добавить строку, как показано ниже, в свой .tmux.conf .
# Запустить GoTTY в новом окне с помощью C-t
клавиша привязки C-t новое окно "gotty tmux attach -t` tmux display -p '# S'` "
Игра с Docker
Если вы хотите создать изолированную среду для каждого клиента, вы можете использовать контейнеры Docker, как показано ниже:
$ gotty -w docker run -it --rm busybox
Разработка
Вы можете создать двоичный файл, используя следующие команды. Windows сейчас не поддерживается. go1.9 не требуется.
# Установить инструменты
перейти и получить github.com/jteeuwen/go-bindata / ...
перейти и получить github.com/tools/godep
# Сборка
марка
Для сборки клиентской части (файлов JS и других статических файлов) вам потребуется npm .
Архитектура
GoTTY использует xterm.js и hterm для запуска терминала на основе JavaScript в веб-браузерах. Сам GoTTY предоставляет сервер websocket, который просто ретранслирует вывод TTY клиентам, принимает ввод от клиентов и пересылает его TTY. Идея hterm + websocket вдохновлена Wetty.
Альтернативы
Клиент командной строки
gotty-client: если вы хотите подключиться к серверу GoTTY со своего терминала
Терминал / SSH в веб-браузерах
Secure Shell (приложение Chrome): если вы являетесь пользователем Chrome и вам нужен «настоящий» SSH-клиент в своем веб-браузере, возможно, вам нужно приложение Secure Shell
Wetty: Веб-терминал на основе узла (SSH / вход)
ttyd: порт C для GoTTY с поддержкой CJK и IME
Совместное использование терминала
tmate: Совместное использование терминала на основе Forked-Tmux
общие условия: совместное использование терминала и терминала через HTTP-сервер
tmux: сам Tmux также поддерживает совместное использование TTY через SSH)
Лицензия MIT
Спасибо этим замечательным людям (смайлики):
Этот проект соответствует спецификации всех участников. Любые пожертвования приветствуются!
Игорный бизнес возрождается в Украине с 2020 года. Последние 10 лет легально работали только лотереи. Теперь каждое новое онлайн казино стремится привлечь клиентов в правовом игровом поле. Ресурсы предлагают расширенные бонусные программы, оригинальные новые игровые автоматы. В качестве примера популярной молодой онлайн-площадки можно рассмотреть казино Буй, которое официально работает с марта 2019 года. Официальный сайт…
Выбрать хороший хостинг для своего проекта всегда сложно, поэтому некоторые провайдеры предоставляют свои услуги на небольшое время, для того чтобы потенциальный клиент смог оценить преимущества данного провайдера. Это время называется тестовым периодом. В каких случаях может понадобиться тестовый хостинг для сайта? — Вы решили создать собственный проект, но не уверены, подойдет вам данный провайдер или…
Лучшие альтернативы Illustrator встряхивают мир и начинают ломать долгое господство Adobe в области цифрового искусства, иллюстрации и графического дизайна. Программное обеспечение Adobe может по-прежнему оставаться отраслевым стандартом, но есть и другие варианты, которые вполне жизнеспособны, если вы хотите попробовать что-то новое. Хотите ли вы больше платить за подписку Creative Cloud или просто хотите научиться работать…
Лучшие мемы забавны, используются в нужное время и говорят правильные вещи. Их легко найти в Интернете, но иногда лучшие из них — это те, которые вы делаете, идеально подходящие на данный момент. Они могут быть мучительно неудобными, но могут быть и очень и очень забавными. Если вас внезапно поразило комическое вдохновение, хорошая новость заключается в…
Дизайнер Йонас Бьерре-Поульсен из датской студии Norm Architects и соучредитель журнала о стиле жизни Kinfolk Натан Уильямс выпустили книгу The Touch — о 25 интерьерных и архитектурных проектах, которые не только визуально привлекательны, но и затрагивают все человеческие чувства. В содержании книги, выпущенной издательством Gestalten, выделено пять тем: свет, материальность, цвет, природа и сообщество. Кроме…
Вы услышите много предложений, обсуждаемых в выходные дни распродажи в День поминовения. но такая сделка, как эта скидка 700 долларов на новый Dell XPS 13 Touch, говорит сама за себя. В Dell цена этого фантастического ноутбука (фаворита CB для цифровых креативщиков) снизилась с ошеломляющих 1499,99 долларов до доступных 799,99 долларов. И мы уверены, что это…