How to Prepare Your Computer for Oracle APEX 26.1

Check requirements, install Java, a container engine, SQLcl, and VS Code, and download APEX and ORDS before installing Oracle APEX 26.1.

Most failed Oracle APEX installations fail for ordinary reasons: the wrong Java version, a container engine with too little memory, a port already in use, or files unzipped into a folder with spaces in its name. An hour spent preparing your computer removes those problems before they start.

This guide gets a computer ready for Oracle APEX 26.1 on Windows, macOS, or Linux: the four pieces of an APEX environment, how to choose an installation path, hardware and operating system requirements, and installing Java, a container engine, SQLcl, and VS Code, then downloading and organizing APEX and ORDS.

These steps come from Oracle APEX 26.1 Book: The Complete Guide, where every command was run as shown.

The Four Pieces of an APEX Environment

PieceWhat it doesVersion used here
Oracle DatabaseStores your data, the APEX engine, and your application definitionsOracle AI Database 26ai Free, release 23.26
Oracle APEXThe development environment and runtime, installed into the database26.1.0
Oracle REST Data Services (ORDS)The web server and gateway between browsers and the database26.2
JavaThe runtime ORDS needsJDK 21 (17 also works)

APEX 26.1 needs Oracle Database 19c with Release Update 19.18 or later, or Oracle AI Database 26ai release 23.26.0 or later, and ORDS 26.1.1 or later. ORDS needs Java 17 or 21; earlier versions will not start it.

Oracle AI Database 26ai Free is the natural choice for learning: it costs nothing, needs no registration, and has the same SQL, PL/SQL, JSON, and AI features as the paid editions, with limits on resources. Features that need release 26ai, such as BOOLEAN page items, work on it too.

Choose an Installation Path

PathBest for
Containers (Docker or Podman)Everyone, on any operating system. Fast to set up, easy to throw away and rebuild. Recommended.
Native on WindowsWindows users who cannot or prefer not to use containers
Native on LinuxLinux servers and workstations, and anyone preparing for a production install
macOSMac users: the database runs in a container, ORDS and Java natively
No installationA free workspace on oracleapex.com, or an Always Free Autonomous Database in Oracle Cloud

The container path suits most people for three reasons. The database arrives preinstalled and configured in one image, removing the longest step. The database stays separate from the rest of the computer, so you can stop or delete it without leaving anything behind. And the commands are identical on Windows, macOS, and Linux.

Hosted options are great for a quick start but limit what you can see: on oracleapex.com you cannot sign in as the instance administrator or reach the database from outside APEX. Many developers keep a local container install for learning and a free cloud workspace for sharing prototypes; application exports move easily between the two.

Hardware Requirements

ResourceMinimumComfortable
Memory (RAM)8 GB16 GB or more
Free disk space25 GB40 GB
Processor64-bit, 2 cores (Intel, AMD, or Apple Silicon)4 cores or more
Display1366 x 7681920 x 1080 or larger

The database limits itself to 2 GB of memory, but the operating system, container engine, ORDS, and browser need memory too; on an 8 GB computer, close other large programs while you install. The disk figure includes the full database image (about 13 GB unpacked), the database files, the APEX files (about 1 GB unzipped), and your data. A large display helps more than you might expect, because Page Designer shows three panes side by side.

Oracle AI Database 26ai Free is available for both x86-64 and ARM64. On an Apple M-series Mac, Docker downloads the ARM64 image automatically, and it runs natively.

Operating System Requirements

  • Windows: for the native database install, 64-bit Windows 10 or 11 Pro, Enterprise, or Education, or Windows Server 2016 or later. Windows Home editions are not supported natively; use containers. Docker Desktop needs WSL 2 and works on every edition of Windows 10 and 11.
  • Linux: Oracle Linux 8 or 9, Red Hat Enterprise Linux 8 or 9, or a compatible distribution for the native install; any modern distribution with Docker Engine or Podman for containers.
  • macOS: macOS 13 (Ventura) or later with Docker Desktop, Podman Desktop, or Colima. There is no native Oracle Database for macOS, so the database always runs in a container.

You need administrator rights, and these ports must be free:

PortUsed by
1521The database listener (Oracle Net)
8080ORDS over HTTP, the address you open in the browser
8443ORDS over HTTPS (optional)

If a port is taken, choose another one when you start the container or ORDS.

Install Java

ORDS is a Java program and needs Java 17 or 21. Oracle JDK, Oracle GraalVM, or an OpenJDK build such as Eclipse Temurin all work. Check what you have first.

Example:

java -version

Output:

java version "21.0.12.1" 2026-08-18 LTS
Java(TM) SE Runtime Environment (build 21.0.12.1+1-LTS-4)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.12.1+1-LTS-4, mixed mode, sharing)

If the first line shows version 17 or 21, skip ahead. Otherwise, install Java 21.

On Windows

  1. On Oracle's Java downloads page, choose JDK 21, the Windows tab, and download the x64 Installer (.exe).
  2. Run it with the defaults; Java goes into C:\Program Files\Java\jdk-21.
  3. In Settings, System, About, Advanced system settings, Environment Variables, create the system variable JAVA_HOME with the value C:\Program Files\Java\jdk-21.
  4. Edit the system Path, add %JAVA_HOME%\bin, and move it to the top so it wins over older Java versions.
  5. Open a new PowerShell window and run java -version.

Create JAVA_HOME under System variables, not your user variables: a background service for ORDS sees only system variables.

On macOS

With Homebrew (from brew.sh) installed:

Example:

brew install --cask temurin@21

Or run Oracle's JDK 21 .dmg installer, ARM64 for Apple Silicon or x64 for Intel. Either way, add these lines to ~/.zshrc so every new terminal finds Java.

Lines for ~/.zshrc:

export JAVA_HOME=$(/usr/libexec/java_home -v 21)
export PATH="$JAVA_HOME/bin:$PATH"

On Linux

Example (Oracle Linux, Red Hat):

sudo dnf install -y java-21-openjdk
java -version

Example (Ubuntu, Debian):

sudo apt update
sudo apt install -y openjdk-21-jdk
java -version

With several Java versions installed, choose the default with sudo alternatives --config java (Oracle Linux, Red Hat) or sudo update-alternatives --config java (Ubuntu, Debian).

Install a Container Engine

The container and macOS paths need a container engine. Docker Desktop is free for personal use, education, and small businesses, while larger organizations need a paid subscription. Podman is a free, open-source alternative that accepts the same commands: anywhere you see docker, you can type podman.

Docker Desktop on Windows

  1. If WSL 2 is not installed, run wsl --install in PowerShell as Administrator, then restart.
  2. Download Docker Desktop for Windows from docker.com and install it, keeping "Use WSL 2 instead of Hyper-V" selected.
  3. Start Docker Desktop and wait until it shows the engine is running.

Docker Desktop on macOS

Download Docker Desktop for Mac, choosing Apple Silicon or Intel chip, open the .dmg, and drag Docker to Applications. With Homebrew instead:

Example:

brew install --cask docker

Podman or Docker Engine on Linux

Example (Podman on Oracle Linux or Red Hat):

sudo dnf install -y podman
podman --version

For Docker Engine on Ubuntu, follow Docker's install guide, then add your user to the docker group so you do not need sudo, and sign out and back in.

Example:

sudo usermod -aG docker $USER

Give the Engine Enough Memory

On Windows and macOS, Docker Desktop runs containers inside a small virtual machine with a fixed amount of memory. In Docker Desktop, Settings, Resources, set Memory to at least 4 GB, or 6 GB on a 16 GB computer. With WSL 2 on Windows, set it in %UserProfile%\.wslconfig instead.

Contents of .wslconfig:

[wsl2]
memory=6GB

Restart Docker Desktop, then check that everything works; "Hello from Docker!" means the engine is ready.

Example:

docker run --rm hello-world

Install SQLcl

SQLcl is Oracle's command-line interface for the database: the most convenient way to run SQL scripts, and the tool for exporting and importing applications from the command line.

  1. Download sqlcl-latest.zip from https://download.oracle.com/otn_software/java/sqldeveloper/sqlcl-latest.zip (about 120 MB).
  2. Unzip it into a folder without spaces, such as C:\oracle\sqlcl or ~/oracle/sqlcl.
  3. Add its bin folder to PATH: C:\oracle\sqlcl\bin on Windows, or export PATH="$HOME/oracle/sqlcl/bin:$PATH" in ~/.zshrc or ~/.bashrc.
  4. Open a new terminal and run sql -version.

SQLcl uses the same Java as ORDS.

Install VS Code with SQL Developer

Visual Studio Code with Oracle's SQL Developer extension gives you a schema browser, a SQL worksheet, a PL/SQL editor and debugger, and, new with APEX 26.1, viewing and editing APEX applications in APEXlang.

  1. Install VS Code from code.visualstudio.com.
  2. Open the Extensions view (Ctrl+Shift+X, or Cmd+Shift+X on a Mac), search for Oracle SQL Developer, and install the extension published by Oracle.

Download APEX and ORDS

Both are free downloads, and Oracle keeps permanent "latest" links that need no sign-in.

ProductDownloadSize
Oracle APEXhttps://download.oracle.com/otn_software/apex/apex-latest.zipAbout 325 MB
ORDShttps://download.oracle.com/otn_software/java/ords/ords-latest.zipAbout 200 MB

Oracle's APEX downloads page also lists specific versions (the 26.1 file is apex_26.1.zip), patch sets, and known issues. Download the full APEX file rather than the "English language only" one: both install APEX, but only the full file can run the builder and built-in messages in other languages.

Organize the Files

Keep everything in one folder with no spaces in its path, because some installation scripts do not cope with spaces. The examples use a folder called apex-lab.

Folder layout:

apex-lab/
|-- apex/            <- unzipped apex-latest.zip (contains apexins.sql, images/, ...)
|-- ords/            <- unzipped ords-latest.zip (contains bin/ords, ords.war, ...)
`-- ords-config/     <- empty; ORDS writes its configuration here

On macOS or Linux, create it from the terminal.

Example:

mkdir -p ~/apex-lab/ords ~/apex-lab/ords-config
cd ~/apex-lab
curl -LO https://download.oracle.com/otn_software/apex/apex-latest.zip
curl -LO https://download.oracle.com/otn_software/java/ords/ords-latest.zip
unzip -q apex-latest.zip
unzip -q ords-latest.zip -d ords

On Windows, create C:\apex-lab, download both files, and use Extract All so you end up with C:\apex-lab\apex and C:\apex-lab\ords. Windows 10 and 11 include curl and tar, so the commands above also work in PowerShell with backslashes.

Finally, add the ORDS bin folder to PATH, C:\apex-lab\ords\bin on Windows or export PATH="$HOME/apex-lab/ords/bin:$PATH" on macOS and Linux, and check it.

Example:

ords --version

Output:

Oracle REST Data Services 26.2.3.r2371104

Choose Your Passwords

The installation asks for several passwords: SYS and SYSTEM, the APEX instance administrator, and the internal accounts ORDS uses. Decide them now and keep them in a password manager.

A pattern that satisfies both Oracle Database and APEX is at least 12 characters with upper- and lowercase letters, a digit, and a punctuation character such as # or _. Avoid @, ", ', /, and &, which have special meanings in connection strings and SQL*Plus and cause confusing errors on a command line.

A local environment is for learning: it listens on your own computer only and uses plain HTTP. Production needs more: HTTPS, strong authentication, least-privilege schemas, and network access control.

Final Checklist

  • You have chosen an installation path.
  • Your computer has at least 8 GB of memory and 25 GB of free disk space.
  • java -version reports Java 17 or 21.
  • For containers, docker run --rm hello-world works and the engine has at least 4 GB of memory.
  • APEX and ORDS are unzipped into a folder without spaces, and ords --version works.
  • You have chosen your passwords.

Conclusion

An APEX 26.1 environment is Oracle Database, APEX, ORDS, and the Java that ORDS needs: here Oracle AI Database 26ai Free, APEX 26.1, ORDS 26.2, and JDK 21. Pick a path, preferably containers, check hardware and ports, install Java, a container engine with enough memory, SQLcl, and VS Code, and unzip APEX and ORDS into a folder without spaces. With that done, the installation itself takes about half an hour.

Vinish Kapoor
Vinish Kapoor

An Oracle ACE, author of four books on Oracle APEX, SQL and PL/SQL, and Oracle Forms, and a software developer building Oracle database applications since 2001.

guest

0 Comments
Oldest
Newest Most Voted
00