最近因為閱讀,想在威聯通 NAS(QNAP)上本地存取,並快速記錄一些知識,Typecho 油然而生。
博主采用 QNAP + Docker + SQLite 部署,SQLite 是在 Typecho 容器內安裝的。
Typecho 特征:
1. 輕量高效:7 張表,不到 400KB 程式碼,超低 CPU 和記憶體使用率。2. 支持 Markdown,外掛程式,主題,支持 BAE/GAE/SAE。
3. 簡潔友好。
4. 支持 MySQL, SQLite, PostgreSQL 數據庫。
首先 ,SSH 透過賬號、密碼連線上主機。
% ssh [email protected]
[email protected]'s password:
其次 ,Docker 尋找 typecho 映像,使用第一個 star 標註最多的 80x86/typecho 映像。
QNAP 上的 Docker 也就是「Container Station 容器工作站」。
$ docker search typecho
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
80x86/typecho [multi arch] typecho PHP lightweight blog sy… 88
joyqi/typecho Typecho Official Image 68
zuolan/typecho Typecho 映像,PHP 5.6,適用 Sqlite,基於 Alp… 7
yangxuan8282/typecho typecho docker https://github.com/typecho/t… 3 [OK]
nedvedliao/typecho Container running typecho in Nginx + PHP-FPM 2
xihefeng/typecho typecho,可以的話,點個收藏?☺ 2
flame123/typecho typecho 1.2 lightweight blog system for … 2
mssz/typecho_ssl This is an image for typecho which has been … 2
rehiy/typecho Docker Image for Typecho 1
derekamz/typecho typecho docker image 1 [OK]
chemistryhuang/typecho typecho enable ssl 1
frankzhang/typecho-phpbase 0 [OK]
vofficialuwu/typecho-paas 0
haloislet/typecho 0
kevin1528/typecho typecho Docker 環境,數據庫使用mysql 0 [OK]
ouyangsong/typecho 0
thinkinn/typecho typecho without db 0
ohmydockerhub/typecho-php Typcho docker image base on alpine for https… 0
indexyz/typecho-docker Typecho docker build without mysql 0 [OK]
lufeidot/typecho Typecho images. 0
yearnfar/typecho-docker typecho-docker只是一個能執行 typecho 的 php-… 0 [OK]
90x60/typecho N1 typecho網誌 0
kimoqi/typecho-blog tiny typecho blog 0
shyling/typecho typecho ( without inner database ) 0 [OK]
wjg1101766085/typecho Quickly start a typecho container 0
第三步 ,拉取 80x86/typecho 映像。
$ docker pull 80x86/typecho
Using default tag: latest
latest: Pulling from 80x86/typecho
bdf0201b3a05: Pull complete
450942232c97: Pull complete
f821ea05a897: Pull complete
a6ed0c8c1d57: Pull complete
ed318611a4b7: Pull complete
973fd0cc02a9: Pull complete
dd4c978e5709: Pull complete
82a39a559649: Pull complete
f40bdad4e7ea: Pull complete
9e02658b0686: Pull complete
7c83383db86c: Pull complete
6d751e928c41: Pull complete
Digest: sha256:4af25c76919efa862d59aeb3a2d9f2394ad3ef4b338037e8a2499c55011dbbf7
Status: Downloaded newer image for 80x86/typecho:latest
docker.io/80x86/typecho:latest
第四步 ,從 QNAP 的 Container Station 中建立 Typecho 容器。
第五步 ,存取主機 http://192.168.10.6 :80,進入 Typecho 初始化頁面。然後止步於此,先去第六步。
備註:
第六步 ,回到 SSH 視窗,進入 Typecho 容器內安裝 SQLite。
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7f45149e3f96 80x86/typecho:latest "/entrypoint.sh /app…" 23 minutes ago Up 23 minutes (healthy) 0.0.0.0:32768->80/tcp
$ docker exec -it typecho sh
/app # apk add sqlite3
fetch http://mirrors.aliyun.com/alpine/v3.9/main/x86_64/APKINDEX.tar.gz
fetch http://mirrors.aliyun.com/alpine/v3.9/community/x86_64/APKINDEX.tar.gz
ERROR: unsatisfiable constraints:
sqlite3 (missing):
required by: world[sqlite3]
/app # apk update
fetch http://mirrors.aliyun.com/alpine/v3.9/main/x86_64/APKINDEX.tar.gz
fetch http://mirrors.aliyun.com/alpine/v3.9/community/x86_64/APKINDEX.tar.gz
v3.9.6-143-ga5f34edab6 [http://mirrors.aliyun.com/alpine/v3.9/main]
v3.9.6-138-ge069a77b3b [http://mirrors.aliyun.com/alpine/v3.9/community]
OK: 9814 distinct packages available
/app # apk add sqlite3
ERROR: unsatisfiable constraints:
sqlite3 (missing):
required by: world[sqlite3]
仔細觀察,這裏有一個錯誤,進入 Alpine 容器後,使用 apk add 安裝 sqlite3 報錯,apk update 之後再安裝還是會出現。這是因為 Alpine 以不同的名稱提供了 sqlite3 軟件包, 我們使用 sqlite 就好了。
使用以下命令安裝 sqlite3。
/app # apk add --no-cache sqlite
fetch http://mirrors.aliyun.com/alpine/v3.9/main/x86_64/APKINDEX.tar.gz
fetch http://mirrors.aliyun.com/alpine/v3.9/community/x86_64/APKINDEX.tar.gz
(1/2) Installing readline (7.0.003-r1)
(2/2) Installing sqlite (3.28.0-r3)
Executing busybox-1.29.3-r10.trigger
OK: 46 MiB in 69 packages
/app # ls
log plugins themes
安裝完 sqlite 數據庫之後,是沒有建立 db 數據庫檔的。進入到 /app 根目錄可以看到 Typecho 的 plugin、log、themes 目錄都在這裏,以後想要使用一些外掛程式、或者主題的,可以使用命令 copy 到對應目錄。
稍後透過 web 頁面可以設定 db 數據庫配置以及賬號密碼。
第七步 ,返回到「歡迎存取 Typecho」頁面,點選「我準備好了, 開始下一步 」,設定數據庫連線、管理員的賬號和密碼。
開始安裝之後,進入到 /app/usr/ 目錄可以看到 Typecho 自動為我們建立了 663d0a575a814.db 數據庫檔。
/app # ls
LICENSE.txt README.md admin changelog.txt favicon.ico index.php install install.php tools typecho.db usr var
/app # cd usr
/data # ls
663d0a575a814.db config.inc.php log plugins themes
然後就可以安裝成功啦!
第八步 ,存取管理後台、前端頁面開始享用吧。
Typecho 官網直通車
GitHub - typecho/typecho
話說,很多人都在討論用什麽網誌,網上對比也多,題主對於用什麽網誌系統不太關註,還是快造內容吧。