Site icon Ron Ekins' – Oracle Technology, DevOps and Kubernetes Blog

How to Run a Containerised Oracle AI Database 26ai FREE on a Mac with Podman

Oracle DBA working on databases at a computer workstation

An Oracle database administrator works at a multi-screen workstation surrounded by technical references and equipment.

In this short post I will share how to run the latest Oracle AI Database 26ai (23.26.0.3.0) ARM container image on a MacBook with Podman.

In this Blog post I will walkthrough the following steps:

Environment

For this post I am using Podman version 6.1.4 running on macOS 26.7.2 which I installed using brew install podman, brew upgrade podman.

Use podman -v to check version of podman, and sw_vers -ProductVersion to confirm macOS version, for example:

% podman -v
% sw_vers -ProductVersion

Confirm current hardware platform with uname -m or arch, for example.

Initialise Machine

To start, initialise a new Podman machine with podman machine init this will automatically pull back a Podman VM image and create a VM on your MacBook.

The podman machine init accepts a number of parameters including –cpus –memory and –disk-size.

% podman machine init --cpus 4 --memory 4096 --disk-size 25

Start Machine

To start our Podman Linux VM use podman machine start, if no name is specified, it defaults to podman-machine-default

% podman machine start

Pull Image

The Oracle Container Registry provides access to Oracle supported and maintained images for Oracle Enterprise Editions and Oracle AI Database 26ai Free, with two type of images

The Full image: supports all the database features provided by Oracle AI Database 26ai Free.

The Lite image: smaller image size with a stripped-down installation of the database (~80% image size reduction).

Skopeo

Skopeo (Greek for “remote viewing”) is a great tool for managing images and can be installed using brew.

% brew install skopeo

Using skopeo we can confirm available images for our platform by filtering on RepoTags check available versions and platforms, for example:

% skopeo inspect docker://container-registry.oracle.com/database/free:23.26.3.0-arm64 --tls-verify=false | jq '[.RepoTags]'
podman pull container-registry.oracle.com/database/free:latest --tls-verify=false

Use podman image list to confirm download.

% podman image list

Oracle AI Database 26ai Free

Create Data Volume

Before we start our database, let’s first create a persistent volume called oradata with a label called version set to 26ai using podman volume create and check details using podman volume inspect.

% podman volume create --label version=26ai oradata

% podman volume inspect oradata

Create Database Secret

Now set-up a Podman secret to manage the database password.

% echo -n "podmansecretpasword" | podman secret create ora-secret -

Start Database 23ai

If you have followed all of the above, you should now have an Oracle AI Database 26ai Free image, data volume and secret.

Start the Oracle AI Database 26ai Free container with:

% podman run --detach --volume oradata:/opt/oracle/oradata \
--secret ora-secret,type=env,target=ORACLE_PWD \
--publish 1521:1521 \
--name oracle26ai \
container-registry.oracle.com/database/free:latest

Wait a few minutes, and check container status with podman ps, wait for the container to report healthy.

Database Alert log

Use podman logs <container name> to see database container log file, for example.

% podman logs oracle26ai

Database Connection

Now let’s connect to the Database using sqlcl and check the host name, database version and pluggable database names.

% sql sys/podmansecretpasword@//localhost:1521/FREE as sysdba
SQL> select INSTANCE_NAME, HOST_NAME, VERSION_FULL, EDITION from v$instance;

Summary

In this blog post I have shared how to:

Podman Desktop

You can also use the Podman Desktop to manage your Oracle AI Database 26ai container but that’s for another post.

Exit mobile version