# itranswarp **Repository Path**: liaoxuefeng/itranswarp ## Basic Information - **Project Name**: itranswarp - **Description**: Full-featured CMS including blog, wiki, discussion, etc. Cloud native application that powered by SpringBoot. - **Primary Language**: Unknown - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 2 - **Created**: 2023-04-07 - **Last Updated**: 2024-11-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # iTranswarp Full-featured CMS including blog, wiki, discussion, etc. Cloud native application that powered by SpringBoot. [![Github Workflow](https://github.com/michaelliao/itranswarp/actions/workflows/maven.yml/badge.svg)](https://github.com/michaelliao/itranswarp/actions) [![Docker Pulls](https://img.shields.io/docker/pulls/michaelliao/itranswarp?color=%2334D058&style=plastic)](https://hub.docker.com/repository/docker/michaelliao/itranswarp) * Based on SpringBoot 3.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 ### Quick Start Please check [Quick Start Guide](https://github.com/michaelliao/itranswarp/blob/master/quickstart/quickstart.md). ### 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](build.sh). ### Initialize database DDL and test data are generated by [SchemaBuilder.java](src/main/java/com/itranswarp/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](http://localhost:2019) for demo. ### Search Search is auto-enabled if RediSearch 2.x is detected. [How to install RediSearch in Redis](https://redis.io/docs/stack/search/quick_start/). ### 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](src/main/resources/application.yml) for environment variables. ### Deploy iTranswarp is deployed by Docker. Images can be pulled from [DockerHub](https://hub.docker.com/repository/docker/michaelliao/itranswarp). ``` ┌─────────────────────────────────────────┐ │ VPC │ │ ┌───────────┐ │ │ │ Docker │ ┌────────────┐│ https ┌──┴──┐ │┌─────────┐│ │ AWS:RDS ││ ◀───────────────────▶│ │ http ││ AWS:ECS ││◀───▶│ MySQL ││ https ┌─────┐ https │ ELB │◀────▶│└─────────┘│ └────────────┘│ ◀─────▶│ CDN │◀─────▶│ │ │┌─────────┐│ ┌────────────┐│ └─────┘ └──┬──┘ ││ AWS:ECS ││◀───▶│ElasticCache││ │ │└─────────┘│ │ Redis ││ │ └───────────┘ └────────────┘│ └─────────────────────────────────────────┘ ```