{"id":16484355,"url":"https://github.com/nugaon/docker-nodejs-with-kerberos","last_synced_at":"2025-10-26T18:43:11.580Z","repository":{"id":106022842,"uuid":"284067336","full_name":"nugaon/docker-nodejs-with-kerberos","owner":"nugaon","description":"NodeJS docker image with Kerberos client","archived":false,"fork":false,"pushed_at":"2020-07-31T16:57:02.000Z","size":4,"stargazers_count":1,"open_issues_count":1,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-11T13:25:34.234Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","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/nugaon.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":"2020-07-31T15:22:57.000Z","updated_at":"2023-06-07T16:40:17.000Z","dependencies_parsed_at":null,"dependency_job_id":"e73a9dda-dfc5-4cb3-bc92-1013cb19f31a","html_url":"https://github.com/nugaon/docker-nodejs-with-kerberos","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nugaon%2Fdocker-nodejs-with-kerberos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nugaon%2Fdocker-nodejs-with-kerberos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nugaon%2Fdocker-nodejs-with-kerberos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nugaon%2Fdocker-nodejs-with-kerberos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nugaon","download_url":"https://codeload.github.com/nugaon/docker-nodejs-with-kerberos/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241241017,"owners_count":19932669,"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":[],"created_at":"2024-10-11T13:16:50.924Z","updated_at":"2025-10-26T18:43:11.522Z","avatar_url":"https://github.com/nugaon.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Description\n\nThis repository is the codebase of the `nugaon/nodejs-with-kerberos` docker image.\n\nThe image based on NodeJS 12 server and install Kerberos client on it at build-time, \nthen try to retrieve its HTTP service credential from the Kerberos server at the first run. \n\n# Quick start\n\n```bash\ndocker run --network=overlay \\\n  -v ${YOUR_NODEJS_PROJECT_FOLDER}:/usr/src/app \\\n  -v ${YOUR_KRB5_CONFIG}:/etc/krb5.conf\n  -p 127.0.0.1:3000:3000 \\\n  --network ${NET_WITH_KERBEROS_SERVER} \\\n  nugaon/nodejs-with-kerberos \n```\n\nYou should set the variables according to your environment.\n- For `YOUR_KRB5_CONFIG` there is an example in [utils/krb5-client.example.conf](utils/krb5-client.example.conf). Feel free to change it.\n- For `YOUR_NODEJS_PROJECT_FOLDER` you should set the path of your nodejs project, where usually placed the package.json file, e.g. '/home/user/nodeproject'\n- For `NET_WITH_KERBEROS_SERVER` pass the overlay network's name which on the Kerberos server is also connected.\n\nUseful environment variables:\n\n| Environment variables    | Description                                                 | Default value            |\n| ------------------------ | ----------------------------------------------------------- | ------------------------ |\n| `KERB_HTTP_SERVICE_NAME` | The Kerberos HTTP service principal name                    | localhost                |\n| `KERB_ADMIN_USER`        | administrator account name                                  | admin                    |\n| `KERB_ADMIN_PASS`        | administrator's password                                    | admin                    |\n| `START_COMMAND`          | Run at the end of the startup script                        | npm run start            |\n| `KERB_ADMIN_ADDRESS`     | Kerberos address to check connection e.g. kerberos:749      | null                     |\n\n\n# Test NodeJS EPs from your computer\n\nFirst of all, your browser has to be capable of use of Kerberos authentication. To set this properly [read cloudera's article about it.](https://docs.cloudera.com/documentation/enterprise/latest/topics/cdh_sg_browser_access_kerberos_protected_url.html)\n\nInstall krb5 client with the proper configuration according to your Kerberos environment, you can login with Kerberos users' credentials.\nOn linux systems it seems somehow like this:\n\n\u003e kinit eteszt\n\nand pass the eteszt user's password into the prompt. You can check was it either successful or not with\n\n```bash\n$ klist\n# Ticket cache: FILE:/tmp/krb5cc_1000\n# Default principal: eteszt@EXAMPLE.COM\n# (...)\n```\n\nIf you successfully reach this point you can make actions against the server in the name of `eteszt` user in your browser.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnugaon%2Fdocker-nodejs-with-kerberos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnugaon%2Fdocker-nodejs-with-kerberos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnugaon%2Fdocker-nodejs-with-kerberos/lists"}