即便我已經開了這個部落格,我還是常常在想,該如何寫文章才能快速、簡單又有效率。WordPress 是很棒的部落格軟體也有很多我喜愛的特色,但我覺得它在上傳圖片及發表文章的速度實在很慢。
即時預覽功能也是我最想要的特色,而 HackMd 在這方便表現的很不錯,所以我決定用 HackMd 來寫我的日誌文章,然後只要複製貼上到 WordPress 部落格上即可。 (裝了一些好用的 Markdown 外掛)
HackMd 截圖:
在文章裡的圖片都會自動上傳到 imgur 圖床,所以我連備分圖片都不用理會。以這個例子,圖片是放在 imgur 而不是自己的網站上。
必備條件
- 基礎的 linux 命列列使用。
- 安裝 VirtualBox 在你的機器上。
- 安裝 Vagrant 在你的機器上。
步驟
假設您以經裝了 VirtualBox 和 Vagrant 在你的機器上。
1. 啟動 Vagrant 機器
切換目前的工作目錄到放置 vagrantfile 的目錄,以這篇教學來說,目錄在 /terryl-example/vagrant
。
terryl-example/
├── data/ - 虛擬機和實體機的共用目錄
└── vagrant/ - Vargrant 工作目錄
└── Vagrantfile
Vargrantfile example:
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/bionic64"
config.vm.box_check_update = false
config.vm.hostname = "example.terryl.in"
config.vm.network "private_network", ip: "192.168.12.34"
config.vm.synced_folder "../data", "/data"
config.vm.provider "virtualbox" do |vb|
vb.memory = "1024"
vb.name = "terryl.in - example"
end
end
這個例子使用 192.168.12.34
做主要的 IP 位址。
以下指令啟動 Vagrant。
vagrant up
2. 登入 Vagrant 機器
vagrant ssh
把使用者身份從 vagrant 切換至 root。
sudo su
3. 安裝 Docker 及 Docker-compose
apt-get update
apt-get install docker
apt-get install docker-compose -y
4. 複製 HackMD 存儲庫
HackMD 團隊已經有提供一個 Docker 印象檔在這裡.
cd /home
git clone https://github.com/hackmdio/codimd-container.git
這個指令會在 /home
資料夾中建立一個 codimd-container
資料夾。
5. 啟動 HackMD docker 容器
cd codimd-container
docker-compose up
一旦 docker 容器開始運作,你會看到如下的畫面。
現在可以連上 192.168.12.34:30000
使用 HackMd 寫文章了。
備份
如果你想要備份你的資料,同時 HackMd 的 docker 容器也在運行的時候,開啟一個新的終端機,並打上以下指令:
docker-compose exec database pg_dump hackmd -U hackmd > backup.sql
還原備份檔:
cat backup.sql | docker exec -i $(docker-compose ps -q database) psql -U hackmd
其實這篇文章是拿來當這個版型 Demo 文章用的。就這樣。
後記
後來覺得這樣還是很麻煩,所以乾脆自己寫了一套在 WordPress 上使用的 Markdown 編輯器外掛名叫 WP Githuber MD,所以這篇文章我本人已經不使用了。如果您也有使用 WordPress,歡迎下載使用喔!
留言