# 在 Docker 中運行 SS CMS
使用 Docker 容器技術可以在一分鐘內快速方便的部署好 SSCMS 系統,這種部署方式減少了環境部署,可靠性強,容易維護。
# 1、獲取 SSCMS 官方鏡像
拉取最新版本的 SS CMS 鏡像 (opens new window),運行命令:
docker pull sscms/core:latest
如果需要獲取指定版本的 SS CMS 鏡像 (opens new window),可以運行命令:
docker pull sscms/core:<版本號>
# 2、運行 SS CMS 容器
在當前文件夾下創建 wwwroot
目錄:
mkdir wwwroot
接下來,我們使用 SQLite 本地數據庫運行 SSCMS:
docker run -d \
--name my-sscms \
-p 80:80 \
--restart=always \
-v "$(pwd)"/wwwroot:/app/wwwroot \
-e SSCMS_SECURITY_KEY=e2a3d303-ac9b-41ff-9154-930710af0845 \
-e SSCMS_DATABASE_TYPE=SQLite \
sscms/core:latest
-d
參數讓容器以后臺任務形式運行-name
參數將容器實例命名為 my-sscms,可以更換為其他名稱-p
參數映射容器的80端口到宿主機的80端口,如果希望使用8080端口訪問可以設置-p 8080:80
-restart
參數使得容器能夠自動重啟,必須使用always
選項,否則容器將無法安裝及升級插件-v
參數將當前文件夾下的wwwroot
目錄作為網站跟目錄,從而保存 SS CMS 站點數據,其中$(pwd)
代表當前文件夾-e
參數設置容器運行環境變量,SS CMS 系統將讀取環境變量,作為容器運行的參數,在此我們設置SecurityKey
為隨機的 GUID 值,數據庫類型為 SQLite- 最后我們將容器鏡像設置為之前下載的
sscms/core
鏡像
上面命令將運行 SSCMS 鏡像,,接下來,可以通過 http://localhost 獲取 http://host-ip 訪問 SSCMS 系統了。
除了將當前文件夾下的 wwwroot
目錄作為站點根目錄存儲數據,我們也可以將鏡像數據持久化存儲在 Volume 中:
docker run -d \
--name my-sscms \
-p 80:80 \
--restart=always \
-v volume-sscms:/app/wwwroot \
-e SSCMS_SECURITY_KEY=e2a3d303-ac9b-41ff-9154-930710af0845 \
-e SSCMS_DATABASE_TYPE=SQLite \
sscms/core:latest
此命令將自動創建名稱為 volume-sscms
的 Docker Volume。
# 3、環境變量配置
可以通過環境變量配置 SSCMS 運行參數:
SSCMS_SECURITY_KEY
必填項,SSCMS 客戶端與服務器端加密通訊使用的秘鑰,通常為 GUID 字符串
SSCMS_DATABASE_TYPE
必填項,SSCMS 使用的數據庫類型,可以為以下取值中的一種:
MySQL
: MySQL 數據庫SQLServer
: Microsoft SQLServer 數據庫PostgreSQL
: PostgreSQL 數據庫SQLite
: SQLite 數據庫
SSCMS_DATABASE_HOST
數據庫主機地址
SSCMS_DATABASE_PORT
數據庫訪問端口
SSCMS_DATABASE_USER
數據庫用戶名
SSCMS_DATABASE_PASSWORD
數據庫密碼
SSCMS_DATABASE_NAME
數據庫庫名
SSCMS_DATABASE_CONNECTION_STRING
數據庫連接字符串
SSCMS_REDIS_CONNECTION_STRING
Redis 緩存連接字符串
如果 SSCMS_DATABASE_TYPE
設置為 SQLite 本地數據庫,數據庫將存儲在 wwwroot/sitefiles/database.sqlite
文件中,如果 SSCMS_DATABASE_TYPE
設置為其他數據庫類型,則還需要設置數據庫環境變量。
數據庫環境變量可以通過指定 SSCMS_DATABASE_HOST
、SSCMS_DATABASE_PORT
、SSCMS_DATABASE_USER
、SSCMS_DATABASE_PASSWORD
以及 SSCMS_DATABASE_NAME
進行設置,也可以通過 SSCMS_DATABASE_CONNECTION_STRING
直接設置,兩種方式選擇其中一種。
# 4、安裝 SS CMS 系統
至此,我們可以開始正式安裝 SS CMS 系統了。
TIP
如果在云服務器環境中安裝,請先配置安全組,確保網站地址及端口能夠被外網訪問。
打開瀏覽器,訪問地址 http://<IP地址或域名>/ss-admin/install
,進入 SS CMS 系統安裝界面:
勾選我已經閱讀并同意此協議,進入環境檢測界面:
可以看到,運行環境現在為容器,點擊下一步,進入數據庫設置界面:
SSCMS 系統將根據容器運行時設置的環境變量獲取數據庫信息,點擊下一步,進入緩存設置界面:
SSCMS 系統將根據容器運行時是否設置Redis連接字符串環境變量判斷緩存類型,點擊下一步,進入管理員設置界面:
在管理員設置界面中設置超級管理員的用戶名及密碼,設置完成后點擊下一步,系統將顯示安裝成功界面:
點擊 進入管理后臺
按鈕進入后臺,至此,SS CMS 系統安裝完畢。