Sign inSign up

ivly/api-devcontainer

By ivly

•Updated 19 days ago

ivly-api development container image for local use with VS Code or within CI pipelines

Image
Developer tools
0

1.4K

ivly/api-devcontainer repository overview

⁠ivly/api-devcontainer

CI/development image for ivly-api⁠, the Go backend of the ivly invoicing platform.

⁠What's included

ComponentPurpose
Go 1.26 (Debian Trixie)Base runtime and compiler
golangci-lintGo linter
TeXLivePDF rendering via pdflatex (koma-script, xcolor, colortbl, pdfx, embedfile, eso-pic, pgf, ...)
Java 21 + Saxon-HE 12.8Schematron validation of XRechnung/ZUGFeRD XML (tests only)
libxml2-utils (xmllint)XSD validation (tests only)
Python 3 + pre-commitGit hooks framework
TrivyContainer security scanning
Woodpecker CLICI pipeline linting
Git LFSLarge file support for PDF golden files
oapi-codegenOpenAPI v3 server stub generation
addlicenseLicense header management (AGPL-3.0)
gitleaksSecret detection
airLive reload for development

⁠Usage

Woodpecker CI:

steps:
  - name: test
    image: ivly/api-devcontainer:latest
    commands:
      - make test

Local development: Open the project in VS Code with the Dev Containers extension.

⁠Build

⁠Prerequisites

devcontainer build runs through docker buildx. The dedicated multi-arch builder needs to exist and be active before building. Create it once per machine:

docker buildx create --name ivly-api-multiarch --driver docker-container --bootstrap --use

Verify with docker buildx ls (the ivly-api-multiarch row should be marked * for active and running). If the builder already exists, a single docker buildx use ivly-api-multiarch is enough.

Without this step, make build-ci fails with ERROR: no builder "ivly-api-multiarch" found.

⁠Build the image
make build-ci DEVCONTAINER_PUSH=true

⁠Source

Tag summary

Content type

Image

Digest

sha256:9eb27514c…

Size

881.5 MB

Last updated

19 days ago

docker pull ivly/api-devcontainer