Deployment guide

Oracle WebLogic 14c Linux

Overview

Oracle WebLogic Server 14c (14.1.2.0.0) is an enterprise Java application server. This SecureAnyCloud AMI runs it on Linux with a preconfigured domain, so the Admin Server is ready on port 7001 as soon as the instance starts.

What you get:

  • Oracle WebLogic Server 14c (14.1.2.0.0) with Java EE 8 support
  • Oracle JDK 21 LTS
  • A preconfigured WebLogic domain with the Admin Server on port 7001
  • Systemd services for automatic startup
  • NodeManager for server lifecycle management
  • AWS CLI v2, Systems Manager Agent and CloudWatch Agent

Supported operating systems: Oracle Linux 9, Oracle Linux 8, AlmaLinux 9, AlmaLinux 8, Rocky Linux 9 and Rocky Linux 8.

Important change in WebLogic 14.1.2: The web-based Administration Console is removed. Administer the server with the WebLogic Remote Console (a desktop application) or the REST Management API. See the Administration section below for details.

Visit secureanycloud.com to explore the full catalogue of preconfigured AMIs on the AWS Marketplace.

Prerequisites

Before you launch the AMI, make sure you have:

  • An active AWS account
  • An active subscription to the Oracle WebLogic 14c on Linux listing on the AWS Marketplace
  • Familiarity with EC2 instance management and SSH

Recommended instance type: m5.large (2 vCPU, 8 GB RAM) or larger for production workloads.

1

Launch the AMI

  • Open the AWS Marketplace and search for "Oracle WebLogic 14c SecureAnyCloud".
  • Select Continue to Subscribe, accept the terms, then select Continue to Configuration.
  • Choose your Region and Software Version.
  • Select Continue to Launch.
  • Choose Launch through EC2 for full control over instance configuration.
  • Select your instance type (m5.large is recommended).
  • Configure storage with at least 50 GB of gp3 (recommended minimum).
  • Configure your Security Group with these inbound rules, all over TCP and all from your IP address only:
    • Port 22: SSH access
    • Port 7001: WebLogic Server and REST API
    • Port 7002: WebLogic Server (SSL)
    • Port 5556: NodeManager

Important: Restrict ports 7001, 7002 and 5556 to your IP address. Do not open them to 0.0.0.0/0.

2

Connect via SSH

When the instance is running, connect over SSH:

ssh -i your-key.pem ec2-user@<public-ip-address>

Replace your-key.pem with the path to your EC2 key pair and <public-ip-address> with your instance's public IP address.

3

Verify the boot configuration

The AMI ships with boot.properties preconfigured. WebLogic Server therefore starts in production mode without prompting for credentials, and no manual setup is required.

If you change the password, recreate boot.properties:

sudo su - oracle cat > $DOMAIN_HOME/servers/AdminServer/security/boot.properties << EOF username=weblogic password=YourNewPassword EOF chmod 600 $DOMAIN_HOME/servers/AdminServer/security/boot.properties

WebLogic encrypts this file automatically on the next startup.

4

Start WebLogic Server

Start WebLogic Server with its systemd service:

sudo systemctl start weblogic.service

The server takes approximately 60 to 90 seconds to start. Follow the startup progress in the journal:

sudo journalctl -u weblogic.service -f

When the message Server state changed to RUNNING appears, the server is ready.

5

Verify the installation

Check the WebLogic installation and the server status:

# Check JDK version /u01/java/jdk-21/bin/java -version
# Check WebLogic home exists ls /u01/app/oracle/product/wlserver/
# Check domain exists ls /u01/app/oracle/product/user_projects/domains/base_domain/config/config.xml
# Check services are enabled systemctl is-enabled weblogic.service systemctl is-enabled nodemanager.service
# Test the REST API curl -s -u weblogic:<your-password> http://localhost:7001/management/weblogic/latest/serverRuntime?fields=name,state
6

Access the server

Open http://<public-ip>:7001/console/ in your browser. The Welcome to WebLogic Server 14.1.2 page appears.

This is the expected landing page. WebLogic 14.1.2 removes the web-based Admin Console and replaces it with the WebLogic Remote Console desktop application.

To check that your credentials work, open the Sign In page:

http://<public-ip>:7001/console/signin/

Enter the username and password from CREDENTIALS.txt and select Sign In. A successful login redirects you back to the Welcome page.

You can also verify your credentials with the REST API from a terminal:

curl -u weblogic:<your-password> http://<public-ip>:7001/management/weblogic/latest/serverRuntime?fields=name,state

A successful response returns "state": "RUNNING". A 401 Unauthorized response means the credentials are incorrect.

For day-to-day administration, use one of these options (see the Administration section below):

  • WebLogic Remote Console: desktop application (recommended)
  • REST Management API: for scripting and automation
  • WLST: command-line scripting tool

The Remote Console, the REST API and WLST all need your admin credentials. The password is unique to each AMI instance. To retrieve it, SSH into the instance and run:

sudo cat /home/oracle/CREDENTIALS.txt
  • Username: weblogic
  • Password: unique per instance, stored in CREDENTIALS.txt

Important: Change the password after first use and delete the credentials file. See the Security Hardening section below.

Administration with WebLogic Remote Console

WebLogic 14.1.2 replaces the web-based Administration Console with the WebLogic Remote Console, a modern desktop application.

Option 1: WebLogic Remote Console (desktop application)

  • Download the WebLogic Remote Console from GitHub Releases.
  • Install the application on your desktop. It is available for Windows, macOS and Linux.
  • Launch the Remote Console and connect to your WebLogic Server with these details:
    • URL: http://<public-ip>:7001
    • Username: weblogic
    • Password: your admin password

The Remote Console is a full graphical interface for managing domains, servers, deployments, data sources, JMS and security.

Option 2: REST Management API

WebLogic 14c provides a comprehensive REST API for server management:

# Get server runtime status curl -s -u weblogic:<your-password> \
  http://localhost:7001/management/weblogic/latest/serverRuntime?fields=name,state
# Get domain configuration curl -s -u weblogic:<your-password> \
  http://localhost:7001/management/weblogic/latest/domainConfig
# Get deployed applications curl -s -u weblogic:<your-password> \
  http://localhost:7001/management/weblogic/latest/domainRuntime/serverRuntimes/AdminServer/applicationRuntimes

For the full REST API documentation, see the WebLogic REST API Reference.

Option 3: WLST command line

The WebLogic Scripting Tool (WLST) is still available for command-line administration:

sudo su - oracle $WL_HOME/common/bin/wlst.sh
# Connect to running server connect('weblogic', 'YourPasswordFromCredentials', 't3://localhost:7001')
# Check server status serverRuntime() print('Server State: ' + cmo.getState())

Directory Structure

Path Description

/u01/java/jdk-21/ Oracle JDK 21 LTS (JAVA_HOME)

/u01/app/oracle/product/ Middleware Home (MW_HOME / ORACLE_HOME)

/u01/app/oracle/product/wlserver/ WebLogic Server Home (WL_HOME)

/u01/app/oracle/product/oracle_common/ Oracle Common Home

/u01/app/oracle/product/user_projects/domains/base_domain/ Default Domain (DOMAIN_HOME)

/u01/app/oraInventory/ Oracle Inventory

The environment variables are preconfigured in /home/oracle/.bash_profile:

export JAVA_HOME=/u01/java/jdk-21
export MW_HOME=/u01/app/oracle/product
export WL_HOME=/u01/app/oracle/product/wlserver
export DOMAIN_HOME=/u01/app/oracle/product/user_projects/domains/base_domain

To load them, switch to the oracle user:

sudo su - oracle

Managing WebLogic services

The AMI includes systemd services for WebLogic Server and NodeManager:

# Start WebLogic Server
sudo systemctl start weblogic.service
# Stop WebLogic Server
sudo systemctl stop weblogic.service
# Check WebLogic Server status
sudo systemctl status weblogic.service
# Start NodeManager
sudo systemctl start nodemanager.service
# Check NodeManager status
sudo systemctl status nodemanager.service
# View WebLogic logs
sudo journalctl -u weblogic.service -f

Both services are enabled to start automatically on boot.

Creating additional domains

To create a new WebLogic domain, use WLST:

sudo su - oracle
# Launch WLST $WL_HOME/common/bin/wlst.sh
# In the WLST shell: readTemplate('/u01/app/oracle/product/wlserver/common/templates/wls/wls.jar')
cd('Servers/AdminServer') set('ListenAddress', '') set('ListenPort', 7001) cd('/') cd('Security/base_domain/User/weblogic') cmo.setPassword('YourSecurePassword') setOption('ServerStartMode', 'prod') writeDomain('/u01/app/oracle/product/user_projects/domains/your_domain_name') closeTemplate() exit()

For any new domain that runs in production mode, create a boot.properties file.

Security Hardening

Change the default admin password

Change the admin password with WLST:

sudo su - oracle $WL_HOME/common/bin/wlst.sh connect('weblogic', 'YourPasswordFromCredentials', 't3://localhost:7001') cd('/SecurityConfiguration/base_domain/Realms/myrealm/AuthenticationProviders/DefaultAuthenticator') cd('Users/weblogic') cmo.setPassword('YourNewSecurePassword') disconnect() exit()

Then update the boot.properties file:

cat > $DOMAIN_HOME/servers/AdminServer/security/boot.properties << EOF username=weblogic password=YourNewSecurePassword EOF

Restart the server for the change to take effect.

Delete the credentials file

After you change the password, delete the default credentials file:

sudo rm /home/oracle/CREDENTIALS.txt

Restrict network access

Configure your Security Group to allow access from trusted IP addresses only:

  • Port 22 (SSH): your IP address only
  • Ports 7001 and 7002 (WebLogic Server): your IP address or VPN CIDR only
  • Port 5556 (NodeManager): private VPC traffic only

Use SSH tunnelling

Instead of opening port 7001 directly, reach the server through an SSH tunnel:

ssh -i your-key.pem -L 7001:localhost:7001 ec2-user@<public-ip>

Then connect the Remote Console to http://localhost:7001 from your local machine.

Apply security updates regularly

Keep the operating system up to date:

sudo dnf update -y

Monitor Oracle Critical Patch Updates (CPUs) for WebLogic Server security fixes, and apply them according to Oracle's guidance.

Troubleshooting

WebLogic Server fails to start

Check the server log:

cat /u01/app/oracle/product/user_projects/domains/base_domain/servers/AdminServer/logs/AdminServer.log

Common causes:

  • Insufficient memory: use an instance type with at least 4 GB RAM.
  • Port conflict: make sure no other process is using port 7001.
  • Missing boot.properties: in production mode, the server requires a boot.properties file (see Step 3).
  • Java heap size: edit setDomainEnv.sh to increase the memory allocation.

Cannot connect to WebLogic Server

  • Verify the server is running: sudo systemctl status weblogic.service
  • Check that the Security Group allows inbound traffic on port 7001 from your IP address.
  • Verify that the instance has a public IP address, or that you are connecting through a VPN.
  • Check whether the server is still starting: sudo journalctl -u weblogic.service -f

SSH connection times out

  • Verify in the EC2 console that the instance is in the running state.
  • Check that the Security Group allows inbound SSH (port 22) from your IP address.
  • Make sure you are using the correct key pair and username (ec2-user).
  • Check the key file permissions: chmod 400 your-key.pem

NodeManager connection issues

# Check NodeManager status
sudo systemctl status nodemanager.service
# View NodeManager logs cat /u01/app/oracle/product/user_projects/domains/base_domain/nodemanager/nodemanager.log

Oracle WebLogic 14c key features

  • Java EE 8 platform: full support for the javax.* namespace, including Servlet 4.0, JSF 2.3, JAX-RS 2.1, CDI 2.0 and JSON-B 1.0
  • JDK 21 LTS: the latest long-term support Java runtime
  • WebLogic Remote Console: a modern desktop application that replaces the web console
  • Dynamic clustering: elastic server instances for horizontal scaling
  • Zero-downtime patching: apply patches without service interruption
  • Simplified JMS: streamlined cluster JMS configuration
  • XA transactions: no transaction TLog writes, for improved performance
  • RESTful management services: a REST API for server administration and monitoring
  • WebSocket support: native WebSocket implementation
  • Multitenancy: domain partitioning for resource isolation

Support

SecureAnyCloud provides 24/7/365 support for all AWS Marketplace products.

  • Email: sales@secureanycloud.com
  • Response time: 24 hour response
  • Support plans: View support tiers
  • Oracle documentation: WebLogic 14c Documentation
  • WebLogic Remote Console: Download and Documentation

Deploy on AWS

Launch Oracle WebLogic 14c on Linux with 24/7 support from SecureAnyCloud.

View this image

Need Help?

Our support team is available 24/7.

sales@secureanycloud.com