- Replies:
- 0
- Words:
- 6533

gvenzl/oracle-xegvenzl/oracle-xe image, which is fast and easy to set up for local development.
sudo apt update && sudo apt install docker.io
Check that Docker is working:
docker --version
docker pull gvenzl/oracle-xe
This will download a lightweight version of Oracle Database that’s perfect for local use.
docker run -d \
--name oracledb \
-p 1521:1521 \
-e ORACLE_PASSWORD=Oracle123 \
gvenzl/oracle-xe
--name oracledb → container name-p 1521:1521 → maps Oracle’s default port to your local machine-e ORACLE_PASSWORD=Oracle123 → sets the password for the oracle usergvenzl/oracle-xe → the image we’re running-d → runs the container in the backgrounddocker run -d \
--name oracledb \
-p 1521:1521 \
-e ORACLE_PASSWORD=Oracle123 \
-v oracledb-data:/opt/oracle/oradata \
gvenzl/oracle-xe
This creates a named Docker volume (oracledb-data) to store your data persistently.
docker ps
You should see your oracledb container running and listening on port 1521.docker logs oracledb
Look for a message like:
DATABASE IS READY TO USE!
sqlplus system/Oracle123@localhost:1521/XEPDB1
system: system-level userOracle123: your passwordXEPDB1: default pluggable database name in Oracle XEDon't have SQL*Plus? Use tools like DBeaver, Oracle SQL Developer, or DataGrip.
localhost1521system or oracleOracle123XEPDB1| Task | Command |
|---|---|
| Stop container | docker stop oracledb |
| Start container | docker start oracledb |
| View logs | docker logs oracledb |
| Remove container | docker rm -f oracledb |
| Remove volume | docker volume rm oracledb-data |
version: '3.8'
services:
oracledb:
image: gvenzl/oracle-xe
container_name: oracledb
ports:
- "1521:1521"
environment:
ORACLE_PASSWORD: Oracle123
volumes:
- oracledb-data:/opt/oracle/oradata
volumes:
oracledb-data:
Start it with:
docker-compose up -d
XEPDB1 as the default service name in Oracle XE
image quote pre code