diff --git a/stdlib/docker/client.cue b/stdlib/docker/client.cue new file mode 100644 index 00000000..801c8b18 --- /dev/null +++ b/stdlib/docker/client.cue @@ -0,0 +1,42 @@ +package docker + +import ( + "dagger.io/dagger/op" + "dagger.io/alpine" +) + +#Client: { + // Docker CLI version + version: *"20.10.6" | string + + #Code: #""" + curl -fsSL https://download.docker.com/linux/static/stable/x86_64/docker-\#(version).tgz | tar zxvf - --strip 1 -C /usr/bin docker/docker + """# + + #up: [ + op.#Load & { + from: alpine.#Image & { + package: bash: true + package: jq: true + package: curl: true + package: "openssh-client": true + } + }, + + op.#WriteFile & { + content: #Code + dest: "/entrypoint.sh" + }, + + op.#Exec & { + args: [ + "/bin/sh", + "--noprofile", + "--norc", + "-eo", + "pipefail", + "/entrypoint.sh", + ] + }, + ] +} diff --git a/stdlib/docker/docker.cue b/stdlib/docker/docker.cue index f9da82a3..aca06a1e 100644 --- a/stdlib/docker/docker.cue +++ b/stdlib/docker/docker.cue @@ -91,7 +91,7 @@ import ( """# #up: [ - op.#FetchContainer & {ref: "index.docker.io/docker:latest"}, + op.#Load & {from: #Client}, op.#WriteFile & { content: key