Compare commits

..

5 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
root 07d4bec762 Base gitea on busybox glibc image
Build gitea from busybox glibc image.
It gets a little smaller (230M instead of 270M).
Added bash, gitea warns if not found.
2026-02-09 12:26:04 +02:00
9 changed files with 104 additions and 7 deletions
+12
View File
@@ -0,0 +1,12 @@
# syntax=docker/dockerfile:1
# gentoo-base-busybox
FROM docker.io/gentoo/stage3:nomultilib AS builder
WORKDIR /workdir
COPY --exclude=repos . .
COPY repos /var/db/repos
RUN echo 'FEATURES="-ipc-sandbox -network-sandbox -pid-sandbox"' >> /etc/portage/make.conf
RUN --mount=type=cache,target=/workdir/cache,sharing=locked \
/bin/bash src/bootstrap.sh -u -r /var/db/repos/ceamac -p ceamac:linux/arch/amd64/busybox -m make-docker.conf /mnt/gentoo -j12
CMD ["/bin/sh"]
+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
+2 -2
View File
@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1
# gentoo-gitea
FROM gentoo-base-gnu AS builder
FROM registry.ceamac.ro/gentoo-base-busybox AS builder
WORKDIR /workdir
COPY --exclude=repos --exclude=bin . .
@@ -15,6 +15,6 @@ WORKDIR /
EXPOSE 3000 32799
VOLUME ["/etc/gitea", "/var/lib/gitea"]
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
CMD ["/usr/bin/gitea", "web"]
+4 -1
View File
@@ -3,7 +3,7 @@ services:
image: registry.ceamac.ro/gentoo-gitea
restart: always
#user: 196:196
userns: nomap
#userns: nomap
ports:
- "127.0.0.1:3000:3000/tcp"
- "127.0.0.1:32799:32799/tcp"
@@ -16,6 +16,9 @@ services:
source: /var/lib/gitea
target: /var/lib/gitea
read_only: false
build:
dockerfile: gitea.Dockerfile
context: .
#command: /bin/bash
#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_TMPDIR="${PORTAGE_TMPDIR}"
PKGDIR="${PKGDIR}"
EMERGE="${EMERGE:=emerge}"
export ROOT PORTAGE_CONFIGROOT PORTAGE_TMPDIR PKGDIR
exec emerge "\$@"
exec "${EMERGE}" "\$@"
EOF
chmod +x bin/"${imagename}"-emerge
@@ -180,4 +181,5 @@ exec bwrap --bind "${ROOT}" / --proc /proc --dev /dev --perms 01777 --tmpfs /dev
EOF
chmod +x bin/"${imagename}"-bwrap
emerge -1vuDUk ${steve} "$@" @system
EMERGE="${EMERGE:=emerge}"
"${EMERGE}" -1vuDUk ${steve} "$@" @system
+2 -2
View File
@@ -8,7 +8,7 @@ imagename="$(basename "${imagedir}")"
shift
usename="${imagedir}"/etc/portage/package.use
[[ -d ${usename} ]] && usename="${usename}"/php.conf
[[ -d ${usename} ]] && usename="${usename}"/gitea.conf
cat <<-EOF >> "${usename}"
*/* cxx
@@ -21,7 +21,7 @@ dev-vcs/git -perl
sys-apps/shadow su
EOF
bin/"${imagename}"-emerge -vk "$@" gitea dev-vcs/git-lfs
bin/"${imagename}"-emerge -vk "$@" www-apps/gitea dev-vcs/git-lfs app-shells/bash
bin/"${imagename}"-emerge -1vuDUk "$@" @world
bin/"${imagename}"-emerge -1c --with-bdeps=n "$@"
+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