Sign inSign up

lzocateli/node

By lzocateli

•Updated 2 months ago

https://github.com/lzocateli/containers/tree/8ae34c6c57790dbbe733c6c3fb3838e043aefb5d/node

Image
Languages & frameworks
0

365

lzocateli/node repository overview

⁠Node.js LTS para Angular 22

Docker Hub Version Base Platforms Repository code license Build

Imagem baseada em Node.js 24 LTS (Debian Bookworm), com npm, npx e corepack habilitado. O foco e suportar build e desenvolvimento de projetos Angular 22 com runtime LTS estavel, com hardening para reduzir CVEs criticas reportadas em scans de seguranca.

⁠Referencia da imagem

ItemValor
Imagemlzocateli/node:24.15.0-bookworm
Imagem basenode:24.15.0-bookworm
Plataformaslinux/amd64
Usuario padraonode
Entry pointherdado da imagem base (docker-entrypoint.sh)
Comando padraonode --version
Diretorio de trabalho/workspace
Corepackhabilitado
Codigo-fontehttps://github.com/lzocateli/containers/tree/main/node
Documentacaohttps://github.com/lzocateli/containers/tree/main/node

⁠Conteudo e finalidade

⁠Incluido
  • Node.js 24 LTS.
  • npm e npx distribuidos com o Node oficial (npm atualizado para 12.0.2).
  • Corepack habilitado para pnpm/yarn quando exigido pelo projeto.
  • Usuario nao root (node) por padrao.
  • Remocao de pacotes Debian desnecessarios de toolchain (ImageMagick/MariaDB dev) para reduzir superficie de ataque.
⁠Nao incluido
  • Angular CLI global preinstalado.
  • Codigo de aplicacao, dependencias de projeto e cache de pacotes.
  • Ferramentas de navegador (Chrome/Playwright) para E2E.

⁠Compatibilidade com Angular 22

Esta imagem usa Node.js LTS da linha 24, apropriada para toolchains do Angular 22.

Para validar no pipeline:

node --version
npm --version
npx -y @angular/cli@22 version

⁠Inicio rapido

docker pull lzocateli/node:24.15.0-bookworm
docker run --rm lzocateli/node:24.15.0-bookworm node --version

Exemplo com projeto Angular local:

docker run --rm \
  --workdir /workspace \
  --volume "$(pwd):/workspace" \
  lzocateli/node:24.15.0-bookworm \
  sh -lc "npm ci && npx ng version"

⁠Docker Compose

services:
  node:
    image: lzocateli/node:24.15.0-bookworm
    working_dir: /workspace
    user: "node"
    volumes:
      - /caminho/absoluto/projeto:/workspace
    command: ["sh", "-lc", "node --version && npm --version"]

⁠Configuracao

⁠Variaveis de ambiente
VariavelObrigatoriaSecretaPadraoDescricao
NPM_CONFIG_CACHENaoNaopadrao do npmLocal do cache de pacotes.
CINaoNaovazioAtiva comportamento de pipeline em varios toolings.
⁠Portas

Nenhuma porta publica faz parte do contrato desta imagem base.

⁠Persistencia e mounts
Caminho no conteinerModoConteudoBackup necessario
/workspacerwCodigo-fonte e arquivos do projeto montadoSim
⁠Secrets

Forneca token de registry e credenciais de npm via runtime (--env-file, secrets do CI ou provider do orquestrador). Nao grave secrets no Dockerfile nem em arquivos versionados.

⁠Inicializacao e ciclo de vida

O entrypoint da imagem base Node e preservado. O processo padrao executa node --version; em uso real, o comando e sobrescrito para npm ci, npm run build, npx ng ... ou scripts do projeto.

⁠Seguranca

  • Execucao como usuario node (nao root).
  • Sem exposicao de portas por padrao.
  • Nao persistir tokens npm no repositorio ou na imagem.
  • Prefira lockfiles versionados para reproducibilidade.
  • Atualizacao de libgnutls30 e npm para mitigar vulnerabilidades criticas com correcao disponivel.

⁠Build local

docker build --pull --tag lzocateli/node:24.15.0-bookworm node

Para validar Angular 22 localmente:

docker run --rm lzocateli/node:24.15.0-bookworm sh -lc "npx -y @angular/cli@22 version"

⁠Tags e compatibilidade

TagMutabilidadeCompatibilidadeUso recomendado
24.15.0-bookwormImutavelNode.js 24 LTS e toolchain Angular 22Producao e CI
24-bookwormMovelUltimo patch da linha 24 LTSHomologacao controlada

Prefira tags imutaveis em pipelines e releases.

⁠Validacao

Antes da publicacao, confirme:

  • .gitignore e .dockerignore presentes e atualizados;
  • exclusao de .env, secrets e .git do contexto Docker;
  • docker buildx build --check sem erros;
  • build para linux/amd64;
  • node --version, npm --version e npx -y @angular/cli@22 version executando com sucesso;
  • validacao de npm ls -g tar com versao 7.5.19 ou superior;
  • validacao de ausenca de pacotes legados via dpkg -l (imagemagick/libmariadb/linux-libc-dev) no container final;
  • scan de vulnerabilidades, SBOM e proveniencia no workflow oficial.

⁠Publicacao

Use Actions > Publicar imagem de container > Run workflow com:

  • context_path: node;
  • image_name: node;
  • image_tag: 24.15.0-bookworm;
  • dockerfile: Dockerfile;
  • platforms: linux/amd64.

⁠Troubleshooting

SintomaCausa provavelVerificacaoCorrecao
npm ERR! EACCESPermissao de escrita no bind mountid e dono dos arquivos no hostAjustar permissao do diretorio no host para usuario do container.
npx ng nao encontradoDependencia local ausentenpm ls @angular/cliInstalar @angular/cli no projeto ou usar npx -y @angular/cli@22.
npm ci falha por lockfilelockfile fora de sincroniacomparar package.json e lockfileRegenerar lockfile no mesmo major do npm usado no CI.

⁠Limitacoes conhecidas

  • Plataforma validada neste repositorio: linux/amd64.
  • A imagem nao inclui navegadores para testes E2E.
  • A imagem nao inclui Angular CLI global por padrao.

⁠Licencas e fontes

ComponenteVersaoLicencaFonte
Conteudo original deste repositorioAtualMIThttps://github.com/lzocateli/containers
Node.js24.15.0MIThttps://github.com/nodejs/node/blob/main/LICENSE
Imagem base Node oficial24.15.0-bookwormMIThttps://hub.docker.com/_/node

O badge MIT descreve somente o conteudo original deste repositorio. Componentes de terceiros permanecem sujeitos aos seus termos e avisos de licenca. Consulte a politica de licenciamento: https://github.com/lzocateli/containers/blob/main/LICENSING.md⁠.

⁠Historico de alteracoes

  • 24.15.0-bookworm: adiciona hardening de seguranca (upgrade de libgnutls30, npm 12.0.2 e remocao de pacotes Debian desnecessarios) mantendo compatibilidade com Angular 22.

Tag summary

Content type

Image

Digest

sha256:bee682239…

Size

395.3 MB

Last updated

2 months ago

docker pull lzocateli/node:24.15.0-bookworm