Skip to content

Commit 8811ef9

Browse files
committed
Split rootless and with root for dockerd
1 parent d246721 commit 8811ef9

5 files changed

Lines changed: 48 additions & 5 deletions

File tree

.woodpecker/build.yaml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,18 @@ steps:
6161
org.opencontainers.image.description: Docker daemon for usage in WoodpeckerCI.
6262
org.opencontainers.image.ref.name: kokuwaio/dockerd
6363

64+
dockerd-rootless-pr:
65+
<<: *pr
66+
settings:
67+
<<: *settings-pr
68+
name: registry.kokuwa.io/kokuwaio/dockerd:ci-${CI_PIPELINE_NUMBER}-rootless
69+
target: dockerd-rootless
70+
annotation:
71+
<<: *annotation
72+
org.opencontainers.image.title: Docker Daemon for WoodpeckerCI
73+
org.opencontainers.image.description: Docker daemon for usage in WoodpeckerCI.
74+
org.opencontainers.image.ref.name: kokuwaio/dockerd
75+
6476
cli-pr:
6577
<<: *pr
6678
settings:
@@ -110,6 +122,24 @@ steps:
110122
org.opencontainers.image.description: Docker daemon for usage in WoodpeckerCI.
111123
org.opencontainers.image.ref.name: kokuwaio/dockerd
112124

125+
dockerd-rootless:
126+
<<: *push
127+
settings:
128+
<<: *settings-push
129+
name:
130+
- registry.kokuwa.io/kokuwaio/dockerd:rootless
131+
- registry.kokuwa.io/kokuwaio/dockerd:28.2.2-rootless
132+
- docker.io/kokuwaio/dockerd:rootless
133+
- docker.io/kokuwaio/dockerd:28.2.2-rootless
134+
- ghcr.io/kokuwaio/dockerd:rootless
135+
- ghcr.io/kokuwaio/dockerd:28.2.2-rootless
136+
target: dockerd-rootless
137+
annotation:
138+
<<: *annotation
139+
org.opencontainers.image.title: Docker Daemon for WoodpeckerCI
140+
org.opencontainers.image.description: Docker daemon for usage in WoodpeckerCI.
141+
org.opencontainers.image.ref.name: kokuwaio/dockerd
142+
113143
cli:
114144
<<: *push
115145
settings:

.woodpecker/test.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ labels:
1212

1313
services:
1414
- name: dockerd
15-
image: registry.kokuwa.io/kokuwaio/dockerd:ci-${CI_PIPELINE_NUMBER}
15+
image: registry.kokuwa.io/kokuwaio/dockerd:ci-${CI_PIPELINE_NUMBER}-rootless
1616
ports: [2375]
1717
privileged: true
1818

Dockerfile

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
##
66

77
FROM docker.io/library/debian:12.11-slim@sha256:e5865e6858dacc255bead044a7f2d0ad8c362433cfaa5acefb670c1edf54dfef AS download
8-
SHELL ["/bin/bash", "-u", "-e", "-o", "pipefail", "-c"]
98
WORKDIR /tmp/docker
109
RUN --mount=type=cache,target=/var/lib/apt/lists,sharing=locked \
1110
--mount=type=cache,target=/var/cache \
@@ -25,7 +24,21 @@ RUN ARCH=$(dpkg --print-architecture) && curl --fail --silent --parallel --remot
2524
##
2625

2726
FROM docker.io/library/debian:12.11-slim@sha256:e5865e6858dacc255bead044a7f2d0ad8c362433cfaa5acefb670c1edf54dfef AS dockerd
28-
SHELL ["/bin/bash", "-u", "-e", "-o", "pipefail", "-c"]
27+
RUN --mount=type=bind,from=download,source=/tmp/docker,target=/tmp/docker \
28+
--mount=type=cache,target=/var/lib/apt/lists,sharing=locked \
29+
--mount=type=cache,target=/var/cache \
30+
--mount=type=tmpfs,target=/var/log \
31+
apt-get -qq update && \
32+
apt-get -qq install --yes --no-install-recommends /tmp/docker/containerd*.deb /tmp/docker/docker-ce-cli* /tmp/docker/docker-ce_*.deb ca-certificates && \
33+
rm -rf /var/lib/dpkg/*-old /var/lib/dpkg/status
34+
COPY --chmod=555 entrypoint-rootless.sh /usr/bin/entrypoint.sh
35+
ENTRYPOINT ["/usr/bin/entrypoint.sh"]
36+
37+
##
38+
## Docker Daemon (rootless)
39+
##
40+
41+
FROM docker.io/library/debian:12.11-slim@sha256:e5865e6858dacc255bead044a7f2d0ad8c362433cfaa5acefb670c1edf54dfef AS dockerd-rootless
2942
RUN --mount=type=bind,from=download,source=/tmp/docker,target=/tmp/docker \
3043
--mount=type=cache,target=/var/lib/apt/lists,sharing=locked \
3144
--mount=type=cache,target=/var/cache \
@@ -46,7 +59,6 @@ USER 1000
4659
##
4760

4861
FROM docker.io/library/debian:12.11-slim@sha256:e5865e6858dacc255bead044a7f2d0ad8c362433cfaa5acefb670c1edf54dfef AS cli-base
49-
SHELL ["/bin/bash", "-u", "-e", "-o", "pipefail", "-c"]
5062
RUN --mount=type=bind,from=download,source=/tmp/docker,target=/tmp/docker \
5163
--mount=type=cache,target=/var/lib/apt/lists,sharing=locked \
5264
--mount=type=cache,target=/var/cache \

Dockerfile.dockerignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
.*
22

33
!entrypoint.sh
4+
!entrypoint-rootless.sh

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Also usable with Gitlab, Github or locally, see examples for usage.
1414

1515
## Features
1616

17-
- dockerd: includes rootlesskit
17+
- dockerd: with and without rootlesskit
1818
- dockerd: configures mirror for dockerd
1919
- cli: with buildkit
2020
- cli: [variants](https://hub.docker.com/r/kokuwaio/docker-cli/tags):

0 commit comments

Comments
 (0)