8個讓你直呼臥槽的Docker神器,讓你的伺服器瞬間開掛!

來源:juejin.cn/post/7438638095946055716

在容器化技術蓬勃發展的今天,Docker已經成為開發者不可或缺的工具。
除了那些耳熟能詳的官方映象,Docker Hub上還隱藏著許多有趣而實用的映象,它們可能會讓你的開發工作事半功倍,甚至會為你的日常工作帶來意想不到的便利。
本文精心挑選了一些有趣的Docker映象,無論你是新手還是老手,總有用得到的。
耐心看完,你一定有所收穫。
注意
  • 本文中提供了docker run命令和 docker-compose.yml 配置
  • 部分映象需要對映宿主機的目錄,注意要手動建立
  • 所有映象都只提供了最基礎的啟動配置,如果需要定製化,還得上hub、倉庫或官網看引數

code-server:遠端開發神器

讓你在任何裝置的瀏覽器中都能訪問完整的VS Code開發環境,無需本地安裝和配置。
當你需要在平板、筆記本或其他裝置間切換時,所有的程式碼、外掛和設定都保持同步,徹底解決了"換臺電腦又要重新配環境"的痛點。

特點:
  • 雲端IDE: 無需本地安裝VS Code,直接在瀏覽器中使用。
  • 多裝置同步: 無論你在哪裡,都能繼續你的工作。
推薦理由:
  • 遠端開發: 特別適合遠端辦公或出差時使用。
  • 學習程式設計: 學生或初學者可以在任何裝置上輕鬆開始程式設計。
特殊的用法:
我最近發現,直接給code-server對映宿主機的工作路徑,把他作為一個強大的檔案資源管理器,也相當實用,特別是經常去編輯宿主機上各種配置檔案的場景。
安裝命令:
docker run -d \  --name code-server \  -p 8080:8080 \  -v "$HOME/.config:/home/coder/.config" \  -v "$PWD:/home/coder/project" \  codercom/code-server:latest
docker-compose.yml:
version: "3"services:code-server:    image:codercom/code-server:latest    ports:      -"8080:8080"    volumes:      -~/.config:/home/coder/.config      -.:/home/coder/project    environment:      -PASSWORD=yourpassword

CloudBeaver:資料庫管理

CloudBeaver 是一個基於Web的資料庫管理工具,它讓你可以在瀏覽器中輕鬆管理各種資料庫。

特點:
  • 多資料庫支援: 支援MySQL、PostgreSQL、SQLite等多種資料庫。
  • Web介面: 介面清爽,用起來順手。
推薦理由:
  • 以前一直在用PhpMyAdmin,但是操作上屬實難繃,CloudBeaver可謂是做了極大的提升
  • 不僅支援各種快捷鍵,還有SQL面板,甚至有智慧提示(雖然相對客戶端沒那麼智慧)
安裝命令:
docker run -d \  --name cloudbeaver \  -p 8978:8978 \  dbeaver/cloudbeaver:latest
docker-compose.yml:
version: "3"services:  cloudbeaver:    image: dbeaver/cloudbeaver:latest    ports:      - "8978:8978"    volumes:      - ./workspace:/opt/cloudbeaver/workspace
青龍面板:自動化任務
青龍面板 是一個用於自動化任務管理的工具,對於喜歡自動化和指令碼管理的朋友,青龍面板 是一個不可多得的工具。
它可以幫助你管理和執行各種指令碼任務,支援定時執行,讓自動化操作變得簡單方便。

特點:
  • 任務排程: 支援定時任務、指令碼執行等。
  • Web介面: 簡單直觀。
推薦理由:
  • 自動化: 適合需要定時執行任務的使用者,如爬蟲、資料備份等。
  • 指令碼: 個人使用者可以用它來管理日常任務,如定時簽到、自動回覆等。
安裝命令:
docker run -d \  --name qinglong \  -p 5700:5700 \  -v $PWD/ql:/ql/data \  whyour/qinglong:latest
docker-compose.yml:
version: "3"services:  qinglong:    image: whyour/qinglong:latest    ports:      - "5700:5700"    volumes:      - ./ql:/ql/data

PocketBase:輕量級Serverless服務

一個輕量級的Serverless服務,支援資料儲存、檔案儲存、使用者授權體系、日誌監控等,適合快速開發小型應用。

特點:
  • 輕量級: 佔用資源少,啟動快。
  • 整合API: 自帶API,方便前後端分離開發。
推薦理由:
  • 快速開發: 適合個人開發者或小團隊快速搭建後端服務。
  • 原型設計: 在開發初期,可以用它快速驗證想法。
安裝命令:
docker run -d \  --name pocketbase \  -p 8090:8090 \  -v $PWD/pb_data:/pb_data \  ghcr.io/muchobien/pocketbase:latest
docker-compose.yml:
version: "3"services:  pocketbase:    image: ghcr.io/muchobien/pocketbase:latest    ports:      - "8090:8090"    volumes:      - ./pb_data:/pb_data

Homer:個人主頁

Homer 是一個簡單而強大的個人主頁生成器,適合用來展示你的各種服務和連結。

特點:
  • 自定義主頁: 可以新增各種連結和服務入口。
  • 美觀簡潔: 介面簡潔美觀,易於使用。
推薦理由:
  • 個人主頁: 如果你想做一個個人主頁,那絕對是極佳的選擇。
  • 家庭網路: 也可以用它來管理家中的各種裝置和服務,如果能支援webhook呼叫的話。
安裝命令:
docker run -d \  --name homer \  -p 8080:8080 \  -v ${PWD}/assets:/www/assets \  b4bz/homer:latest
docker-compose.yml:
version: "3"services:  homer:    image: b4bz/homer:latest    ports:      - "8080:8080"    volumes:      - ./assets:/www/assets

Uptime-Kuma:服務監控

Uptime-Kuma 是一個開源的服務監控工具,可以即時監控你的網站和服務狀態。

特點:
  • 即時監控: 可以即時監控網站和服務的狀態。
  • 通知功能: 支援多種通知方式,如郵件、Telegram等。
推薦理由:
  • 長的好看,配置又簡單
  • 適合個人或小團隊監控自己的服務狀態。
安裝命令:
docker run -d \  --name uptime-kuma \  -p 3001:3001 \  -v uptime-kuma:/app/data \  louislam/uptime-kuma:1
docker-compose.yml:
version: "3"services:  uptime-kuma:    image: louislam/uptime-kuma:1    ports:      - "3001:3001"    volumes:      - uptime-kuma:/app/data    restart: always

Memos:個人筆記

Memos 是一個輕量級的個人筆記工具,適合用來記錄日常的想法和靈感。

圖片
特點:
  • 輕量級: 佔用資源少,啟動快。
  • 簡單易用: 介面簡潔,操作簡單。
推薦理由:
  • 個人筆記: 適合個人使用者記錄日常的想法和靈感。
  • 靈感記錄: 適合創作者用來記錄靈感,隨時隨地記錄。
安裝命令:
docker run -d \  --name memos \  -p 5230:5230 \  -v ~/.memos/:/var/opt/memos \  neosmemo/memos:latest
docker-compose.yml:
version: "3"services:  memos:    image: neosmemo/memos:latest    ports:      - "5230:5230"    volumes:      - ~/.memos/:/var/opt/memos

Umami:網站統計

Umami 是一個開源的網站統計工具,可以用來分析網站的訪問資料。

特點:
  • 開源: 完全開源,可以自由定製。
  • 隱私友好: 不收集個人資料,保護使用者隱私。
推薦理由:
  • 網站統計: 適合個人部落格、小型網站的訪問資料分析。
  • 隱私保護: 特別適合注重隱私的使用者使用。
安裝命令:
docker run -d \  --name umami \  -p 3000:3000 \  ghcr.io/umami-software/umami:postgresql-latest
docker-compose.yml:
version: "3"services:umami:    image:ghcr.io/umami-software/umami:postgresql-latest    ports:      -"3000:3000"    environment:      DATABASE_URL:postgresql://umami:umami@db:5432/umami    depends_on:      -db

Flame:個人導航

又一個個人導航頁,但是風格完全不同,如果喜歡極簡風格不妨一試。

特點:
  • 自定義導航: 可以新增各種網站和書籤。
  • 美觀簡潔: 介面簡潔美觀,易於使用。
推薦理由:
  • 個人導航: 適合個人使用者管理常用網站和書籤。
  • 工作效率: 可以提高工作效率,快速訪問常用網站。
安裝命令:
docker run -d \  --name flame \  -p 5005:5005 \  -v flame:/app/data \  pawelmalak/flame
docker-compose.yml:
version: "3"services:flame:    image:pawelmalak/flame    ports:      -"5005:5005"    volumes:      -flame:/app/data    environment:      -PASSWORD=password

Filebrowser:線上檔案管理器

一個輕量級的檔案管理器。
特別適合那些需要遠端訪問和管理檔案但又不想安裝複雜軟體的使用者。
它支援檔案的上傳、下載、編輯以及許可權管理,更適用於個人或小團隊。

特點:
  • 簡單易用: 介面簡潔,操作直觀,即使是新手也能快速上手。
  • 許可權管理: 支援使用者和許可權管理,可以為不同的使用者設定不同的訪問許可權。
  • 檔案上傳下載: 支援檔案的上傳、下載、刪除、重新命名等操作。
  • 自定義配置: 可以透過配置檔案自定義介面和功能。
推薦理由:
  • 遠端檔案管理: 無論你身在何處,只要有網路,就可以透過瀏覽器管理伺服器上的檔案。
  • 共享檔案: 可以輕鬆地與他人共享檔案,設定不同的訪問許可權。
  • 開發環境: 開發者可以在開發環境中使用它來管理專案檔案。
安裝命令:
docker run -d \  --name filebrowser \  -v $PWD/filebrowser:/srv \  -p 80:80 \  filebrowser/filebrowser
docker-compose.yml:
version: "3.8"services:filebrowser:    image:filebrowser/filebrowser:latest    container_name:filebrowser    restart:unless-stopped    ports:      -"80:80"    volumes:      -$PWD/filebrowser:/srv# 設定你的檔案目錄      -$PWD/filebrowser.db:/database# 設定你的資料庫目錄

dockge:管理Docker

docker-compose.yaml`管理器,一切基於`docker-compose.yaml

特點:
  • 管理你的compose.yaml檔案
    • 一站式搞定:新建、修改、啟動、停止、重啟、刪除,就是這麼簡單
    • 一鍵更新Docker映象
  • 視覺化編輯器
    • 再也不用手敲compose.yaml了,所見即所得的編輯介面
  • 網頁版終端
    • 直接在瀏覽器裡敲命令,不用再開終端視窗
  • 多伺服器支援 (1.4.0新功能)
    • 一個介面管理多臺伺服器上的Docker,再也不用來回切換了
  • 一鍵轉換命令
    • 把複雜的docker run命令自動轉成compose.yaml,省去手動配置的麻煩
  • 檔案原生儲存
    • 不會把你的配置檔案鎖在系統裡,所有檔案都在硬碟上,該用命令列還能用命令列
  • 即時響應
    • 所有操作都是即時反饋的
    • 映象拉取、啟動、關閉的進度和終端輸出都是即時顯示
  • 簡單好用的介面
    • 如果你喜歡Uptime Kuma的介面設計,這個你也一定會喜歡
    • 介面美觀,操作直觀
安裝命令:
# 執行命令docker run -d \  --name dockge \  -p 5001:5001 \  -v /var/run/docker.sock:/var/run/docker.sock \  amir20/dockge
docker-compose.yml:
version: "3"services:  dockge:    image: amir20/dockge    ports:      - "5001:5001"    volumes:      - /var/run/docker.sock:/var/run/docker.sock
END
想要學習Linux系統的讀者可以點選"閱讀原文"按鈕來了解書籍《Linux就該這麼學》,同時也非常適合專業的運維人員閱讀,成為輔助您工作的高價值工具書!

相關文章