116 lines
2.9 KiB
Markdown
116 lines
2.9 KiB
Markdown
# JasperReports Server - Docker
|
|
|
|
Ambiente Dockerizado do **JasperReports Server 8.2.0 Community Edition** usando:
|
|
- **Tomcat 9** (imagem base `tomcat:9.0-jdk11-temurin`)
|
|
- **PostgreSQL 14** (container separado)
|
|
- **Docker Compose** para orquestração
|
|
|
|
---
|
|
|
|
## 📂 Estrutura do Projeto
|
|
|
|
```
|
|
jasperserver/
|
|
├── Dockerfile
|
|
├── docker-compose.yml
|
|
├── .env ← variáveis de ambiente
|
|
├── entrypoint.sh ← inicialização automática
|
|
├── config/
|
|
│ └── default_master.properties ← configuração do instalador
|
|
├── downloads/
|
|
│ ├── download.sh ← script de download do instalador
|
|
│ └── TIB_js-jrs-cp_8.2.0_bin.zip ← (você deve baixar este arquivo)
|
|
└── README.md
|
|
```
|
|
|
|
---
|
|
|
|
## 🚀 Passo a Passo
|
|
|
|
### 1. Baixar o instalador do JasperReports
|
|
|
|
```bash
|
|
chmod +x downloads/download.sh
|
|
bash downloads/download.sh
|
|
```
|
|
|
|
> Se o download automático falhar, baixe manualmente de:
|
|
> https://sourceforge.net/projects/jr-community-installers/files/Server/
|
|
> e coloque o arquivo `TIB_js-jrs-cp_8.2.0_bin.zip` na pasta `downloads/`.
|
|
|
|
### 2. Configurar variáveis de ambiente
|
|
|
|
Edite o arquivo `.env` se necessário (senhas, portas, etc.):
|
|
|
|
```bash
|
|
nano .env
|
|
```
|
|
|
|
### 3. Fazer o build da imagem
|
|
|
|
```bash
|
|
docker compose build
|
|
```
|
|
|
|
> ⚠️ O build copia o ZIP (~700MB) e extrai dentro da imagem. Pode levar alguns minutos.
|
|
|
|
### 4. Subir os containers
|
|
|
|
```bash
|
|
docker compose up -d
|
|
```
|
|
|
|
### 5. Acompanhar os logs
|
|
|
|
```bash
|
|
docker compose logs -f jasperserver
|
|
```
|
|
|
|
A **primeira inicialização** instala o JasperReports Server no banco de dados PostgreSQL — isso pode levar **3 a 5 minutos**.
|
|
|
|
### 6. Acessar o JasperReports Server
|
|
|
|
Após a inicialização:
|
|
|
|
- **URL:** http://localhost:8080/jasperserver
|
|
- **Usuário:** `jasperadmin`
|
|
- **Senha:** `jasperadmin`
|
|
|
|
---
|
|
|
|
## 🛑 Parar os Containers
|
|
|
|
```bash
|
|
docker compose down
|
|
```
|
|
|
|
Para remover também os volumes (banco de dados):
|
|
|
|
```bash
|
|
docker compose down -v
|
|
```
|
|
|
|
---
|
|
|
|
## ⚙️ Configurações Disponíveis no `.env`
|
|
|
|
| Variável | Padrão | Descrição |
|
|
|---|---|---|
|
|
| `POSTGRES_USER` | `jasper` | Usuário do PostgreSQL |
|
|
| `POSTGRES_PASSWORD` | `12345678@a` | Senha do PostgreSQL |
|
|
| `POSTGRES_DB` | `jasperserver` | Nome do banco de dados |
|
|
| `JS_DB_HOST` | `postgres` | Host do banco (nome do serviço Docker) |
|
|
| `JS_DB_PORT` | `5432` | Porta do PostgreSQL |
|
|
| `JS_DB_USERNAME` | `jasper` | Usuário para conexão do JasperServer |
|
|
| `JS_DB_PASSWORD` | `12345678@a` | Senha para conexão do JasperServer |
|
|
| `JS_DB_NAME` | `jasperserver` | Nome do banco do JasperServer |
|
|
|
|
---
|
|
|
|
## 📋 Referências
|
|
|
|
- [GEMINI.md](./GEMINI.md) — Guia de instalação standalone (base deste projeto)
|
|
- [JasperReports Server no SourceForge](https://sourceforge.net/projects/jr-community-installers/)
|
|
- [Imagem Docker Tomcat 9](https://hub.docker.com/_/tomcat)
|
|
- [Imagem Docker PostgreSQL 14](https://hub.docker.com/_/postgres)
|