root
: Install system packages, etc.somebody
: Owns app files, installs dependencies (e.g. npm), etc.runuser
: Runs application entry-pointblubber.yaml
base: docker-registry.wikimedia.org/nodejs-slim
apt: { packages: [librsvg2-2] }
variants:
build:
base: docker-registry.wikimedia.org/nodejs-devel
apt: { packages: [librsvg2-dev, git, build-essential] }
node: { requirements: [package.json, package-lock.json] }
test:
includes: [build]
entrypoint: [npm, test]
production:
copies: build
node: { env: production }
entrypoint: [node, server.js]
base: docker-registry.wikimedia.org/nodejs-slim
apt: { packages: [librsvg2-2] }
variants:
build:
base: docker-registry.wikimedia.org/nodejs-devel
apt: { packages: [librsvg2-dev, git, build-essential] }
node: { requirements: [package.json, package-lock.json] }
variants:
build:
# ...
test:
includes: [build]
entrypoint: [npm, test]
prep:
includes: [build]
node: { env: production }
variants:
# ...
prep:
includes: [build]
node: { env: production }
production:
copies: prep
node: { env: production }
entrypoint: [node, server.js]
docker-registry.wikimedia.org/
wikimedia/mediawiki-services-mathoid:build-44
helm upgrade
people.wikimedia.org/~thcipriani/pipeline
people.wikimedia.org/~thcipriani/blubber