{"id":16725275,"url":"https://github.com/unfor19/aws-sdk-cpp-examples","last_synced_at":"2026-04-18T11:02:54.002Z","repository":{"id":122056783,"uuid":"346856791","full_name":"unfor19/aws-sdk-cpp-examples","owner":"unfor19","description":"An example of how to a build C++ application that uses AWS's SDK.","archived":false,"fork":false,"pushed_at":"2023-08-13T08:41:22.000Z","size":32,"stargazers_count":0,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-01-30T15:51:28.224Z","etag":null,"topics":["aws","build","cmake","cpp","docker","make","sdk"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/unfor19.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2021-03-11T22:28:29.000Z","updated_at":"2023-08-11T21:16:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"c930ea64-265f-4d79-9f99-1c426874fec9","html_url":"https://github.com/unfor19/aws-sdk-cpp-examples","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/unfor19/aws-sdk-cpp-examples","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unfor19%2Faws-sdk-cpp-examples","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unfor19%2Faws-sdk-cpp-examples/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unfor19%2Faws-sdk-cpp-examples/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unfor19%2Faws-sdk-cpp-examples/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/unfor19","download_url":"https://codeload.github.com/unfor19/aws-sdk-cpp-examples/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unfor19%2Faws-sdk-cpp-examples/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31966217,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"online","status_checked_at":"2026-04-18T02:00:07.018Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["aws","build","cmake","cpp","docker","make","sdk"],"created_at":"2024-10-12T22:48:36.321Z","updated_at":"2026-04-18T11:02:53.975Z","avatar_url":"https://github.com/unfor19.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# aws-sdk-cpp-examples\n\n[![Push latest version to DockerHub](https://github.com/unfor19/aws-sdk-cpp-examples/actions/workflows/docker-latest.yml/badge.svg)](https://github.com/unfor19/aws-sdk-cpp-examples/actions/workflows/docker-latest.yml) [![Dockerhub pulls](https://img.shields.io/docker/pulls/unfor19/aws-sdk-cpp-examples)](https://hub.docker.com/r/unfor19/aws-sdk-cpp-examples)\n\nAn example of how to a build C++ application that uses AWS's SDK.\n\n## Requirements\n\n- [Docker](https://docs.docker.com/get-docker/)\n- AWS account with existing S3 buckets to test the [s3-demo](./src/s3-demo.cpp) application\n\n## Usage\n\n### Build\n\n```bash\n$ DOCKER_IMAGE=\"unfor19/aws-sdk-cpp-examples:latest\" # ubuntu\n# For Alpine:\n# DOCKER_IMAGE=\"unfor19/aws-sdk-cpp:latest-alpine\"\n\n$ git clone https://github.com/unfor19/aws-sdk-cpp-examples.git\n$ cd aws-sdk-cpp-examples\n$ docker build -t \"$DOCKER_IMAGE\" .\n# For Alpine:\n# docker build -t \"$DOCKER_IMAGE\" -f Dockerfile.alpine .\n```\n\n### Run\n\nThe executeable `s3-demo` is copied `/usr/local/bin` during the build time. The demo application consumes only one argument - `region`\n\n```bash\n$ DOCKER_IMAGE=\"unfor19/aws-sdk-cpp-examples:latest\" # ubuntu\n# For Alpine:\n# DOCKER_IMAGE=\"unfor19/aws-sdk-cpp-examples:latest-alpine\"\n\n# Using environment variables\n$ docker run --rm -it \\\n    -e AWS_ACCESS_KEY_ID \\\n    -e AWS_SECRET_ACCESS_KEY \\\n    -e AWS_SESSION_TOKEN \"$DOCKER_IMAGE\" s3-demo eu-west-1\n# Output: List of buckets ...\n\n# Using configuration file in readonly mode (haven't tested it)\n$ docker run --rm -it -v $HOME/.aws/:/root/.aws/:ro \"$DOCKER_IMAGE\" s3-demo eu-west-1\n# Output: List of buckets ...\n```\n\n## Development\n\n### Build\n\n```bash\n$ DOCKER_IMAGE=\"unfor19/aws-sdk-cpp-examples:latest-dev\" # ubuntu\n# For Alpine:\n# DOCKER_IMAGE=\"unfor19/aws-sdk-cpp-examples:latest-alpine-dev\"\n\n$ git clone https://github.com/unfor19/aws-sdk-cpp-examples.git\n$ cd aws-sdk-cpp-examples\n\n$ docker build -t \"$DOCKER_IMAGE\" --target build-app --build-arg APP_MOUNT_VOLUME=\"true\" .\n# For Alpine: \n# docker build -t \"$DOCKER_IMAGE\" --target build-app --build-arg APP_MOUNT_VOLUME=\"true\" . -f Dockerfile.alpine\n```\n\n### Run\n\nMount this project to the container and then build the application.\n\n```bash\n$ DOCKER_IMAGE=\"unfor19/aws-sdk-cpp:latest-dev\" # ubuntu\n# For Alpine:\n# DOCKER_IMAGE=\"unfor19/aws-sdk-cpp:latest-alpine-dev\"\n\n# Change something in src/s3-demo.cpp with local IDE and build the application while in the container\n\n# Using environment variables\n$ docker run --rm -it -v \"$PWD\"/:/code/ \\\n    -e AWS_ACCESS_KEY_ID \\\n    -e AWS_SECRET_ACCESS_KEY \\\n    -e AWS_SESSION_TOKEN \"$DOCKER_IMAGE\" bash\n\nroot@852c75b69bd4:/code/build# s3-demo eu-west-1\n# Output: List of buckets ...\n\n# Change something in src/s3-demo.cpp with local IDE and build the application while in the container\nroot@852c75b69bd4:/code/build# make\nroot@852c75b69bd4:/code/build# s3-demo eu-west-1\n# Output: List of buckets ...\n```\n\n### Build Only aws-sdk-cpp\n\n```bash\n$ DOCKER_IMAGE=\"unfor19/aws-sdk-cpp:latest-sdk\" # ubuntu\n# For Alpine:\n# DOCKER_IMAGE=\"unfor19/aws-sdk-cpp:latest-alpine-sdk\"\n\n$ docker build -t \"$DOCKER_IMAGE\" --target build-aws-sdk-cpp  .\n# For Alpine: \n# docker build -t \"$DOCKER_IMAGE\" --target build-aws-sdk-cpp . -f Dockerfile.alpine\n```\n\n## Authors\n\nCreated and maintained by [Meir Gabay](https://github.com/unfor19)\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](https://github.com/unfor19/aws-sdk-cpp-examples/blob/master/LICENSE) file for details\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funfor19%2Faws-sdk-cpp-examples","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Funfor19%2Faws-sdk-cpp-examples","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funfor19%2Faws-sdk-cpp-examples/lists"}