Solved Poudriere jails taking alot of disk space (solved)

Each of my poudriere jails was eating 70GB of disk space.
Problem and solution was simple.
I compiled 2500 packages and my DISTFILES directory contained 50GB of "sources" , and each jail copied over this directory.
Wiping of the contents of this directory made poudriere jail go from 70GB to reasonable 20GB (mostly compiled packages).
 
My poudriere setup just mounts /usr/ports from the host to the jail, i see you've gone through a different way.
 
  • Like
Reactions: mer
Can you post your poudriere.conf file and command line stuff you use ? Thanks.
Not i use a zfs mount for /usr/ports
 
Code:
% poudriere ports -l
PORTSTREE METHOD TIMESTAMP           PATH
default   null   2025-10-29 23:07:17 /usr/ports/
poudriere-ports(8)
Code:
     Import a local manually-managed ports tree named local from /usr/ports.

       # poudriere ports -c -p local -m null -M /usr/ports
poudriere.conf
Code:
DISTFILES_CACHE=/usr/ports/distfiles
 
My poudriere setup just mounts /usr/ports from the host to the jail, i see you've gone through a different way.
Good thinking. Not just related to jails, but "how do I keep things consistent across multiple systems" (jails roughly a system).
Source? Share it.
Build/Objects? Triple check but often can be shared. This has been useful (in the past) when upgrading systems from source.
One system holds the actual source (/usr/src), holds the output of "make world" (/usr/obj). Other systems net mount the original output directories, then do "make install".
Same principle applies to ports (source, distfiles, builds).

One system has the source and the make output, everything else net mounts and uses it. That way you can have a machine with enough resources to easily build, then install on machines with fewer resources.

Jails/distinct systems, same thought process.
 
Back
Top