По мере того, как сектор сельтерских напитков становится мейнстримом, дизайн-студии прибегают к «псевдостальгии» и гендерно-нейтральному брендингу, чтобы привлечь внимание более молодой аудитории. Автор Генри Вонг 4 июня 2021 г. 10:58 4 июня 2021 г. 17:19 С наступлением лета в Великобритании один сектор напитков готов произвести фурор среди потребителей. Около 46% любителей коктейлей говорят, что они,…
8 июня 2021 года в 10:00 в Пресс-центре ТАСС (г. Москва, Тверской бульвар, дом 2, 2-й этаж) состоится пресс-конференция, посвящённая старту хакатонов и лекций по искусственному интеллекту, которые пройдут по всей России. Оператором конкурса выступает АНО «Россия – страна возможностей», соорганизатор конкурса – Ассоциация электронных коммуникаций (РАЭК). К участию в пресс-конференции приглашены: Алексей Агафонов —…
Датская студия Dorte Mandrup спроектировала магазин IKEA в центре Копенгагена с общественным парком на крыше, который будет служить «зеленой гостиной». Магазин откроется в районе Вестербро в 2023 году. «Вестербро – густонаселенный и активный район города, в котором есть только несколько зеленых зон и пешеходных дорожек. С новым парком на крыше мы хотим вернуть зеленую гостиную…
Американский телеведущий, ABC (American Broadcasting Company) перерисовал свой 60-летний логотип (вверху) в еще одном примере большого корпорация, придерживающаяся движения плоского дизайна. Однако мы должны предупредить вас, что если вы здесь ради драмы, отвернитесь сейчас. Доработки дизайна минимальны, если не сказать больше — с удаленным 3D-блеском и незначительно измененным шрифтом. Не то чтобы ABC так думала.…
Каждое приключение начинается с этого первого решающего шага. На ранних этапах создания блога вы задаете ему направление, выбираете темы, ракурс и голос, который будете использовать для своих постов. Конечно, впереди у вас будет достаточно времени, чтобы научиться писать должным образом, а еще у вас появятся отличные инструменты, которые помогут вам в этом. Вы также найдете…
Ситуация: вам в голову пришла гениальная идея о новой функции или продукте, и прежде чем бросать все ресурсы на его создание, эту идею нужно протестировать. Классические методы вроде интервью или карты пользовательского пути (КПП) занимают как минимум несколько дней, поэтому мы используем стратегию, позволяющую протестировать КПП быстрее — всего за пару часов. Как улучшить путь…
Получить работу аниматора и укрепить свои навыки не всегда легко. Я помню, как был разочарован, пытаясь понять, как попасть в индустрию. Нужно ли мне поступать в колледж, мне нужен наставник, или это похоже на конкурс, и если я получу стажировку, тогда я буду счастливчиком, которого научат работать в отрасли? Хотя у всех разные случаи, и…
Вы можете загрузить последний стабильный двоичный файл со страницы 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
Спасибо этим замечательным людям (смайлики):
Этот проект соответствует спецификации всех участников. Любые пожертвования приветствуются!
Вы услышите много предложений, обсуждаемых в выходные дни распродажи в День поминовения. но такая сделка, как эта скидка 700 долларов на новый Dell XPS 13 Touch, говорит сама за себя. В Dell цена этого фантастического ноутбука (фаворита CB для цифровых креативщиков) снизилась с ошеломляющих 1499,99 долларов до доступных 799,99 долларов. И мы уверены, что это…
Фавиконы — это крошечные значки, которые помогают выделить ваш сайт в поисковой выдаче или на панели закладок. Именно поэтому каждому сайту нужен фавикон. Фавикон создает первое впечатление о сайте, еще до того, как пользователь посетит его. Сайт с фавиконом выглядит более профессионально. Тот факт, что ваш сайт мгновенно выделяется среди других, — еще один плюс.…