Sign inSign up

lzocateli/k6

By lzocateli

•Updated 2 months ago

Image
0

72

lzocateli/k6 repository overview

⁠k6 sobre Node.js 24 LTS hardened

Docker Hub Version Base Platforms Repository code license Build

Imagem para execução isolada do k6, baseada em lzocateli/node:24.15.0-bookworm, com binário oficial do k6 copiado da imagem upstream grafana/k6 fixada por digest imutável.

⁠Referência da imagem

ItemValor
Imagemlzocateli/k6:2.1.0-node24.15.0-bookworm
Imagem baselzocateli/node:24.15.0-bookworm
Binário k6grafana/k6:2.1.0@sha256:65c920dc067d5e2e00befbf982af6ad6ad0117034e8b1c65817c7975c52d4669
Plataformaslinux/amd64
Usuário padrãonode
Entry pointk6
Comando padrãok6 version
Diretório de trabalho/workspace
Código-fontehttps://github.com/lzocateli/containers/tree/main/k6
Documentaçãohttps://github.com/lzocateli/containers/tree/main/k6

⁠Conteúdo e finalidade

⁠Incluído
  • Binário k6 versão 2.1.0.
  • Runtime Node.js 24 LTS hardened herdado da imagem base.
  • Execução padrão em usuário não root.
⁠Não incluído
  • Scripts de teste prontos.
  • Dashboard remoto, outputs externos ou credenciais.
  • Extensões customizadas de k6 compiladas sob medida.

⁠Início rápido

docker pull lzocateli/k6:2.1.0-node24.15.0-bookworm
docker run --rm lzocateli/k6:2.1.0-node24.15.0-bookworm version

Exemplo com script local:

docker run --rm \
  --workdir /workspace \
  --volume "$(pwd):/workspace" \
  lzocateli/k6:2.1.0-node24.15.0-bookworm \
  run script.js

⁠Docker Compose

services:
  k6:
    image: lzocateli/k6:2.1.0-node24.15.0-bookworm
    working_dir: /workspace
    user: "node"
    volumes:
      - /caminho/absoluto/testes-k6:/workspace
    command: ["run", "script.js"]

⁠Configuração

⁠Variáveis de ambiente
VariávelObrigatóriaSecretaPadrãoDescrição
K6_OUTNãoNãonenhumDefine output de métricas (json=..., influxdb=..., etc.).
K6_VUSNãoNãodo scriptSobrescreve VUs na execução.
K6_DURATIONNãoNãodo scriptSobrescreve duração na execução.
⁠Portas

Nenhuma porta pública faz parte do contrato desta imagem base.

⁠Persistência e mounts
Caminho no contêinerModoConteúdoBackup necessário
/workspacerwScripts e artefatos de testeSim
⁠Secrets

Forneça tokens e credenciais via runtime (--env-file ou secrets do orquestrador). Não grave valores sensíveis no Dockerfile nem em scripts versionados.

⁠Inicialização e ciclo de vida

A imagem inicia com k6 como entrypoint. O comando padrão version pode ser sobrescrito por run, inspect ou outros subcomandos.

⁠Segurança

  • Execução como usuário node (não root).
  • Sem portas expostas por padrão.
  • Herda hardening e baseline de segurança da imagem base lzocateli/node.

⁠Build local

Como a base lzocateli/node:24.15.0-bookworm pode ainda não estar publicada, gere localmente antes:

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

Depois gere a imagem k6:

docker build --pull --tag lzocateli/k6:2.1.0-node24.15.0-bookworm k6

⁠Tags e compatibilidade

TagMutabilidadeCompatibilidadeUso recomendado
2.1.0-node24.15.0-bookwormImutávelk6 2.1.0 + Node 24.15.0 LTSProdução e CI

⁠Validação

Antes da publicação, confirme:

  • .gitignore e .dockerignore presentes e atualizados;
  • exclusão de .env, secrets e .git do contexto Docker;
  • docker buildx build --check sem erros;
  • build para linux/amd64;
  • k6 version executando com sucesso;
  • scan de vulnerabilidades, SBOM e proveniência no workflow oficial.

⁠Publicação

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

  • context_path: k6;
  • image_name: k6;
  • image_tag: 2.1.0-node24.15.0-bookworm;
  • dockerfile: Dockerfile;
  • platforms: linux/amd64.

⁠Operação

  • Versione scripts de carga junto do código da aplicação.
  • Execute testes em rede isolada para evitar impacto em produção.
  • Preserve relatórios em volume do host quando necessário.

⁠Troubleshooting

SintomaCausa provávelVerificaçãoCorreção
ERRO[0000] open script.js: no such file or directoryScript não montado em /workspacels -la /workspace no contêinerAjustar bind mount e caminho do comando run.
permission denied ao gravar outputVolume do host sem permissão para usuário nodechecar proprietário/permissões no hostAjustar permissões no diretório montado.
Falha ao enviar métricas externasURL/token inválido em K6_OUTrevisar env vars e logsCorrigir endpoint e credenciais do backend de métricas.

⁠Limitações conhecidas

  • Plataforma validada neste repositório: linux/amd64.
  • Não inclui extensões customizadas do ecossistema xk6.

⁠Licenças e fontes

ComponenteVersãoLicençaFonte
Conteúdo original deste repositórioAtualMIThttps://github.com/lzocateli/containers
k62.1.0AGPL-3.0https://github.com/grafana/k6
Imagem base lzocateli/node24.15.0-bookwormMIT (conteúdo empacotado pelo projeto)https://github.com/lzocateli/containers/tree/main/node

O badge MIT descreve somente o conteúdo original deste repositório. Componentes de terceiros permanecem sujeitos aos seus termos e avisos de licença. Consulte a política de licenciamento: https://github.com/lzocateli/containers/blob/main/LICENSING.md⁠.

⁠Histórico de alterações

  • 2.1.0-node24.15.0-bookworm: atualização para k6 2.1.0 com pin por digest imutável para evitar deriva de tag e reaparição de CVEs críticos do binário Go no CI.

Tag summary

Content type

Image

Digest

sha256:fd67b6c6c…

Size

424.1 MB

Last updated

2 months ago

docker pull lzocateli/k6:2.1.0-node24.15.0-bookworm