{"id":49369869,"url":"https://github.com/woahbase/alpine-ng","last_synced_at":"2026-04-27T22:02:26.010Z","repository":{"id":201884843,"uuid":"120605047","full_name":"woahbase/alpine-ng","owner":"woahbase","description":"Angular CLI based on Alpine + S6 + NodeJS/NPM","archived":false,"fork":false,"pushed_at":"2018-02-07T11:18:31.000Z","size":5,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2023-10-20T04:14:08.155Z","etag":null,"topics":["alpine","angular","cli","docker","ng-cli"],"latest_commit_sha":null,"homepage":"https://woahbase.online/#/images/alpine-ng","language":"Makefile","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/woahbase.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}},"created_at":"2018-02-07T11:12:31.000Z","updated_at":"2023-10-20T06:42:45.471Z","dependencies_parsed_at":null,"dependency_job_id":"140a9985-c341-4e4a-89a0-442daf9eb784","html_url":"https://github.com/woahbase/alpine-ng","commit_stats":null,"previous_names":["woahbase/alpine-ng"],"tags_count":null,"template":null,"template_full_name":null,"purl":"pkg:github/woahbase/alpine-ng","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/woahbase%2Falpine-ng","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/woahbase%2Falpine-ng/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/woahbase%2Falpine-ng/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/woahbase%2Falpine-ng/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/woahbase","download_url":"https://codeload.github.com/woahbase/alpine-ng/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/woahbase%2Falpine-ng/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32356602,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-27T20:07:02.737Z","status":"ssl_error","status_checked_at":"2026-04-27T20:07:00.910Z","response_time":128,"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":["alpine","angular","cli","docker","ng-cli"],"created_at":"2026-04-27T22:02:19.132Z","updated_at":"2026-04-27T22:02:26.000Z","avatar_url":"https://github.com/woahbase.png","language":"Makefile","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![build status][251]][232] [![commit][255]][231] [![version:x86_64][256]][235] [![size:x86_64][257]][235]\n\n## [Alpine-Ng][234]\n#### Container for Alpine Linux + Angular CLI\n---\n\nThis [image][233] containerizes the [ng][136] command line tool\nfor [Angular][137] along with its [NPM][135] dependencies to\ninitialize, scaffold and maintain angular applications.\n\nBased on [Alpine Linux][131] from my [alpine-nodejs][132] image with\nthe [s6][133] init system [overlayed][134] in it.\n\nThe image is tagged respectively for the following architectures,\n* ~~**armhf**~~\n* **x86_64** (retagged as the `latest` )\n\n~~**armhf** builds have embedded binfmt_misc support and contain the~~\n~~[qemu-user-static][105] binary that allows for running it also inside~~\n~~an x64 environment that has it.~~\n\n---\n#### Get the Image\n---\n\nPull the image for your architecture it's already available from\nDocker Hub.\n\n```\n# make pull\ndocker pull woahbase/alpine-ng:x86_64\n```\n\n---\n#### Run\n---\n\nIf you want to run images for other architectures, you will need\nto have binfmt support configured for your machine. [**multiarch**][104],\nhas made it easy for us containing that into a docker container.\n\n```\n# make regbinfmt\ndocker run --rm --privileged multiarch/qemu-user-static:register --reset\n```\n\nWithout the above, you can still run the image that is made for your\narchitecture, e.g for an x86_64 machine..\n\nThis images already has a user `alpine` configured to drop\nprivileges to the passed `PUID`/`PGID` which is ideal if its used\nto run in non-root mode. That way you only need to specify the\nvalues at runtime and pass the `-u alpine` if need be. (run `id`\nin your terminal to see your own `PUID`/`PGID` values.)\n\nBefore you run..\n\n* Mount the project directory (where `package.json` is) at\n  `/home/alpine/project`. Mounts `PWD` by default.\n\n* Ng runs under the user `alpine`.\n\nRunning `make` gets a shell.\n\n```\n# make\ndocker run --rm -it \\\n  --name docker_ng --hostname ng \\\n  -e PGID=1000 -e PUID=1000 \\\n  -c 256 -m 512m \\\n  -v $PWD:/home/alpine/project \\\n  -v /etc/localtime:/etc/localtime:ro \\\n  -v /etc/hosts:/etc/hosts:ro \\\n  -p 4200:4200 \\\n  --entrypoint /bin/bash \\\n  woahbase/alpine-ng:x86_64\n```\n\nThe usual ng stuff. e.g init projects with\n\n```\n# make new\ndocker run --rm -it \\\n  --name docker_ng --hostname ng \\\n  -e PGID=1000 -e PUID=1000 \\\n  -c 256 -m 512m \\\n  -v $PWD:/home/alpine/project \\\n  woahbase/alpine-ng:x86_64 \\\n  new\n```\n\nrun the dev server,\n\n```\n# make serve\ndocker run --rm -it \\\n  --name docker_ng --hostname ng \\\n  -e PGID=1000 -e PUID=1000 \\\n  -c 256 -m 512m \\\n  -v $PWD:/home/alpine/project \\\n  -v /etc/localtime:/etc/localtime:ro \\\n  -v /etc/hosts:/etc/hosts:ro \\\n  -p 4200:4200 \\\n  woahbase/alpine-ng:x86_64 \\\n  serve\n```\n\nbuild the project with\n\n```\n# make prod\ndocker run --rm -it \\\n  --name docker_ng --hostname ng \\\n  -e PGID=1000 -e PUID=1000 \\\n  -c 256 -m 512m \\\n  -v $PWD:/home/alpine/project \\\n  woahbase/alpine-ng:x86_64 \\\n  build --prod\n```\n\nto use npm scripts from `package.json`, change the entrypoint to\n`npm`, e.g\n\n```\n# start the dev server of angular starter project\ndocker run --rm -it \\\n  --name docker_ng --hostname ng \\\n  --entrypoint npm \\\n  -e PGID=1000 -e PUID=1000 \\\n  -c 256 -m 512m \\\n  -v $PWD:/home/alpine/project \\\n  woahbase/alpine-ng:x86_64 \\\n  start\n```\n\nStop the container with a timeout, (defaults to 2 seconds)\n\n```\n# make stop\ndocker stop -t 2 docker_ng\n```\n\nRemoves the container, (always better to stop it first and `-f`\nonly when needed most)\n\n```\n# make rm\ndocker rm -f docker_ng\n```\n\nRestart the container with\n\n```\n# make restart\ndocker restart docker_ng\n```\n\n---\n#### Shell access\n---\n\nGet a shell inside a already running container,\n\n```\n# make shell\ndocker exec -it docker_ng /bin/bash\n```\n\nset user or login as root,\n\n```\n# make rshell\ndocker exec -u root -it docker_ng /bin/bash\n```\n\nTo check logs of a running container in real time\n\n```\n# make logs\ndocker logs -f docker_ng\n```\n\n---\n### Development\n---\n\nIf you have the repository access, you can clone and\nbuild the image yourself for your own system, and can push after.\n\n---\n#### Setup\n---\n\nBefore you clone the [repo][231], you must have [Git][101], [GNU make][102],\nand [Docker][103] setup on the machine.\n\n```\ngit clone https://github.com/woahbase/alpine-ng\ncd alpine-ng\n```\nYou can always skip installing **make** but you will have to\ntype the whole docker commands then instead of using the sweet\nmake targets.\n\n---\n#### Build\n---\n\nYou need to have binfmt_misc configured in your system to be able\nto build images for other architectures.\n\nOtherwise to locally build the image for your system.\n[`ARCH` defaults to `x86_64`, need to be explicit when building\nfor other architectures.]\n\n```\n# make ARCH=x86_64 build\n# sets up binfmt if not x86_64\ndocker build --rm --compress --force-rm \\\n  --no-cache=true --pull \\\n  -f ./Dockerfile_x86_64 \\\n  --build-arg ARCH=x86_64 \\\n  --build-arg DOCKERSRC=alpine-nodejs \\\n  --build-arg PGID=1000 \\\n  --build-arg PUID=1000 \\\n  --build-arg USERNAME=woahbase \\\n  -t woahbase/alpine-ng:x86_64 \\\n  .\n```\n\nTo check if its working..\n\n```\n# make ARCH=x86_64 test\ndocker run --rm -it \\\n  --name docker_ng --hostname ng \\\n  -e PGID=1000 -e PUID=1000 \\\n  woahbase/alpine-ng:x86_64 \\\n  --version\n```\n\nAnd finally, if you have push access,\n\n```\n# make ARCH=x86_64 push\ndocker push woahbase/alpine-ng:x86_64\n```\n\n---\n### Maintenance\n---\n\nSources at [Github][106]. Built at [Travis-CI.org][107] (armhf / x64 builds). Images at [Docker hub][108]. Metadata at [Microbadger][109].\n\nMaintained by [WOAHBase][204].\n\n[101]: https://git-scm.com\n[102]: https://www.gnu.org/software/make/\n[103]: https://www.docker.com\n[104]: https://hub.docker.com/r/multiarch/qemu-user-static/\n[105]: https://github.com/multiarch/qemu-user-static/releases/\n[106]: https://github.com/\n[107]: https://travis-ci.org/\n[108]: https://hub.docker.com/\n[109]: https://microbadger.com/\n\n[131]: https://alpinelinux.org/\n[132]: https://hub.docker.com/r/woahbase/alpine-s6\n[133]: https://skarnet.org/software/s6/\n[134]: https://github.com/just-containers/s6-overlay\n[135]: https://www.npmjs.com/\n[136]: https://github.com/angular/angular-cli\n[137]: https://angular.io/\n\n[201]: https://github.com/woahbase\n[202]: https://travis-ci.org/woahbase/\n[203]: https://hub.docker.com/u/woahbase\n[204]: https://woahbase.online/\n\n[231]: https://github.com/woahbase/alpine-ng\n[232]: https://travis-ci.org/woahbase/alpine-ng\n[233]: https://hub.docker.com/r/woahbase/alpine-ng\n[234]: https://woahbase.online/#/images/alpine-ng\n[235]: https://microbadger.com/images/woahbase/alpine-ng:x86_64\n\n[251]: https://travis-ci.org/woahbase/alpine-ng.svg?branch=master\n\n[255]: https://images.microbadger.com/badges/commit/woahbase/alpine-ng.svg\n\n[256]: https://images.microbadger.com/badges/version/woahbase/alpine-ng:x86_64.svg\n[257]: https://images.microbadger.com/badges/image/woahbase/alpine-ng:x86_64.svg\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwoahbase%2Falpine-ng","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwoahbase%2Falpine-ng","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwoahbase%2Falpine-ng/lists"}