提升英文輸入效率:基于Docker的Qwerty Learner本地搭建與使用指南

文章目錄

    • 前言
    • 1.關于qwerty-learner
    • 2.Docker部署
    • 3.簡單使用演示
    • 4.安裝cpolar內網穿透
    • 5. 配置公網地址
    • 6. 配置固定公網地址
    • 總結

前言

小伙伴們,你們有沒有遇到過這種情況:中文輸入流暢自如,一到英文模式就變成了新手司機?別擔心,今天給大家帶來一個超級神器——Qwerty Learner!這款工具不僅能幫你解決這個難題,還能讓你的英語肌肉記憶瞬間提升!更重要的是,我們手把手教你如何在本地Linux服務器上用Docker快速部署它,并且通過cpolar內網穿透工具實現跨網絡環境的遠程訪問,輕松搞定一切,無需公網IP和云服務器,簡單高效到飛起!

img

【視頻教程】

1分鐘本地部署英文輸入速度提升寶藏工具qwerty-learner

1.關于qwerty-learner

qwerty-learner是一款專為鍵盤工作者設計的單詞記憶與英語肌肉記憶鍛煉軟件。不僅能幫助你提升英文輸入速度和準確性,還能讓你在打字過程中學習新詞匯!內置了多種考試詞庫(如大學四六級、考研英語等)以及程序員常用單詞和API練習,簡直就是為程序員量身打造的學習神器。

qwerty-learner 特點與優勢:

  1. 多語言支持
  • 不僅限于英語學習,還支持其他多種語言的輸入練習。無論是法語、德語還是日語,都能找到相應的詞庫進行學習和訓練。
  1. 豐富的詞匯庫
  • 內置了多個權威的考試詞匯庫,如大學四六級、考研英語、TOEFL、GRE等。
  • 特別為程序員設計了編程相關的詞匯和API練習,幫助你在實際開發中更流暢地使用英文。
  1. 智能復習算法
  • 利用先進的間隔重復算法(Spaced Repetition System, SRS),根據你的記憶曲線動態調整復習頻率,確保你記住每一個單詞。
  • 每個單詞的出現頻率和難度會根據你的表現自動調整,幫助你在最短的時間內達到最佳學習效果。
  1. 實時反饋
  • 在練習過程中,輸入正確的字母顯示為綠色,錯誤的字母顯示為紅色,即時反饋讓你迅速糾正錯誤。
  • 練習結束后,系統會生成詳細的報告,包括打字速度、正確率和常見錯誤分析,幫助你針對性地改進。
  1. 多模式練習
  • 聽寫模式:通過聽取單詞發音來輸入字母,提高聽力和拼寫能力。
  • 默寫模式:在沒有提示的情況下輸入單詞,檢驗記憶效果。
  • 快速打字模式:挑戰自己的極限,提升打字速度。
  1. 個性化設置
  • 可以根據個人喜好調整背景顏色、字體大小等界面設置,讓學習過程更加舒適。
  • 支持自定義詞匯表,你可以添加自己需要學習的單詞和短語。

2.Docker部署

本例使用Ubuntu 22.04進行演示,使用Docker進行部署,如果沒有安裝Docker,可以查看這篇教程進行安裝:《Docker安裝教程——Linux、Windows、MacOS》

安裝環境需要有Node.js 、Git 、yarn,我這里已經安裝。

首先需要在命令行中執行這行命令將項目拉取到本地

git clone https://github.com/RealKai42/qwerty-learner.git

image-20250217165447443

進入項目根目錄

cd qwerty-learner

執行來下載依賴

yarn install

image-20250217165515565

執行來啟動項目

yarn start

image-20250217165533606

打開瀏覽器輸入http://localhost:5173/就可以進入到qwerty-learner的主頁面

image-20250217165718195

3.簡單使用演示

打開軟件,選擇好詞庫,點擊鍵盤任意鍵就開始練習了。聽著單詞的朗讀,對照屏幕上的單詞在鍵盤上打出字母,輸入正確的字母顯示為綠色,錯誤字母顯示為紅色,一目了然。每章拼寫練習完成后,還可以選擇默寫,屏幕不再顯示單詞,直接聽音默寫,學習效果杠杠的。而且,它還有錯題本功能,統計錯誤單詞的練習次數、錯誤次數和默寫平均用時,方便你針對性地復習。

image-20250217165857615

也可以選擇你自己想學的詞典,里面有各種各樣的語言以及大學英語等等專業課程都可以學習。

image-20250217165958856

4.安裝cpolar內網穿透

不過我們目前只能在本地局域網內訪問剛剛部署的qwerty-learner,如果想不在同一局域網內時,也能在外部網絡環境使用手機、平板、電腦等設備遠程訪問與使用它,應該怎么辦呢?我們可以使用cpolar內網穿透工具來實現遠程訪問的需求。無需公網IP,也不用準備云服務器那么麻煩。

下面是安裝cpolar步驟:

Cpolar官網地址: https://www.cpolar.com

使用一鍵腳本安裝命令:

sudo curl https://get.cpolar.sh | sh

img

安裝完成后,執行下方命令查看cpolar服務狀態:(如圖所示即為正常啟動)

sudo systemctl status cpolar

img

Cpolar安裝和成功啟動服務后,在瀏覽器上輸入ubuntu主機IP加9200端口即:【http://localhost:9200】訪問Cpolar管理界面,使用Cpolar官網注冊的賬號登錄,登錄后即可看到cpolar web 配置界面,接下來在web 界面配置即可:

image-20240801133735424

5. 配置公網地址

登錄cpolar web UI管理界面后,點擊左側儀表盤的隧道管理——創建隧道:

  • 隧道名稱:可自定義,本例使用了:qwerty,注意不要與已有的隧道名稱重復
  • 協議:http
  • 本地地址:5173
  • 域名類型:隨機域名
  • 地區:選擇China Top

點擊創建:

image-20250217172530327

創建成功后,打開左側在線隧道列表,可以看到剛剛通過創建隧道生成了兩個公網地址,接下來就可以在其他電腦或者移動端設備(異地)上,使用任意一個地址在瀏覽器中訪問即可。

image-20250217172636780

現在就已經成功實現使用cpolar生成的公網地址異地遠程訪問本地部署的qwerty-learner啦!

小結

為了方便演示,我們在上邊的操作過程中使用cpolar生成的HTTP公網地址隧道,其公網地址是隨機生成的。這種隨機地址的優勢在于建立速度快,可以立即使用。然而,它的缺點是網址是隨機生成,這個地址在24小時內會發生隨機變化,更適合于臨時使用。

如果有長期使用qwerty-learner,或者異地訪問與使用其他本地部署的服務的需求,但又不想每天重新配置公網地址,還想讓公網地址好看又好記并體驗更多功能與更快的帶寬,那我推薦大家選擇使用固定的二級子域名方式來配置公網地址。

6. 配置固定公網地址

使用cpolar為其配置二級子域名,該地址為固定地址,不會隨機變化。

注意需要將cpolar套餐升級至基礎套餐或以上,且每個套餐對應的帶寬不一樣。【cpolar.cn已備案】

點擊左側的預留,選擇保留二級子域名,地區選擇china top,然后設置一個二級子域名名稱,我這里演示使用的是qwerty,大家可以自定義。填寫備注信息,點擊保留。

image-20250217172826573

保留成功后復制保留的二級子域名地址:

image-20250217172941060

登錄cpolar web UI管理界面,點擊左側儀表盤的隧道管理——隧道列表,找到所要配置的隧道qwerty-learner,點擊右側的編輯

image-20250217172909286

修改隧道信息,將保留成功的二級子域名配置到隧道中

  • 域名類型:選擇二級子域名
  • Sub Domain:填寫保留成功的二級子域名
  • 地區: China Top

點擊更新

image-20250217173013679

更新完成后,打開在線隧道列表,此時可以看到隨機的公網地址已經發生變化,地址名稱也變成了保留和固定的二級子域名名稱。

image-20250217173034540

最后,我們使用固定的公網地址在任意設備的瀏覽器中訪問,可以看到成功訪問本地部署的qwerty-learner頁面,這樣一個永久不會變化的二級子域名公網網址即設置好了。

image-20250217173221400

了解更多項目詳情大家可以訪問作者github主頁進行查看:RealKai42/qwerty-learner: 為鍵盤工作者設計的單詞記憶與英語肌肉記憶鍛煉軟件 / Words learning and English muscle memory training software designed for keyboard workers

總結

以上就是如何在本地Ubuntu系統使用Docker快速部署qwerty learner,并通過cpolar內網穿透工具配置固定不變的二級子域名公網地址,實現隨時隨地遠程開發的全過程。如果你還有任何疑問或遇到問題,歡迎在評論區留言交流,我們一起探討!最后,別忘了給作者一個大大的贊哦,畢竟這么給力的工具可不是隨便就能找到的,錯過今天你可能又要等很久了!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/83230.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/83230.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/83230.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

BUUCTF——shrine

BUUCTF——shrine 進入靶場 只有一串代碼 import flask import os app flask.Flask(__name__) app.config[FLAG] os.environ.pop(FLAG) #程序從環境變量 FLAG 讀取一個敏感值,并存儲在 app.config[FLAG] 中。 #安全問題:如果攻擊者能訪問 app.con…

【Python】對象生命周期全解析

Python對象生命周期全解析 在Python中,一個對象從創建到銷毀會經歷一系列過程,理解這些過程對于編寫高效、可靠的Python代碼非常重要。下面我將詳細講解Python對象的完整生命周期。 1. 對象創建階段 (1) 內存分配 當使用類實例化時(obj MyClass())&…

科學養生指南:解鎖健康生活的密碼

健康是人生最寶貴的財富,科學養生則是守護這筆財富的關鍵。即使拋開傳統中醫理論,現代科學也為我們提供了諸多實用的養生方法。? 合理飲食是健康養生的基石。人體需要碳水化合物、蛋白質、脂肪、維生素和礦物質等多種營養物質維持運轉。日常飲食應遵循…

深入解析 Python 應用日志監控:ELK、Graylog 的實戰指南

深入解析 Python 應用日志監控:ELK、Graylog 的實戰指南 引言 在現代應用開發中,日志不僅僅是用于記錄錯誤和調試信息,它更是系統運行狀況的窗口,幫助開發者和運維人員監控、優化應用性能。Python 作為廣泛應用的開發語言,其應用日志管理的重要性不言而喻。而 ELK(Elas…

【vue】腳手架

一、使用腳手架創建項目 1.打開編輯器終端 2.輸入命令vue create 項目名 3.選擇自定義配置,選以下幾種常用的配置項(空格選中或刪除) 二、常規操作 進入項目:cd 項目名 返回:cd .. 運行項目:npm run serve 停止項目:ct…

2025全網首發:ComfyUI整合GPT-Image-1完全指南 - 8步實現AI圖像創作革命

ComfyUI整合GPT-Image-1完全指南:8步實現AI圖像創作革命【2025最新】 OpenAI最新發布的GPT-Image-1模型(也就是ChatGPT-4o背后的圖像生成技術)已經通過API開放使用,而令人驚喜的是,ComfyUI已經第一時間提供了完整支持&…

每日算法刷題計劃Day7 5.15:leetcode滑動窗口4道題,用時1h

一.定長滑動窗口 【套路】教你解決定長滑窗!適用于所有定長滑窗題目! 模版套路 1.題目描述 1.計算所有長度恰好為 k 的子串中,最多可以包含多少個元音字母 2.找出平均數最大且 長度為 k 的連續子數組,并輸出該最大平均數。 3.…

JavaScript的BOM、DOM編程

參考筆記:JavaWeb 速通DOM_java dom-CSDN博客 目錄 1.JS的組成部分 2.BOM編程 2.1 基本介紹 2.2 BOM的構成 2.3 圖解BOM編程 2.4 windows對象的常見屬性 2.5 windows對象的常見方法 2.6 BOM編程的簡單示例 2.6.1 三種彈窗方式 ?2.6.2 頁面跳轉 2.6.3…

Web3.0:互聯網的去中心化未來

隨著互聯網技術的不斷發展,我們正站在一個新時代的門檻上——Web3.0時代。Web3.0不僅僅是一個技術升級,它更是一種全新的互聯網理念,旨在通過去中心化技術重塑網絡世界。本文將深入探討Web3.0的核心概念、技術基礎、應用場景以及它對未來的深…

CVPR計算機視覺頂會論文解讀:IPC-Dehaze 如何解決真實場景去霧難題

【CVPR 2025】迭代預測-評判編解碼網絡:突破真實場景去霧的極限 摘要 本文提出了一種名為IPC-Dehaze的創新去霧方法,通過迭代預測-評判框架和碼本解碼機制,有效解決了現有去霧算法在復雜場景下的性能瓶頸。該方法在多個基準測試中取得了SOT…

07.three官方示例+編輯器+AI快速學習webgl_buffergeometry_attributes_integer

本實例主要講解內容 這個Three.js示例展示了WebGL 2環境下的整數屬性渲染技術。通過創建大量隨機分布的三角形,并為每個三角形分配不同的整數索引,實現了基于索引動態選擇紋理的效果。 核心技術包括: WebGL 2環境下的整數屬性支持頂點著色…

WebSocket:實時通信(如聊天應用)從零到一的深度解析

簡介 在現代互聯網應用中,實時通信已成為不可或缺的核心功能。從在線聊天到金融數據監控,從協同辦公到在線游戲,實時性需求推動了WebSocket技術的廣泛應用。本文將從底層協議原理出發,結合企業級開發場景,系統講解WebSocket的實現機制、實戰技巧與優化策略。通過完整的代…

【NLP 困惑度解析和python實現】

**困惑度(Perplexity)**是自然語言處理和機器學習中常用的評價指標,尤其在評估語言模型時廣泛使用。它衡量的是一個概率模型對一個樣本(如一句話)的預測能力。 一、困惑度的定義 對于一個語言模型 $ P $ 和一個測試語…

編程題 02-線性結構3 Reversing Linked List【PAT】

文章目錄 題目輸入格式輸出格式輸入樣例輸出樣例 題解解題思路完整代碼 編程練習題目集目錄 題目 Given a constant K K K and a singly linked list L L L, you are supposed to reverse the links of every K K K elements on L L L. For example, given L being 1 → …

互聯網大廠Java求職面試實戰:Spring Boot到微服務全景解析

💪🏻 1. Python基礎專欄,基礎知識一網打盡,9.9元買不了吃虧,買不了上當。 Python從入門到精通 2. 我的免費工具站: 歡迎訪問 https://tools-6wi.pages.dev/ 😁 3. 畢業設計專欄,畢業…

課程11. 計算機視覺、自編碼器和生成對抗網絡 (GAN)

計算機視覺、自編碼器和生成對抗網絡(GAN) 自動編碼器Vanilla自動編碼器使用 AE 生成新對象. 變分 AE (VAE)AE 條件 GAN理論示例下載并準備數據GAN模型 額外知識 課程計劃: 自動編碼器: 自動編碼器結構;使用自動編碼器…

MarkitDown:AI時代的文檔轉換利器

在當今AI快速發展的時代,如何高效地將各種格式的文檔轉換為機器可讀的格式,成為了一個迫切需要解決的問題。今天,我們來介紹一款由微軟開發的強大工具——MarkitDown,它正是為解決這一問題而生的。 什么是MarkitDown? MarkitDown是一個用Python編寫的輕量級工具,專門用…

Python實戰案例:打造趣味猜拳小游戲

Python實戰案例:猜拳小游戲 文章目錄 Python實戰案例:猜拳小游戲一、案例背景二、代碼實現三、代碼解析3.1 執行過程3.2 流程圖 四、案例總結1. 核心知識點運用2. 編程思維提升 一、案例背景 猜拳游戲(石頭剪刀布)是一款規則簡單…

MCP:重塑AI交互的通用協議,成為智能應用的基礎設施

目錄: 為什么我們需要一個AI世界的USB-C?MCP的核心架構與工作原理MCP如何解決當前AI生態系統的碎片化問題從代碼到實踐:構建基于MCP的智能應用MCP的未來:從工具到生態為什么我們需要一個AI世界的USB-C? 還記得在USB-C標準普及之前,我們的數字生活是什么樣子嗎?抽屜里塞…

如何保證RabbitMQ消息的順序性?

保證RabbitMQ消息的順序性是一個常見的需求,尤其是在處理需要嚴格順序的消息時。然而,默認情況下,RabbitMQ不保證消息的全局順序,因為消息可能會通過不同的路徑(例如不同的網絡連接或線程)到達隊列&#xf…