// Module included in the following assemblies:
//
// * operators/olm_v1/olmv1-plain-bundles.adoc

:_mod-docs-content-type: PROCEDURE

[id="olmv1-building-plain-bundle-image-source_{context}"]
= Building a plain bundle image from an image source

The Operator Controller currently supports installing plain bundles created only from a _plain bundle image_.

.Procedure

. At the root of your project, create a Dockerfile that can build a bundle image:
+
.Example `plainbundle.Dockerfile`
[source,docker]
----
FROM scratch <1>
ADD manifests /manifests
----
<1> Use the `FROM scratch` directive to make the size of the image smaller. No other files or directories are required in the bundle image.

. Build an Open Container Initiative (OCI)-compliant image by using your preferred build tool, similar to the following example:
+
[source,terminal]
----
$ podman build -f plainbundle.Dockerfile -t \
    quay.io/<organization_name>/<repository_name>:<image_tag> . <1>
----
<1> Use an image tag that references a repository where you have push access privileges.

. Push the image to your remote registry by running the following command:
+
[source,terminal]
----
$ podman push quay.io/<organization_name>/<repository_name>:<image_tag>
----
