教你如何搭建自己的圖床

有關心情發表於2019-05-03

教你如何搭建自己的圖床

首先說明,在自己的網站上搭建圖床,一個是考慮到大多數人只有一臺伺服器;其次是,使用者只是偶爾需要用圖,付費圖床不合算。所以搭建一個自己的微型圖床顯然是最佳選擇。下面將用到 docker ,然後結合開源專案 Lychee。沒用過不要怕,因為之前我也只用來 “Hello World” 過。

以下操作基於:CentOS Linux release 7.5.1804 (Core) 。

第一步,安裝 docker :yum install docker
在這裡插入圖片描述

第二步,啟動 docker:systemctl start docker。也可以設定開機自啟:systemctl enable docker
在這裡插入圖片描述

第三步,把別人已經做好的映象拉下來(儘量不造輪子)。在 docker 中拉映象跟 Git 拉倉庫差不多,命令是:docker imgae pull。這裡需要拉的是 kdelfour/lychee-docker,所以完整命令:docker image pull kdelfour/lychee-docker
在這裡插入圖片描述

映象拉下來後,你可以用 ls 看一下是不是有這個映象了(docker image ls)。
在這裡插入圖片描述

第四步,啟動這個映象。需要說明的是埠對映的問題。由於我的伺服器已經搭了個人網站,也用的瀏覽器預設的 80 埠,所以圖床就不能用 80,我改用 5120,完整命令:docker run -it -d -p 5120:80 kdelfour/lychee-docker(訪問 5120 埠,對映到 docker 容器裡邊的 80 埠)。
在這裡插入圖片描述

命令 docker container ls 是檢視正在執行的容器。可以看到第一次用這個命令的時候,沒有容器在跑;啟動之後就有了。

第五步,訪問http://你的域名:5120。由於我是在本地的虛擬機器裡搭建,所以訪問的是 http://ip:5120
在這裡插入圖片描述

進入到初始化階段。可以看到 Database Host 、Data Name 和 Table predix 是選填,那我們就不管它。而 Username 和 Password 預設都是 lychee 。輸入後點選 connect,你會看到它要你新建一個使用者名稱和密碼,這是你之後登入圖床要用到的。
在這裡插入圖片描述

第六步,建立 ablum,上傳圖片。
在這裡插入圖片描述

右上角 + --> Upload Photo,然後就可以愉快的上傳圖片了。lychee 還提供了其他匯入圖片方式,點選符號 + 可自行按需選擇。更多用法請自己探索。

所以我們上傳的圖片到底去哪兒了呢。這時候我們需要先進入這個容器。命令 docker container ls 會顯示容器的 CONTAINER ID,拿到這個 ID 後,鍵入 docker container exec -it 9a8e6f34294a /bin/bash,就進入容器了。
在這裡插入圖片描述

現在可以 ls 一下,是不是感覺進入了一個 linux 終端,其實這就是 docker 想做的。然後關注 uploads 目錄,可以看到圖片就在 big 目錄下。
在這裡插入圖片描述

肯定會有人說臥槽,那我怎麼把圖片取出來呢?事實上,lychee 提供了網頁的下載方式,想在伺服器上操作也 OK 呀。把圖片名複製下來(這個經過 hash 處理,基本是獨一無二了),在你的伺服器上用 find 命令搜尋,不就找到它的絕對路徑了嘛!
在這裡插入圖片描述

你也可以指定儲存路徑,更多請見 GitHub :https://github.com/kdelfour/lychee-docker

最後附上解除安裝方式:

  • 先停止執行的容器:docker container stop [container-id]
  • 然後刪除容器:docker container rm [container-id]
  • 最後刪除映象:docker image rmi [image-id]

獲取對應的 id 可以通過命令:docker container lsdocker image ls
在這裡插入圖片描述

相關文章