mirror of
https://github.com/opnsense/src.git
synced 2026-05-28 04:12:45 -04:00
This adds three OCI archive format files to the release containing
FreeBSD base images suitable for static linked, dynamic linked and shell
workloads. The shell image also contains pkg-bootstrap and can be easily
extended by installing packages (including pkgbase packages).
Approved by: re (cperciva)
Reviewed by: dch, cpersiva, jlduran, zlei
Differential Revision: https://reviews.freebsd.org/D46759
MFC after: 2 days
(cherry picked from commit d03c82c28da86e0812b98b051d24ae5980804ad7)
(cherry picked from commit 6686056ca3)
27 lines
1.1 KiB
Text
27 lines
1.1 KiB
Text
# This is an example showing how to extend the freebsd-minimal OCI image by
|
|
# installing additional packages while keeping the resulting image as small as
|
|
# possible.
|
|
|
|
# The OS version matching the desired freebsd-minimal image
|
|
ARG version=15.0-CURRENT-amd64
|
|
|
|
# Select freebsd-minimal as our starting point.
|
|
FROM localhost/freebsd-minimal:${version}
|
|
|
|
# A list of package(s) to install
|
|
ARG packages
|
|
|
|
# Install package management tools. We specify 'FreeBSD' as the repository to
|
|
# use for downloading pkg since the freebsd-minimal image has both FreeBSD and
|
|
# FreeBSD-base pkg repo configs installed and FreeBSD-base does not contain the
|
|
# pkg package.
|
|
RUN env ASSUME_ALWAYS_YES=yes pkg bootstrap -r FreeBSD && pkg update
|
|
|
|
# Install some package(s).
|
|
RUN pkg install -y ${packages}
|
|
|
|
# Clean up and remove package management overhead. We delete downloaded
|
|
# packages, uninstall pkg and delete the repository metadata downloaded by 'pkg
|
|
# install'. This retains the record of which packages are installed in the
|
|
# image.
|
|
RUN pkg clean -ay && pkg delete -fy pkg && rm -rf /var/db/pkg/repos
|