{"id":23278475,"url":"https://github.com/andrew-boutin/micro-api","last_synced_at":"2026-04-08T16:02:31.036Z","repository":{"id":82226319,"uuid":"105829269","full_name":"andrew-boutin/micro-api","owner":"andrew-boutin","description":"Docker stack with Spring Boot REST API and PostgreSQL database.","archived":false,"fork":false,"pushed_at":"2019-02-06T19:48:50.000Z","size":20310,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-02T09:09:52.907Z","etag":null,"topics":["docker","docker-stack","gradle","postgresql","spring","spring-boot"],"latest_commit_sha":null,"homepage":"https://andrew-boutin.github.io/micro-api/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/andrew-boutin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-10-04T23:20:35.000Z","updated_at":"2019-10-04T14:54:36.000Z","dependencies_parsed_at":"2023-04-05T10:46:36.475Z","dependency_job_id":null,"html_url":"https://github.com/andrew-boutin/micro-api","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/andrew-boutin/micro-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrew-boutin%2Fmicro-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrew-boutin%2Fmicro-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrew-boutin%2Fmicro-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrew-boutin%2Fmicro-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andrew-boutin","download_url":"https://codeload.github.com/andrew-boutin/micro-api/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrew-boutin%2Fmicro-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31562697,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T14:31:17.711Z","status":"ssl_error","status_checked_at":"2026-04-08T14:31:17.202Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","docker-stack","gradle","postgresql","spring","spring-boot"],"created_at":"2024-12-19T22:31:45.669Z","updated_at":"2026-04-08T16:02:31.011Z","avatar_url":"https://github.com/andrew-boutin.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Micro API\n\nMicro API is all about REST API micro-services architecture.\n\nIt comprises a Spring Boot REST API built with Gradle and a PostgreSQL database. Both are ran inside of Docker\ncontainers in a Docker stack.\n\nEventually this will have other components such as UI, Gateway, 2nd REST API, Auth, and Cache added to it.\n\n## Requirements\n\nInstall Docker.\n\nEnable Docker experimental features (swarm).\n\n    docker swarm init\n    docker network create --scope=swarm --driver overlay micro-network\n\nThis initializes swarm and creates a network that can span multiple hosts.\n\n## Commands\n\n### Docker Stack running REST API and Postgres\n\n    # Produce local jar of Spring Boot application.\n    ./gradlew build\n\n    # Create the Docker image for our REST API.\n    docker build -t bbs/rest_api .\n\n    # Create the Docker image for our PostgreSQL.\n    docker build -t bbs/db postgres/.\n\n    # Start up the stack which starts both the containers.\n    docker stack deploy -c micro-services-stack.yml micro-stack\n\n    # Tear down the stack.\n    docker stack rm micro-stack\n\n### Other Useful Information\n\n`./gradlew bootRun` - Use the Gradle Wrapper to build and run the Spring Boot application locally.\n\n[Docker stack commands](https://docs.docker.com/engine/reference/commandline/stack/).\n\n[Gradle commands](https://docs.gradle.org/current/userguide/tutorial_gradle_command_line.html).\n\n## Other Tools\n\n[Postman](https://www.getpostman.com/) - REST API GUI tool for development. \"A powerful GUI platform to make your API\ndevelopment faster \u0026 easier, from building API requests through testing, documentation and sharing.\"\n\n[pgAdmin](https://www.pgadmin.org/) - PostgreSQL UI tool that you can connect to the PostgreSQL Docker container\nwhile it's running in the stack. This makes admin and development easier than connecting to the Docker container on the\ncommand line.\n\n[Kitematic](https://kitematic.com/) - Docker UI tool that helps seeing what containers are running, easily\naccessing the logs, and other useful things. This should automatically detect any running Docker containers and allow\nyou to easily access them.\n\n---\n\nCheck out my [personal site](https://andrewboutin.com)!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandrew-boutin%2Fmicro-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandrew-boutin%2Fmicro-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandrew-boutin%2Fmicro-api/lists"}