Skip to content

Commit 76a2c0f

Browse files
committed
docs improvements
1 parent bf8bca7 commit 76a2c0f

File tree

8 files changed

+189
-52
lines changed

8 files changed

+189
-52
lines changed

docs/src/content/docs/getting-started/backups.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import { Aside } from "@astrojs/starlight/components";
1212
Create datapump dumps of all users, including APEX workspaces and applications:
1313

1414
```bash
15-
local-23ai.sh backup-all
15+
local-26ai.sh backup-all
1616
```
1717

1818
Files are written to the `./backups/export` directory.
@@ -22,15 +22,15 @@ Files are written to the `./backups/export` directory.
2222
Backup a single schema with its workspace and applications:
2323

2424
```bash
25-
local-23ai.sh backup-schema movies
25+
local-26ai.sh backup-schema movies
2626
```
2727

2828
### Import Backup
2929

3030
Restore a previously created backup:
3131

3232
```bash
33-
local-23ai.sh import-backup movies
33+
local-26ai.sh import-backup movies
3434
```
3535

3636
<Aside type="note" title="Future Enhancements">

docs/src/content/docs/getting-started/common-tasks.mdx

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,53 @@ For development environments, you might want to disable archive logging. You wil
8686
./scripts/disable-archive-logs.sh
8787
```
8888

89+
### Manage APEX Account Expiration
90+
91+
#### Unexpire Accounts
92+
93+
If APEX_PUBLIC_USER or workspace accounts are locked due to password expiration, unlock them with:
94+
95+
```bash
96+
./scripts/unexpire-accounts.sh
97+
```
98+
99+
This is useful after database migrations or when accounts have expired due to time constraints.
100+
101+
#### Disable Password Expiration
102+
103+
To prevent APEX workspace accounts from expiring in the future:
104+
105+
```bash
106+
./scripts/disable-password-expiration.sh
107+
```
108+
109+
<Aside type="note">
110+
Even with password expiration disabled, users may still be prompted to change
111+
their password on their first login after a migration.
112+
</Aside>
113+
114+
## Workspace Import/Export
115+
116+
### Import All Exports
117+
118+
Automatically import all export files from the `./backups/import/` directory:
119+
120+
```bash
121+
./scripts/import-all.sh
122+
```
123+
124+
This is particularly useful during database migrations when you need to bulk import multiple workspaces and schemas. The script will provide a summary of successful and failed imports.
125+
126+
### Fix Workspace Export Issues
127+
128+
When re-importing APEX workspaces, you may encounter issues due to a [known bug with group assignments](https://forums.oracle.com/ords/apexds/post/apex-18-2-failing-to-import-workspace-5048). Fix this automatically:
129+
130+
```bash
131+
./scripts/fix-ws-group-ids.sh
132+
```
133+
134+
This script updates all export files in `./backups/import/` to remove problematic group ID parameters, allowing successful re-import.
135+
89136
## Complete Environment Reset
90137

91138
### Delete All Data

docs/src/content/docs/getting-started/creating-users.mdx

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,12 @@ local-26ai.sh clear-schema movies
4848
# Asks for confirmation before proceeding
4949
```
5050

51+
To skip the confirmation prompt (useful for automation), use the `-y` flag:
52+
53+
```bash
54+
local-26ai.sh clear-schema movies -y
55+
```
56+
5157
<Aside type="caution" title="Data Loss Warning">
5258
This drops ALL objects in the schema. Never run this accidentally on important
5359
schemas! Or better: run backups regularly.
@@ -69,10 +75,10 @@ All created users are automatically stored in SQLcl's connection store:
6975

7076
```bash
7177
# Connect using the stored connection
72-
sql -name local-23ai-movies
78+
sql -name local-26ai-movies
7379

7480
# Connect to sys user
75-
sql -name local-23ai-sys
81+
sql -name local-26ai-sys
7682
```
7783

7884
You will also find the connections in the VS Code SQL Developer extension. You might need to refresh the connections list after creating a new user.
@@ -81,7 +87,7 @@ You will also find the connections in the VS Code SQL Developer extension. You m
8187

8288
Use these connection details for other development tools:
8389

84-
- **Host**: 23ai
90+
- **Host**: 26ai
8591
- **Port**: 1521
8692
- **Service**: FREEPDB1
8793
- **Username**: Your schema name

docs/src/content/docs/getting-started/index.mdx

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ sidebar:
77

88
import { Aside } from "@astrojs/starlight/components";
99

10-
Get your Oracle 23ai database with APEX and ORDS running locally in just a few minutes. This guide will walk you through the complete setup process.
10+
Get your Oracle 26ai database with APEX and ORDS running locally in just a few minutes. This guide will walk you through the complete setup process.
1111

1212
## Prerequisites
1313

@@ -122,6 +122,12 @@ If you get an error messsage saying "Account Is Locked" run the following:
122122

123123
You can now reload the APEX page at http://localhost:8181/ords/apex and should see no more error messages.
124124

125+
If you don't want APEX to force you to change passwords, you can also run the disable password expiration script:
126+
127+
```sh
128+
./scripts/disable-password-expiration.sh
129+
```
130+
125131
### 7. PATH Configuration
126132

127133
For easier script access, add the repository to your PATH:

docs/src/content/docs/getting-started/install-apps-scripts.mdx

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,17 @@ This will:
2525
- List of invalid objects
2626
- APEX object dependency scan results
2727

28+
### Skip Confirmation
29+
30+
To skip the confirmation prompt (useful for automation), use the `-y` flag:
31+
32+
```bash
33+
local-26ai.sh test-app-install ./path/to/my_app.sql -y
34+
```
35+
2836
## Test SQL Scripts
2937

30-
Test application installations in a clean environment:
38+
Test SQL scripts in a clean environment:
3139

3240
```bash
3341
local-26ai.sh test-script-install ./path/to/sql_script.sql
@@ -40,3 +48,11 @@ This will:
4048
- Provide a summary with:
4149
- Object types and counts
4250
- List of invalid objects
51+
52+
### Skip Confirmation
53+
54+
To skip the confirmation prompt (useful for automation), use the `-y` flag:
55+
56+
```bash
57+
local-26ai.sh test-script-install ./path/to/sql_script.sql -y
58+
```

docs/src/content/docs/index.mdx

Lines changed: 83 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
---
2-
title: Introduction
3-
description: Containerized APEX development environment - Have a 26ai with APEX and ORDS running in minutes
2+
title: Oracle APEX Local Development Environment - Containerized Setup
3+
description: Containerized Oracle APEX development environment with 26ai database and ORDS. Works with Docker, Podman, or any container runtime. Set up local APEX development in minutes with automated workspace management, backups, and testing tools.
44
sidebar:
55
order: 10
66
template: doc
77
hero:
8-
tagline: Have a 26ai with APEX and ORDS running in a few minutes. A containerized development environment that makes Oracle APEX development on your local machine as easy as possible.
8+
tagline: Set up Oracle APEX local development in minutes. A containerized environment that makes building and testing APEX applications on your machine effortless.
99
actions:
1010
- text: Get Started
1111
link: /products/uc-local-apex-dev/docs/getting-started/
@@ -16,55 +16,108 @@ hero:
1616
variant: minimal
1717
---
1818

19-
uc-local-apex-dev is a ready-to-use containerized development environment that automates common Oracle APEX development tasks. Get a complete Oracle 26ai database with APEX and ORDS running locally with optimal settings and convenient bash scripts for common operations.
19+
uc-local-apex-dev is a containerized Oracle APEX development environment that **automates the tedious parts** of administering a local environment. Works with Docker, Podman, or any container runtime. Get a complete Oracle 26ai database with APEX and ORDS (with SSL) running on your machine, plus convenient bash scripts that handle workspace creation, backups, schema clearing, and script/APEX application testing with a single command.
2020

2121
## Key Features
2222

2323
import { Card, CardGrid } from "@astrojs/starlight/components";
2424

2525
<CardGrid>
2626
<Card title="Quick Setup" icon="rocket">
27-
Get Oracle 26ai with APEX and ORDS running in just a few minutes with
28-
automated setup scripts.
27+
Get Oracle 26ai with APEX 24.2+ and ORDS running in minutes using any
28+
container runtime (Docker, Podman, etc.) with automated setup scripts.
2929
</Card>
3030
<Card title="Oracle 26ai" icon="seti:db">
31-
Run the latest Oracle Database 26ai with all features enabled.
31+
Run the latest Oracle Database 26ai Free with all features enabled and
32+
pre-configured for development.
3233
</Card>
33-
<Card title="User & Workspace Management" icon="add-document">
34-
Create users and workspaces with optimal settings using a single command.
35-
All users are stored in SQLcl and VS Code for easy access.
34+
<Card title="One-Command Operations" icon="laptop">
35+
Simple wrapper script (local-26ai.sh) turns complex tasks into single
36+
commands: create users, backup workspaces, clear schemas, test installs.
37+
</Card>
38+
<Card title="Automated User Management" icon="add-document">
39+
Create users and workspaces with optimal development grants using a single
40+
command. Users are automatically registered in SQLcl and VS Code for instant
41+
access.
3642
</Card>
3743
<Card title="Backup & Restore" icon="cloud-download">
38-
Easily backup and restore your data, workspaces, and applications with
39-
built-in datapump integration.
44+
Built-in Oracle DataPump integration for easy backup and restore of schemas,
45+
workspaces, and applications with a single command.
46+
</Card>
47+
<Card title="Installation Testing" icon="approve-check">
48+
Test APEX application installs and SQL scripts repeatedly in isolated test
49+
users. Automatically validates dependencies and installation success.
4050
</Card>
41-
<Card title="Development Tools" icon="seti:config">
42-
Built-in support for SQLcl, VS Code SQL Developer, and PL/SQL debugging.
51+
<Card title="HTTPS/SSL Ready" icon="approve-check-circle">
52+
ORDS runs with SSL support using self-signed certificates for secure local
53+
development matching production environments.
4354
</Card>
44-
<Card title="Testing Environment" icon="approve-check">
45-
Test APEX application installs and install scripts with automated validation
46-
and dependency scanning.
55+
<Card title="PL/SQL Debugging" icon="seti:config">
56+
Pre-configured with all necessary grants and settings for VS Code SQL
57+
Developer debugger and SQLcl development.
4758
</Card>
4859
</CardGrid>
4960

50-
## Perfect for APEX Developers
61+
## Perfect for Local APEX Development
5162

52-
This environment is specifically designed for Oracle APEX developers who want to:
63+
This containerized environment is specifically designed for Oracle APEX developers who need a local development database and want to:
5364

54-
- **Develop Locally**: Work on APEX applications without needing a remote database
55-
- **Test Repeatedly**: Clear schemas and test installation scripts multiple times
56-
- **Debug Efficiently**: Use VS Code SQL Developer debugger with proper grants
57-
- **Manage Workspaces**: Create and manage multiple development workspaces easily
58-
- **Backup Regularly**: Protect your work with automated backup solutions
65+
- **Develop Locally**: Work on APEX applications without needing a remote database, cloud instance, or apex.oracle.com
66+
- **Test Installation Scripts**: Clear schemas and test APEX application installs multiple times with zero hassle
67+
- **Rapid Prototyping**: Spin up new workspaces and test schemas instantly for experimenting with ideas
68+
- **Debug PL/SQL Code**: Use VS Code SQL Developer debugger with all proper grants pre-configured
69+
- **Manage Workspaces**: Create and manage multiple APEX workspaces and database schemas with ease
70+
- **SSL**: Run ORDS with SSL locally to match production environments or to not run into protocol missatch errors
71+
- **Automated Backups**: A single script to export all your schemas, APEX workspaces, and applications, plus ORDS modules
72+
- **Safe Testing Environment**: Experiment with new APEX features without risk to production or shared development databases
5973

6074
## What's Included
6175

62-
- **Oracle Database 26ai**: Latest Oracle database with all features
63-
- **Oracle APEX 24.2+**: Full APEX installation with admin access
64-
- **Oracle ORDS**: REST Data Services for APEX connectivity
65-
- **Automated Scripts**: Bash scripts for common development tasks
66-
- **Development Grants**: All necessary permissions for debugging and development
76+
- **Oracle Database 26ai Free**: Latest Oracle database with all development features
77+
- **Latest Oracle APEX**: Full APEX installation with admin access
78+
- **Oracle ORDS with SSL**: REST Data Services pre-configured with self-signed certificates
79+
- **Automated Scripts**: 20+ bash scripts for common development tasks via simple wrapper
80+
- **Development Grants**: All necessary permissions for debugging, DataPump, and workspace management
81+
- **SQLcl Integration**: All created users automatically registered for instant connections
82+
- **VS Code Integration**: All created users available in VS Code SQL Developer extension and PL/SQL debugging support
6783

6884
## Important Note
6985

70-
⚠️ **This is not for production use!** The environment is configured to be unsecure to make development as easy as possible. Use at your own risk and run backups regularly.
86+
⚠️ **This is not for production use!** The environment is intentionally configured to be unsecure and optimized for ease of development. Passwords are stored in plain text, all security features are relaxed, and the focus is on speed and convenience over security. Use at your own risk and run backups regularly.
87+
88+
<script type="application/ld+json">
89+
{
90+
"@context": "https://schema.org",
91+
"@type": "SoftwareApplication",
92+
"name": "uc-local-apex-dev",
93+
"applicationCategory": "DeveloperApplication",
94+
"operatingSystem": "Linux, macOS, Windows",
95+
"description": "Containerized Oracle APEX development environment with 26ai database and ORDS. Set up local APEX development in minutes with automated workspace management, backups, and testing tools.",
96+
"offers": {
97+
"@type": "Offer",
98+
"price": "0",
99+
"priceCurrency": "USD"
100+
},
101+
"author": {
102+
"@type": "Organization",
103+
"name": "United Codes",
104+
"url": "https://www.united-codes.com"
105+
},
106+
"url": "https://www.united-codes.com/products/uc-local-apex-dev/docs/",
107+
"downloadUrl": "https://github.com/United-Codes/uc-local-apex-dev",
108+
"codeRepository": "https://github.com/United-Codes/uc-local-apex-dev",
109+
"programmingLanguage": ["Shell", "SQL", "PL/SQL"],
110+
"softwareRequirements": "Docker or Podman, docker-compose, SQLcl, Bash-compatible shell",
111+
"featureList": [
112+
"Quick setup with Oracle 26ai database",
113+
"Oracle APEX 24.2+ with admin access",
114+
"Oracle ORDS with SSL support",
115+
"Automated user and workspace creation",
116+
"Built-in DataPump backup and restore",
117+
"PL/SQL debugging support",
118+
"Installation testing for APEX applications",
119+
"SQLcl and VS Code integration"
120+
],
121+
"keywords": "Oracle APEX, Oracle Database, ORDS, local development, containerized, Docker, Podman, PL/SQL, workspace management, backup, DataPump"
122+
}
123+
</script>

docs/src/content/docs/migrations/26-1.md

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,19 @@ If you haven't installed uc-local-apex-dev yet, you can find the [setup instruct
1515
- Data files are not compatible, so a dump/restore is needed
1616
- ORDS 25.2 → ORDS 25.4
1717
- This now a space optimized way with own tablespace for audit and APEX data from [Connor McDonald's blog post](https://connor-mcdonald.com/2023/12/18/the-ultimate-database-free-edition/).
18-
- Scripts
19-
- `test-script-install` to test SQL scripts in a clean environment ([more on test-script-install](/products/uc-local-apex-dev/docs/getting-started/install-apps-scripts/#test-sql-scripts))
20-
- `used-space` to check the used space of the database ([more on used-space](/products/uc-local-apex-dev/docs/getting-started/common-tasks/#check-database-space-usage))
21-
- `shrink-space` to reclaim space from tablespaces ([more on shrink-space](/products/uc-local-apex-dev/docs/getting-started/common-tasks/#shrink-database-files))
18+
- New Scripts
19+
- `import-all.sh`: A script to import all exports (created to automate bulk imports during migration).
20+
- `unexpire-accounts.sh:`: Script to unexpire APEX_PUBLIC_USER and workspace accounts (addresses password expiration issues post-migration).
21+
- `fix-ws-group-ids.sh` Script to fix p_group_ids in APEX workspace SQL files (resolves a known Oracle bug with group assignments during workspace imports).
22+
- `disable-password-expiration.sh`: Script to disable password expiration for APEX workspace accounts (prevents future forced password changes).
23+
- Enhanced scripts
24+
- `backup-user.sh`: Added support for ORDS export directory and schema export.
25+
- `import-backup.sh`: Added support for optional remap schema parameter and auto-confirmation flag (-y).
26+
- `import-datapump.sh`: Updated usage message and added support for optional remap schema parameter.
27+
- `test-script-install.sh`: Added support for auto-confirmation with -y flag.
28+
- `test-app-install.sh`: Added support for auto-confirmation with -y flag.
29+
- `clear-schema.sh`: Added support for auto-confirmation with -y flag.
30+
- `create-user.sh`: Added username validation for hyphens and improved quoting.
2231

2332
## Migration
2433

readme.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
# UC Local APEX Dev
22

3-
**Have a 23ai with APEX and ORDS running in a few minutes**
3+
**Get Oracle 26ai with APEX and ORDS running in minutes. Automate the tedious parts of local APEX development.**
44

5-
This set of scripts aims to make developing APEX on your local machine as easy as possible. It is a ready-to-use setup with common tasks automated as bash scripts.
5+
A containerized development environment (works with Docker, Podman, or any container runtime) that automates common tasks and lets you focus on building APEX applications.
66

77
## Features
88

9-
-Create users and workspaces with optimal settings with a single command
10-
-All users are stored for easy access with SQLcl or VS Code SQL Developer
11-
-Easily delete all data to test installation scripts multiple times
12-
-Backup and restore your data, workspaces and apps
13-
-Run ORDS with SSL
14-
- ✅ Test APEX application installs
15-
- ✅ VS Code SQL Developer debugger support
9+
-One-command operations: create users, backups, clear schemas, test installs
10+
-Create APEX workspaces and database schemas with optimal development grants
11+
-All users automatically registered in SQLcl and VS Code for instant access
12+
-Built-in Oracle DataPump backup and restore
13+
- ✅ ORDS with SSL support for production-like local development
14+
- ✅ Test APEX application installs repeatedly in isolated test schemas
15+
-Full PL/SQL debugging support with VS Code SQL Developer
1616

17-
**This is not for production use!** The environment is configured to be unsecure to make development as easy as possible.
17+
**⚠️ This is not for production use!** Intentionally unsecure and optimized for ease of development. Passwords stored in plain text, security features relaxed. For local development only.
1818

1919
[Installation Guide](https://www.united-codes.com/products/uc-local-apex-dev/docs/getting-started/)
2020

0 commit comments

Comments
 (0)