{"id":18258891,"url":"https://github.com/pottava/http-return-everything","last_synced_at":"2026-04-10T16:41:34.968Z","repository":{"id":24129396,"uuid":"100703469","full_name":"pottava/http-return-everything","owner":"pottava","description":"A REST API server which returns container's environment.","archived":false,"fork":false,"pushed_at":"2023-02-25T00:46:49.000Z","size":127,"stargazers_count":1,"open_issues_count":26,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-14T18:20:57.352Z","etag":null,"topics":["docker","golang","kubernetes","webapp"],"latest_commit_sha":null,"homepage":"https://gcr.io/pottava/re","language":"Go","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/pottava.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-08-18T10:55:43.000Z","updated_at":"2021-01-06T08:11:27.000Z","dependencies_parsed_at":"2024-06-21T02:27:17.924Z","dependency_job_id":null,"html_url":"https://github.com/pottava/http-return-everything","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pottava%2Fhttp-return-everything","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pottava%2Fhttp-return-everything/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pottava%2Fhttp-return-everything/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pottava%2Fhttp-return-everything/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pottava","download_url":"https://codeload.github.com/pottava/http-return-everything/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247945544,"owners_count":21022784,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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","golang","kubernetes","webapp"],"created_at":"2024-11-05T10:35:19.733Z","updated_at":"2026-04-10T16:41:34.925Z","avatar_url":"https://github.com/pottava.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Retrieving server context - A REST API server\n\n[![GitHub Actions](https://github.com/pottava/http-return-everything/workflows/Publish%20artifacts/badge.svg?branch=master)](https://github.com/pottava/http-return-everything/actions)\n\n[gcr.io/pottava/re](https://gcr.io/pottava/re/)\n\nSupported tags and respective `Dockerfile` links:  \n・v2.0 ([prod/2.0/Dockerfile](https://github.com/pottava/http-return-everything/blob/master/prod/2.0/Dockerfile))  \n・v1.3 ([prod/1.3/Dockerfile](https://github.com/pottava/http-return-everything/blob/master/prod/1.3/Dockerfile))  \n\n## Usage\n\n### 1. Set environment variables\n\nEnvironment Variables     | Description                                       |\n------------------------- | ------------------------------------------------- |\nPORT                      | Listening port. (default: 8080) | \nENABLE_AWS                | Enable the AWS metadata endpoint. (default: true) | \nENABLE_GCP                | Enable the Google Cloud metadata endpoint. (default: true) | \nACCESS_LOG                | Send access logs to /dev/stdout. (default: true) | \nACCESS_DETAIL_LOG         | Save HTTP request details (default: false) | \nCONTENT_ENCODING          | Compress response data if the request allows. (default: true) |\nCORS_ORIGIN               | Allowed CORS origin (default: *) |\n\n### 2. Run the application\n\n`$ docker run -d --rm -p 80:8080 gcr.io/pottava/re:v2.0`\n\n* with Google [Cloud Run](https://cloud.google.com/run):  \n\n```bash\n$ gcloud run deploy re --allow-unauthenticated \\\n    --image gcr.io/pottava/re:v2.0 \\\n    --set-env-vars ENABLE_GCP=1,ENABLE_AWS=0\n```\n\n* with docker-compose.yml:  \n\n```yaml\ncheck:\n  image: gcr.io/pottava/re:v2.0\n  ports:\n    - 80:8080\n  environment:\n    - ENABLE_AWS=false\n    - ENABLE_GCP=false\n    - ACCESS_LOG=false\n    - CONTENT_ENCODING=false\n  container_name: check\n```\n\n* with Kubernetes deployment.yaml\n\n```yaml\napiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: my-app\nspec:\n  replicas: 1\n  selector:\n    matchLabels:\n      app: my-app\n  template:\n    metadata:\n      labels:\n        app: my-app\n    spec:\n      containers:\n      - name: api\n        image: gcr.io/pottava/re:v2.0\n        imagePullPolicy: Always\n        ports:\n        - protocol: TCP\n          containerPort: 8080\n        env:\n        - name: APP_NODE_NAME\n          valueFrom:\n            fieldRef:\n              fieldPath: spec.nodeName\n        - name: APP_POD_NAMESPACE\n          valueFrom:\n            fieldRef:\n              fieldPath: metadata.namespace\n        - name: APP_POD_NAME\n          valueFrom:\n            fieldRef:\n              fieldPath: metadata.name\n        - name: APP_POD_IP\n          valueFrom:\n            fieldRef:\n              fieldPath: status.podIP\n        - name: APP_POD_SERVICE_ACCOUNT\n          valueFrom:\n            fieldRef:\n              fieldPath: spec.serviceAccountName\n        readinessProbe:\n          httpGet:\n            path: /health\n            port: 8080\n```\n\n### 3. Make HTTP GET requests\n\n[API spec](https://github.com/pottava/http-return-everything/blob/master/spec.yaml)\n\n- GET /\n\n\u003cimg alt=\"\" src=\"https://raw.githubusercontent.com/wiki/pottava/http-return-everything/images/everything.png\" style=\"max-width: 100%;\"\u003e\n\n- GET /app/envs/\n\n\u003cimg alt=\"\" src=\"https://raw.githubusercontent.com/wiki/pottava/http-return-everything/images/app-envs.png\" style=\"max-width: 100%;\"\u003e\n\n- GET /app/envs/{env}\n\n\u003cimg alt=\"\" src=\"https://raw.githubusercontent.com/wiki/pottava/http-return-everything/images/app-envs-key.png\" style=\"max-width: 100%;\"\u003e\n\n- GET /req/\n\n\u003cimg alt=\"\" src=\"https://raw.githubusercontent.com/wiki/pottava/http-return-everything/images/req.png\" style=\"max-width: 100%;\"\u003e\n\n- GET /req/headers/\n\n\u003cimg alt=\"\" src=\"https://raw.githubusercontent.com/wiki/pottava/http-return-everything/images/req-headers.png\" style=\"max-width: 100%;\"\u003e\n\n- GET /req/headers/{header}\n\n\u003cimg alt=\"\" src=\"https://raw.githubusercontent.com/wiki/pottava/http-return-everything/images/req-headers-key.png\" style=\"max-width: 100%;\"\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpottava%2Fhttp-return-everything","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpottava%2Fhttp-return-everything","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpottava%2Fhttp-return-everything/lists"}