I couldn't push or pull from any repositories until I set -git-dir following the instructions in knot-hosting, so maybe this file should just created when creating the Dockerfile?
+6
-1
Dockerfile
+6
-1
Dockerfile
···
20
20
label org.opencontainers.image.vendor='tangled.sh'
21
21
label org.opencontainers.image.licenses='MIT'
22
22
23
+
arg UID=1000
24
+
arg GID=1000
25
+
23
26
copy rootfs .
24
27
run chmod 755 /etc
25
28
run chmod -R 755 /etc/s6-overlay
26
29
run apk add shadow s6-overlay execline openssl openssh git curl bash
27
-
run useradd -d /home/git git && openssl rand -hex 16 | passwd --stdin git
30
+
run groupadd -g $GID -f git
31
+
run useradd -u $UID -g $GID -d /home/git git
32
+
run openssl rand -hex 16 | passwd --stdin git
28
33
run mkdir -p /home/git/repositories && chown -R git:git /home/git
29
34
copy --from=builder /usr/bin/knot /usr/bin
30
35
run mkdir /app && chown -R git:git /app
+1
-1
readme.md
+1
-1
readme.md
···
33
33
but you can change it with the `UID` and `GID` build arguments.
34
34
35
35
```sh
36
-
docker build -t knot:latest --build-arg UID=$(id -u) GID=$(id -u)
36
+
docker build -t knot:latest --build-arg UID=$(id -u) GID=$(id -g)
37
37
```
38
38
39
39
The command above for example will create a user with the host user's UID and GID.