ไธไธชไฝฟ็จGo๏ผGin, GORM๏ผๅReactๆๅปบ็็ฎก็ๅๅฐ็ณป็ปใ
Go React Adminๆฏไธไธชๅบไบๅๅ็ซฏๅ็ฆปๆถๆ็็ฐไปฃๅ็ฎก็็ณป็ป๏ผไธไธบ้่ฆๅฟซ้ๆๅปบไผไธ็บงๅๅฐๅบ็จ็ๅผๅ่ ่ฎพ่ฎกใๅ็ซฏ้็จGolang Ginๆกๆถ๏ผๅ็ซฏ้็จReactๆกๆถ๏ผๆฐๆฎๅบไฝฟ็จMySQLใ็ณป็ปๆฏๆๅค็งๆทๆถๆ๏ผ้ ็ฝฎ้็จ็ฏๅขๅ้๏ผ.envๆไปถ๏ผๆ ผๅผใ
ไธป่ฆๅ่ฝๅ ๆฌๆ้็ฎก็ใ็จๆท็ฎก็ใ่ง่ฒ็ฎก็ใ่ๅ็ฎก็ใAPI็ฎก็ใๆฅๅฟ็ฎก็็ญ๏ผ้็จไบๅ็งไผไธ็บงๅบ็จๅบๆฏใ
Go React Admin ๅจ็บฟไฝ้ช http://hantukeji.net:13000/
- ็จๆทๅ๏ผadmin
- ๅฏ็ ๏ผ123456
- ๆ้็ฎก็: ๅบไบJWTๅฎ็ฐ็ป็ฒๅบฆๆ้ๆงๅถ
- ็จๆท็ฎก็: ๆฏๆ็จๆทไฟกๆฏ็ๅขๅ ๆนๆฅๅ็ถๆ็ฎก็
- ่ง่ฒ็ฎก็: ๅฏไปฅไธบ่ง่ฒๅ้ ไธๅ็APIๆ้ๅ่ๅๆ้
- ่ๅ็ฎก็: ๅฎ็ฐ็จๆทๅจๆ่ๅ้ ็ฝฎๅไธๅ่ง่ฒไธๅ่ๅๅฑ็คบ
- API็ฎก็: ๆฏๆAPIๆฅๅฃ็ๅขๅ ๆนๆฅๅๅ็ป็ฎก็
- ๆฅๅฟ็ฎก็: ่ฎฐๅฝ็จๆท็ปๅฝไฟกๆฏๅๆไฝ่กไธบ
- ๅค็งๆทๆฏๆ: ๅฎ็ฐ็งๆทๆฐๆฎ้็ฆปๅ็งๆท็บงๅซ็ๆ้ๆงๅถ
- ๅๅบๅผ่ฎพ่ฎก: ้้ ไธๅ่ฎพๅคๅฑๅนๅฐบๅฏธ
- ็ผ็จ่ฏญ่จ: Golang
- Webๆกๆถ: Gin
- ORMๆกๆถ: GORM
- ่ฎค่ฏๆบๅถ: JWT
- ้ ็ฝฎ็ฎก็: ็ฏๅขๅ้ (.envๆไปถ)
- ๆฅๅฟๆกๆถ: Zap
- ็ผๅญ: Redis
- ๆฐๆฎๅบ: MySQL (8.0+)
- ๆกๆถ: React 18+
- ่ทฏ็ฑ: React Router v6
- ๆๅปบๅทฅๅ ท: React Scripts
go-react-admin/
โโโ server/ # ๅ็ซฏGoๆๅก
โ โโโ api/ # APIๅค็ๅฝๆฐ
โ โโโ config/ # ้
็ฝฎๆไปถ
โ โโโ global/ # ๅ
จๅฑๅ้
โ โโโ initialize/ # ๅๅงๅๅฝๆฐ
โ โโโ middleware/ # ไธญ้ดไปถ
โ โโโ model/ # ๆฐๆฎๆจกๅ
โ โโโ router/ # ่ทฏ็ฑๅฎไน
โ โโโ utils/ # ๅทฅๅ
ทๅฝๆฐ
โ โโโ main.go # ไธป็จๅบๅ
ฅๅฃ
โ โโโ go.mod # Goๆจกๅๅฎไน
โโโ web/ # ๅ็ซฏReactๅบ็จ
โโโ public/ # ้ๆ่ตๆบ
โโโ src/ # ๆบไปฃ็
โโโ assets/ # ้ๆ่ตๆบ
โโโ components/ # ็ปไปถ
โโโ pages/ # ้กต้ข
โโโ routes/ # ่ทฏ็ฑ้
็ฝฎ
โโโ store/ # ็ถๆ็ฎก็
โโโ utils/ # ๅทฅๅ
ทๅฝๆฐ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Client (React Frontend) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ HTTPS/API
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Load Balancer โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโ
โ โ โ
โโโโโโโโโผโโโโโโโโโ โโโโโโโโโผโโโโโโโโโ โโโโโโโโโผโโโโโโโโโ
โ Web Server 1 โ โ Web Server 2 โ โ Web Server N โ
โ (Gin Backend) โ โ (Gin Backend) โ โ (Gin Backend) โ
โโโโโโโโโฌโโโโโโโโโ โโโโโโโโโฌโโโโโโโโโ โโโโโโโโโฌโโโโโโโโโ
โ โ โ
โโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโผโโโโโโโโโโ
โ Redis โ
โ (Session/Cache) โ
โโโโโโโโโโโฌโโโโโโโโโโ
โ
โโโโโโโโโโโผโโโโโโโโโโ
โ MySQL โ
โ (Multi-tenant) โ
โโโโโโโโโโโโโโโโโโโโโ
# ่ฟๅ
ฅๅ็ซฏ็ฎๅฝ
cd server
# ๅฎ่ฃ
ไพ่ต
go mod tidy
# ่ฟ่กๆๅก
go run main.go
# ่ฟๅ
ฅๅ็ซฏ็ฎๅฝ
cd web
# ๅฎ่ฃ
ไพ่ต
npm install
# ๅฏๅจๅผๅๆๅกๅจ
npm start
- ่ดฆๅท๏ผadmin
- ๅฏ็ ๏ผ123456
- ็จๆท่ฎค่ฏ (JWT)
- ็จๆท็ฎก็
- ่ง่ฒ็ฎก็
- ่ๅ็ฎก็
- API็ฎก็
- ๆฅๅฟ็ฎก็
- ๅค็งๆทๆฏๆ
- ๆ้ๆงๅถ
- ๆฐๆฎ็ป่ฎก
- ็ณป็ป้ ็ฝฎ
้กน็ฎๆฏๆ Docker ๅฎนๅจๅ้จ็ฝฒ๏ผๆไพ Docker Compose ้ ็ฝฎๆไปถ๏ผๅฏไธ้ฎๅฏๅจๆๆไพ่ตๆๅกใ
# ไฝฟ็จ Docker Compose ๅฏๅจ
docker-compose up -d
้กน็ฎๅผๅๅไธบๅไธช้ถๆฎต๏ผ
- ๅบ็กๆกๆถๆญๅปบ: ๅๅงๅ้กน็ฎ็ปๆ๏ผ้ๆๅบ็กๆๆฏๆ
- ๆ ธๅฟๅ่ฝๅผๅ: ๅฎ็ฐ่ฎค่ฏๆๆใ็จๆทใ่ง่ฒใ่ๅใAPIใๆฅๅฟ็ญๆ ธๅฟๆจกๅ
- ็ณป็ปๅฎๅ: ๆง่ฝไผๅใๅฎๅ จๅ ๅบใๅฎๅๆต่ฏ
- ้จ็ฝฒไธๆๆกฃ: ็ผๅ้จ็ฝฒๆๆกฃ๏ผๅฎๅๅ็ฑปๆๅ
ๆฌข่ฟๆไบค Issue ๅ Pull Request ๆฅๅธฎๅฉๆน่ฟ้กน็ฎใ
MIT License