Compare commits

..

4 Commits

Author SHA1 Message Date
root 6698a9bff1 Add radicale 2026-04-13 17:12:10 +03:00
root 99bfb63845 Update gitea
- rename the files
- fully qualify base
- add compose build
2026-04-13 17:10:29 +03:00
root 6333218d66 Add base busybox image, tag it 2026-04-13 17:07:15 +03:00
root c4d89813a4 Support replacing emerge at runtime 2026-04-13 17:05:21 +03:00
9 changed files with 90 additions and 25 deletions
-20
View File
@@ -1,20 +0,0 @@
# syntax=docker/dockerfile:1
# gentoo-gitea
FROM gentoo-base-gnu AS builder
WORKDIR /workdir
COPY --exclude=repos --exclude=bin . .
RUN --mount=type=cache,target=/workdir/cache,sharing=locked <<-EOF
echo 'acct-user/git gitea -git' >> /etc/portage/package.use/gitea
emerge -1v --quiet-build=y acct-user/git
/bin/bash src/setup-gitea.sh /mnt/gentoo -j8
EOF
FROM scratch
WORKDIR /
EXPOSE 3000 32799
VOLUME ["/etc/gitea", "/var/lib/gitea"]
COPY --from=builder /mnt/gentoo /
RUN rm -fR /var/db
USER git:git
CMD ["/usr/bin/gitea", "web"]
+13
View File
@@ -0,0 +1,13 @@
services:
gentoo-base-busybox:
image: registry.ceamac.ro/gentoo-base-busybox
restart: always
build:
context: .
dockerfile: base.busybox.Dockerfile
tags:
- "registry.ceamac.ro/gentoo-base-busybox"
command: /bin/sh
#stdin_open: true
#tty: true
@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1 # syntax=docker/dockerfile:1
# gentoo-gitea # gentoo-gitea
FROM gentoo-base-busybox AS builder FROM registry.ceamac.ro/gentoo-base-busybox AS builder
WORKDIR /workdir WORKDIR /workdir
COPY --exclude=repos --exclude=bin . . COPY --exclude=repos --exclude=bin . .
@@ -15,6 +15,6 @@ WORKDIR /
EXPOSE 3000 32799 EXPOSE 3000 32799
VOLUME ["/etc/gitea", "/var/lib/gitea"] VOLUME ["/etc/gitea", "/var/lib/gitea"]
COPY --from=builder /mnt/gentoo / COPY --from=builder /mnt/gentoo /
RUN rm -fR /var/db RUN tar c -j -f /var/db/pkg.tar.bz2 -C /var/db/pkg . && rm -fR /var/db/pkg
USER git:git USER git:git
CMD ["/usr/bin/gitea", "web"] CMD ["/usr/bin/gitea", "web"]
+4 -1
View File
@@ -3,7 +3,7 @@ services:
image: registry.ceamac.ro/gentoo-gitea image: registry.ceamac.ro/gentoo-gitea
restart: always restart: always
#user: 196:196 #user: 196:196
userns: nomap #userns: nomap
ports: ports:
- "127.0.0.1:3000:3000/tcp" - "127.0.0.1:3000:3000/tcp"
- "127.0.0.1:32799:32799/tcp" - "127.0.0.1:32799:32799/tcp"
@@ -16,6 +16,9 @@ services:
source: /var/lib/gitea source: /var/lib/gitea
target: /var/lib/gitea target: /var/lib/gitea
read_only: false read_only: false
build:
dockerfile: gitea.Dockerfile
context: .
#command: /bin/bash #command: /bin/bash
#stdin_open: true #stdin_open: true
+18
View File
@@ -0,0 +1,18 @@
# syntax=docker/dockerfile:1
# gentoo-radicale
FROM registry.ceamac.ro/gentoo-base-busybox AS builder
WORKDIR /workdir
COPY --exclude=repos --exclude=bin . .
RUN --mount=type=cache,target=/workdir/cache,sharing=locked <<-EOF
/bin/bash src/setup-radicale.sh /mnt/gentoo -j8
EOF
FROM scratch
WORKDIR /
EXPOSE 5232
VOLUME ["/etc/radicale", "/var/lib/radicale"]
COPY --from=builder /mnt/gentoo /
RUN tar c -j -f /var/db/pkg.tar.bz2 -C /var/db/pkg . && rm -fR /var/db/pkg
USER radicale:radicale
CMD ["/usr/bin/radicale"]
+28
View File
@@ -0,0 +1,28 @@
services:
radicale:
image: registry.ceamac.ro/gentoo-radicale
restart: always
#userns: nomap
ports:
- "127.0.0.1:5232:5232/tcp"
volumes:
- type: volume
source: radicale-etc
target: /etc/radicale
- type: volume
source: radicale-var-lib
target: /var/lib/radicale
build:
context: .
dockerfile: radicale.Dockerfile
tags:
- "registry.ceamac.ro/gentoo-radicale"
#command: /bin/bash
#stdin_open: true
#tty: true
command: /usr/bin/radicale -D
volumes:
radicale-etc:
radicale-var-lib:
+4 -2
View File
@@ -158,9 +158,10 @@ ROOT="${ROOT}"
PORTAGE_CONFIGROOT="${ROOT}" PORTAGE_CONFIGROOT="${ROOT}"
PORTAGE_TMPDIR="${PORTAGE_TMPDIR}" PORTAGE_TMPDIR="${PORTAGE_TMPDIR}"
PKGDIR="${PKGDIR}" PKGDIR="${PKGDIR}"
EMERGE="${EMERGE:=emerge}"
export ROOT PORTAGE_CONFIGROOT PORTAGE_TMPDIR PKGDIR export ROOT PORTAGE_CONFIGROOT PORTAGE_TMPDIR PKGDIR
exec emerge "\$@" exec "${EMERGE}" "\$@"
EOF EOF
chmod +x bin/"${imagename}"-emerge chmod +x bin/"${imagename}"-emerge
@@ -180,4 +181,5 @@ exec bwrap --bind "${ROOT}" / --proc /proc --dev /dev --perms 01777 --tmpfs /dev
EOF EOF
chmod +x bin/"${imagename}"-bwrap chmod +x bin/"${imagename}"-bwrap
emerge -1vuDUk ${steve} "$@" @system EMERGE="${EMERGE:=emerge}"
"${EMERGE}" -1vuDUk ${steve} "$@" @system
+21
View File
@@ -0,0 +1,21 @@
#! /bin/bash
set -euo pipefail
imagedir="${1}"
imagename="$(basename "${imagedir}")"
shift
usename="${imagedir}"/etc/portage/package.use
[[ -d ${usename} ]] && usename="${usename}"/global.conf
cat <<-EOF >> "${usename}"
*/* verify-sig verify-provenance
EOF
emerge -vk "$@" acct-user/radicale acct-group/radicale
bin/"${imagename}"-emerge -vk "$@" www-apps/radicale dev-python/packaging app-crypt/argon2 dev-python/requests
chown -R radicale:radicale "${imagedir}"/var/lib/radicale
chmod 0750 "${imagedir}"/var/lib/radicale
chmod -R o= "${imagedir}"/var/lib/radicale