Full-featured CMS including blog, wiki, discussion, etc. Cloud native application that powered by SpringBoot.
- Based on SpringBoot 2.x
- Search support
- OAuth2 integration (weibo, QQ, facebook, etc.)
- SEO support
- REST API
- Customized CSS with UIkit2
- JDK 17
- MySQL 5.7
- Redis 5/6
$ mvn -DskipTests=true clean package
Or check build.sh.
DDL and test data are generated by SchemaBuilder.java.
Create schema:
$ mysql -u root -p < release/ddl.sql
NOTE: re-run this SQL file will remove all existing data.
Import test data:
$ mysql -u root -p it < release/init.sql
java -jar itranswarp.jar
Search is auto-enabled if RediSearch 2.x is detected. How to install RediSearch in Redis.
All configurations are passed by environments:
$ PROFILES=production TIME_ZONE=Asia/Shanghai DOMAIN=example.com \
DB_HOST=localhost DB_PASSWORD=changeit \
REDIS_HOST=localhost \
java -jar itranswarp.jar
Please check application.yml for environment variables.
iTranswarp is deployed by Docker. Images can be pulled from DockerHub.
┌─────────────────────────────────────────┐
│ VPC │
│ ┌───────────┐ │
│ │ Docker │ ┌────────────┐│
https ┌──┴──┐ │┌─────────┐│ │ AWS:RDS ││
◀───────────────────▶│ │ http ││ AWS:ECS ││◀───▶│ MySQL ││
https ┌─────┐ https │ ELB │◀────▶│└─────────┘│ └────────────┘│
◀─────▶│ CDN │◀─────▶│ │ │┌─────────┐│ ┌────────────┐│
└─────┘ └──┬──┘ ││ AWS:ECS ││◀───▶│ElasticCache││
│ │└─────────┘│ │ Redis ││
│ └───────────┘ └────────────┘│
└─────────────────────────────────────────┘