## [PHP交流群:494826865(點擊群號立即加群)](https://jq.qq.com/?_wv=1027&k=50Qy5h6)
# swoft的安裝
sowft的安裝方式有多種,官方推薦,使用`docker`或者使用`docker-compose`進行安裝。
1. 使用docker安裝
~~~
# 接取swoft鏡像
docker pull swoft/swoft
# 創建并運行容器,如果本地沒有找到對應的鏡像會自動拉取(注意端口不要沖突)
docker run [-it] -p 18306:18306 --name swoft swoft/swoft [bash]
~~~
>[success] 這里只安裝swoft,如果需要mysql和redis的話需要另外單獨安裝。
>[danger]使用這種方式安裝后,其實只是部署了Swoft的運行環境,并安裝了默認的Swoft的Demo。在實際的開發中,并不能直接在容器中進行開發,需要使容器代碼和本地代碼進行同步。后面會做詳細的介紹。
2. 使用`docker-compose`安裝
~~~
# 這種方式的需要編寫`docker-compose.yml`這個文件,執行時需要切換到swoft的項目根目錄
git clone https://github.com/swoft-cloud/swoft
cd swoft
composer update/composer install
docker-compose up
?
~~~
更改composer鏡像
~~~
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
~~~
> 這種方式,可以根據自己的需要安裝`mysql`和`redis`
docker-compose.yml
~~~
version: '3.4'
services:
swoft:
? image: swoft/swoft
# ? for local develop
# 覆蓋容器啟動后默認執行的命令
# ? command: php -S 127.0.0.1:13300
? container_name: swoft-srv
? environment:
? ? - APP_ENV=dev
? ? - TIMEZONE=Asia/Shanghai
? restart: always
? depends_on:
? ? - mysql
? ? - redis
? ports:
? ? - "18306:18306"
? ? - "18307:18307"
? ? - "18308:18308"
? volumes:
? ? ? - ./:/var/www/swoft
?# - ./:/var/www/swoft:delegated
?# - ./:/var/www/swoft:cached
? ? ?# - ./runtime/ng-conf:/etc/nginx
? ? ?# - ./runtime/logs:/var/log
?
mysql:
? image: mysql # mysql 版本默認是8.0
? container_name: mysql-srv
? environment:
? ? - MYSQL_ROOT_PASSWORD=123456
? ports:
? ? - "13306:3306"
? volumes:
? ? - ./runtime/data/mysql:/var/lib/mysql
? restart: always
?
redis:
? container_name: redis-srv
? image: redis:4-alpine
? ports:
? ? - "16379:6379"
? sysctls:
? ? net.core.somaxconn: 65535
? restart: always
?
~~~
>[success] 以上方式swoft安裝后,一般默認會將`php bin/swoft http:start`作為容器的第一個進程,無法停止!這要的話不利于后期的手動啟動服務。
>[danger]使用這種方式安裝之后,默認情況下已做了源碼同步。所以一般建議使用這種方式進行安裝。
- 前言
- 第一部分:課程介紹
- 第二部分:docker的快速入門
- docker的安裝
- docker的運行和配置
- docker操作過程中的常見問題
- Docker的常用命令
- 第三部分 Swoft的開發環境部署和工具的安裝
- 第四部分:Swoft的安裝和常見問題
- swoft的安裝
- swoft代碼同步
- Swoft的熱重載
- swoft安裝過程中的常見問題
- 第五部分:swoft的基礎知識快速入門
- 目錄結構
- 控制器
- 路由
- 配置
- 請求與響應
- 中間件
- 異常處理
- 視圖
- Bean
- 數據庫操作
- http-session
- 驗證器
- 第六部分:實戰
- Swoft的安裝(本地)
- Swoft的環境部署
- 調整項目目錄結構
- 前臺頁面部署
- 前臺首頁
- 引入前端資源
- 其它頁面的引入
- 后臺功能的實現
- 創建并連接數據庫
- 管理員登錄功能的實現
- 代碼優化-函數
- 代碼優化-全局異常處理
- 代碼結構分層
- 完善管理員的登錄功能
- 管理員密碼修改功能的實現
- 管理員登錄補充
- 站點配置功能的實現
- 后臺菜單處理
- 課程管理功能
- 創建數據表并創建實體
- 實現課程的添加功能
- 文件上傳
- 課程列表功能的實現
- 課程編輯功能的實現
- 課程的刪除功能
- 課程推薦功能的實現
- 前臺數據調用