- Java 17
- Spring Boot 3.2.1
- Spring Web
- JPA
- PostgreSQL
- Lombok
- Swagger
- Docker-compose
- Railway
- Postman
- Acesse Spring Initializr e configure o projeto com as dependências necessárias.
- Adicione as dependências do Spring Web, JPA, Lombok e outras necessárias.
- Crie a entidade, o controller e o repository para a aplicação Spring Boot.
- Adicione a dependência do Swagger ao seu projeto no arquivo
pom.xml:
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>2.0.2</version>
</dependency>- Acesse
localhost:8080/swagger-ui/index.htmlpara visualizar a documentação.
- Configure as propriedades do banco de dados PostgreSQL no arquivo
application.properties:
spring.datasource.url=jdbc:postgresql://localhost:5432/seubanco
spring.datasource.username=postgres
spring.datasource.password=1234Crie um arquivo docker-compose.yml com a seguinte configuração:
version: "3.8"
services:
dcs-postgres:
image: postgres:15.3-alpine
container_name: deploy-spring-postgres
restart: always
environment:
POSTGRES_PASSWORD: 1234
POSTGRES_USER: postgres
ports:
- 5432:5432
volumes:
- ./data/postgres:/var/lib/postgresql/data
networks:
default:
name: local-network
external: true- Acesse o site da Railway e faça login com sua conta do GitHub.
- Escolha o repositório da aplicação que você deseja subir na nuvem.
Crie uma branch develop para o desenvolvimento contínuo do seu projeto.
Após o deploy no Railway, teste a aplicação acessando a URL fornecida pela plataforma.
Configure as variáveis de ambiente no Railway para a conexão com o banco de dados PostgreSQL.
Passo 10: Teste a aplicação que está na nuvem no Postman, para ter a certeza de que a comunicação em nuvem esteja funcionando.
https://{nomedasuaaplicacao}.up.railway.app/users
https://{nomedasuaaplicacao}.up.railway.app/users