# 在 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 系統安裝完畢。

上次更新: 2020/11/3 上午10:21:48
捕鱼大亨为什么玩不了 香港曾道人特码玄机网 幸运快三大小预测神器 新疆时时彩走势淘宝彩票 河南快三今天开奖查询 pt电子是什么单位|Welcome 5分赛车开奖官网 陕西快乐10分在线预测 江苏快三乐 广东快乐10分软件 云南快乐十分前三直选 辽宁35选7中过最大的奖励 秒速飞艇网址 山西快乐十分钟彩票控 09电竞 im觉醒 越南河内五分彩官网走势图 bet365怎么混合过关