Skip to content

Full-featured CMS including blog, wiki, discussion, etc. powered by SpringBoot.

License

Notifications You must be signed in to change notification settings

fancyideas/itranswarp

 
 

Repository files navigation

iTranswarp

Full-featured CMS including blog, wiki, discussion, etc. Cloud native application that powered by SpringBoot.

Github Workflow

Docker Pulls

  • Based on SpringBoot 2.x
  • Search support
  • OAuth2 integration (weibo, QQ, facebook, etc.)
  • SEO support
  • REST API
  • Customized CSS with UIkit2

Environment

  • JDK 17
  • MySQL 5.7
  • Redis 5/6 with RediSearch 2

Run with Docker

Run MySQL, RediSearch in background:

cd dev
docker-compose up -d

Run iTranswarp application:

docker run -d -p 2019:2019 --rm \
  --env-file /path/to/env-file \
  -v /var/log/itranswarp:/var/log/itranswarp \
  --name itranswarp michaelliao/itranswarp:1.4

Build

$ mvn -DskipTests=true clean package

Or check build.sh.

Initialize database

DDL and test data are generated by SchemaBuilder.java.

Create schema:

$ mysql -u root -p < dev/sql/ddl.sql

NOTE: re-run this SQL file will remove all existing data.

Import test data:

$ mysql -u root -p it < dev/sql/init.sql

Run

java -jar itranswarp.jar

Visit http://localhost:2019 for demo.

Search

Search is auto-enabled if RediSearch 2.x is detected. How to install RediSearch in Redis.

Configuration

All configurations are passed by environments:

$ PROFILES=production TIME_ZONE=Asia/Shanghai DOMAIN=www.example.com \
  DB_HOST=localhost DB_PASSWORD=changeit \
  REDIS_HOST=localhost \
  java -jar itranswarp.jar

Please check application.yml for environment variables.

Deploy

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    ││
                        │         └───────────┘     └────────────┘│
                        └─────────────────────────────────────────┘

About

Full-featured CMS including blog, wiki, discussion, etc. powered by SpringBoot.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 45.9%
  • CSS 26.5%
  • HTML 22.7%
  • JavaScript 4.5%
  • Lua 0.3%
  • Shell 0.1%