Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/michaelliao/itranswarp
Full-featured CMS including blog, wiki, discussion, etc. Cloud native application that powered by SpringBoot.
https://github.com/michaelliao/itranswarp
blog cms discussion java springboot3 wiki
Last synced: 6 days ago
JSON representation
Full-featured CMS including blog, wiki, discussion, etc. Cloud native application that powered by SpringBoot.
- Host: GitHub
- URL: https://github.com/michaelliao/itranswarp
- Owner: michaelliao
- License: gpl-3.0
- Created: 2019-03-11T14:04:35.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-04-10T01:13:44.000Z (7 months ago)
- Last Synced: 2024-07-31T09:11:33.003Z (3 months ago)
- Topics: blog, cms, discussion, java, springboot3, wiki
- Language: Java
- Homepage: https://www.liaoxuefeng.com
- Size: 58.7 MB
- Stars: 788
- Watchers: 37
- Forks: 351
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome - michaelliao/itranswarp - Full-featured CMS including blog, wiki, discussion, etc. Cloud native application that powered by SpringBoot. (Java)
- awesome-hacking-lists - michaelliao/itranswarp - Full-featured CMS including blog, wiki, discussion, etc. Cloud native application that powered by SpringBoot. (Java)
- awesome-starred - michaelliao/itranswarp - Full-featured CMS including blog, wiki, discussion, etc. Cloud native application that powered by SpringBoot. (java)
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 ││
│ └───────────┘ └────────────┘│
└─────────────────────────────────────────┘
```