node
Expose deux fonctions de haut niveau :- BuildStatic : compile le projet et sert les fichiers via nginx (SPA, sites statiques)
- BuildServer : compile le projet et lance un serveur Node.js (SSR, Next.js standalone...)
Le package manager par défaut est pnpm.
Installation
dagger install gitlab.com/build-core/daggerverse/node@08bcf4d14959aa90a1ddd5cb1c83162a139a012aEntrypoint
Return Type
Node !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| nodeVersion | String ! | "22" | Version de Node.js à utiliser. Défaut : 22 |
Example
dagger -m gitlab.com/build-core/daggerverse/node@08bcf4d14959aa90a1ddd5cb1c83162a139a012a call \
--node-version stringfunc (m *MyModule) Example(nodeVersion string) *dagger.Node {
return dag.
Node(nodeVersion)
}@function
def example(node_version: str) -> dagger.Node:
return (
dag.node(node_version)
)@func()
example(nodeVersion: string): Node {
return dag
.node(nodeVersion)
}Types
Node 🔗
nodeVersion() 🔗
Version de Node.js à utiliser. Défaut : 22
Return Type
String ! Example
dagger -m gitlab.com/build-core/daggerverse/node@08bcf4d14959aa90a1ddd5cb1c83162a139a012a call \
--node-version string node-versionfunc (m *MyModule) Example(ctx context.Context, nodeVersion string) string {
return dag.
Node(nodeVersion).
NodeVersion(ctx)
}@function
async def example(node_version: str) -> str:
return await (
dag.node(node_version)
.node_version()
)@func()
async example(nodeVersion: string): Promise<string> {
return dag
.node(nodeVersion)
.nodeVersion()
}buildServer() 🔗
BuildServer compile le projet et retourne un conteneur Node.js exécutant le serveur. Convient pour le rendu côté serveur (Next.js standalone, Nuxt, Remix…).
Return Type
Container !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| src | Directory ! | - | Répertoire source du projet |
| packageManager | String ! | "pnpm" | Package manager à utiliser : pnpm, npm, yarn. Défaut : pnpm |
| nodeVersion | String ! | "22" | Version de Node.js. Défaut : 22 |
| outputDir | String ! | - | Répertoire de sortie du build (ex: .next/standalone pour Next.js, .output pour Nuxt, build/server pour Remix) |
| startCommand | String ! | "node index.js" | Commande de démarrage du serveur. Défaut : node index.js |
Example
dagger -m gitlab.com/build-core/daggerverse/node@08bcf4d14959aa90a1ddd5cb1c83162a139a012a call \
--node-version string build-server --src DIR_PATH --package-manager string --node-version string --output-dir string --start-command stringfunc (m *MyModule) Example(nodeVersion string, src *dagger.Directory, packageManager string, nodeVersion1 string, outputDir string, startCommand string) *dagger.Container {
return dag.
Node(nodeVersion).
BuildServer(src, packageManager, nodeVersion1, outputDir, startCommand)
}@function
def example(node_version: str, src: dagger.Directory, package_manager: str, node_version1: str, output_dir: str, start_command: str) -> dagger.Container:
return (
dag.node(node_version)
.build_server(src, package_manager, node_version1, output_dir, start_command)
)@func()
example(nodeVersion: string, src: Directory, packageManager: string, nodeVersion1: string, outputDir: string, startCommand: string): Container {
return dag
.node(nodeVersion)
.buildServer(src, packageManager, nodeVersion1, outputDir, startCommand)
}buildStatic() 🔗
BuildStatic compile le projet et retourne un conteneur nginx servant les fichiers statiques. Convient pour les SPA (React, Vue, Angular, Vite…).
Return Type
Container !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| src | Directory ! | - | Répertoire source du projet |
| packageManager | String ! | "pnpm" | Package manager à utiliser : pnpm, npm, yarn. Défaut : pnpm |
| nodeVersion | String ! | "22" | Version de Node.js. Défaut : 22 |
| outputDir | String ! | "dist" | Répertoire de sortie du build. Défaut : dist |
| nginxConfigPath | String | - | Chemin vers un fichier de configuration nginx personnalisé (optionnel) |
Example
dagger -m gitlab.com/build-core/daggerverse/node@08bcf4d14959aa90a1ddd5cb1c83162a139a012a call \
--node-version string build-static --src DIR_PATH --package-manager string --node-version string --output-dir stringfunc (m *MyModule) Example(nodeVersion string, src *dagger.Directory, packageManager string, nodeVersion1 string, outputDir string) *dagger.Container {
return dag.
Node(nodeVersion).
BuildStatic(src, packageManager, nodeVersion1, outputDir)
}@function
def example(node_version: str, src: dagger.Directory, package_manager: str, node_version1: str, output_dir: str) -> dagger.Container:
return (
dag.node(node_version)
.build_static(src, package_manager, node_version1, output_dir)
)@func()
example(nodeVersion: string, src: Directory, packageManager: string, nodeVersion1: string, outputDir: string): Container {
return dag
.node(nodeVersion)
.buildStatic(src, packageManager, nodeVersion1, outputDir)
}