# 請不要安裝`寶塔系統加固`切記!!!!!!!
## 系統版本是 `CentOS7.x`
## 寶塔面板安裝
這里以`CentOS7.x`(其他系統不支持開機啟動,和異常退出后自動重啟服務) ,寶塔Linux面板7.1(穩定版)為例登錄服務器執行下面命令
```
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install\_6.0.sh && sh install.sh
```
> 輸入 y 回車確認 等待一會兒面板即可安裝成功

> 打開瀏覽器輸入ip地址+端口號登錄 用提示的賬號和密碼,一定要按照以下截圖選擇組件勾選`編譯安裝`,選好對應的版本點擊 **一鍵安裝**


> 之后會顯示編譯進度等待安裝完成即可
> 然后進入寶塔` 軟件管理 > 運行環境` 選擇你新建站點的時候選的php版本點擊設置 然后安裝 `redis` 擴展
>

> 在安裝php 的redis擴展的同時寶塔最新面板會自動安裝自帶的redis服務,這時候要去卸載自帶的redis服務不然,docker版本的redis會啟動不起來端口占用
>

## 3.首先安裝docker
### 首先SSH進入到 `/www` 在命令行執行 `cd /www`
> 1.卸載舊的docker版本
```
sudo yum remove -y docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
```
> 2.安裝docker依賴
~~~
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
~~~
> 3.1 添加官方docker穩定版源(服務器在國外使用)二選一
~~~
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
~~~
>3.2 添加阿里云docker穩定版源(服務器在國內使用)二選一
```
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
```
> 4. 安裝docker
~~~
sudo yum install -y docker-ce docker-ce-cli containerd.io
~~~
> 5.啟動docker和設置docker 開機啟動
~~~
sudo systemctl start docker //啟動docker
sudo systemctl enable docker //設置開機啟動
~~~
#2. 安裝mongodb4.0 容器
> 1.下載mongodb鏡像
```
docker pull mongo:4.0
```

> 2.啟動mongodb容器
> --name mongodb4.0 參數是 docker啟動容器的名稱
> --memory 2G 設置容器使用的內存大小最低為1G
> --restart=always 開機啟動容器
> -p 27000:27017 映射物理機27000端口到容器內部端口27017端口
> -v $PWD/mongodb4.0:/data/db 設置當前目錄下的mongodb4.0目錄為數據庫存儲目錄請注意當前目錄的空間大小
```
docker run -itd \
--name mongodb4.0 \
--memory 2G \
--restart=always \
-p 127.0.0.1:27017:27017 \
-v $PWD/mongodb4.0:/data/db \
mongo:4.0
```
### 3.安裝redis5.0
> 1.下載redis鏡像
```
docker pull redis:5.0
```

>2.啟動redis5.0 如果啟動失敗請先卸載寶塔自帶的redis服務
```
docker run -itd \
--name redis5.0 \
--memory 2G \
--restart=always \
-p 127.0.0.1:6379:6379 \
-v $PWD/redis5.0:/data/db \
redis:5.0
```

> 安裝完成后在 `/www` 目錄會出現 這倆文件夾這倆文件夾請勿刪除不然,`數據庫丟失無法找回切記`

### 4.查看mongodb 和 redis 資源使用情況
```
docker stats redis5.0 --no-stream
docker stats mongodb4.0 --no-stream
```


> CONTAINER ID 容器ID
> NAME 容器名稱
> MEM USAGE 已使用的內存
> LIMIT 限制的內存大小
> CPU % CPU百分比
> NET I/O 網絡IO使用
> BLOCK I/O 磁盤IO使用
> 然后以root用戶進入ssh 終端 `cd /tmp` 切換到這個目錄 然后依次執行下面的命令然后會輸出一個 `mongodb.so` 文件的路徑 此刻 擴展so文件已經編譯成功
```
wget -c https://pecl.php.net/get/mongodb-1.5.3.tgz
tar -zxvf mongodb-1.5.3.tgz
cd mongodb-1.5.3
/www/server/php/72/bin/phpize
./configure --with-php-config=/www/server/php/72/bin/php-config
make && make install
```

> 然后 復制 `extension=mongodb.so` 到剛才安裝redis 的php版本,打開配置文件 拉到最下面復制進去 然后點擊保存

> 然后依次點擊 `重載配置 > 重啟` 然后在點擊 `phpinfo` 搜索 `mongodb` 字樣 如果出現的話證明安裝成功

>或者 新版的寶塔會在phpinfo 的選項內直接顯示 `mongodb` 字樣
