Deployment guide

Oracle WebLogic 15c Linux

Overview

This guide shows how to deploy and configure Oracle WebLogic Server 15c (15.1.1.0.0) on Linux, using SecureAnyCloud AMIs from AWS Marketplace.

What you get:

  • Oracle WebLogic Server 15c (15.1.1.0.0) with Jakarta EE 9.1 support
  • Oracle JDK 21 LTS
  • A pre-configured 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 15c: WebLogic Server 15.1.1 removes the traditional web-based Administration Console. You now administer the server with the WebLogic Remote Console (a desktop application) or the REST Management API. See the Administration section below for details.

Prerequisites

Before you launch this AMI, make sure you have:

  • An active AWS account
  • An active subscription to the Oracle WebLogic 15c on Linux listing on 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 AWS Marketplace and search for "Oracle WebLogic 15c SecureAnyCloud".
  • Choose Continue to Subscribe, accept the terms, then choose Continue to Configuration.
  • Select your Region and Software Version.
  • Choose Continue to Launch.
  • Choose Launch through EC2 for full control over instance configuration.
  • Select your instance type (m5.large is recommended).
  • Configure storage. A minimum of 50 GB gp3 is recommended.
  • Configure your Security Group with the following inbound rules.

Port Protocol Source Purpose

22 TCP Your IP SSH access

7001 TCP Your IP WebLogic Server / REST API

7002 TCP Your IP WebLogic Server (SSL)

5556 TCP Your IP NodeManager

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

2

Connect over SSH

When your instance is running, connect to it 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.

3

Verify the boot configuration

The AMI comes with boot.properties pre-configured, so WebLogic Server starts automatically in production mode without interactive credential prompts. No manual setup is required.

If you need to recreate boot.properties after a password change, run the following.

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 the systemd service.

sudo systemctl start weblogic.service

Wait about 60 to 90 seconds for the server to start fully. You can monitor the startup progress with the following command.

sudo journalctl -u weblogic.service -f

Look for the message Server state changed to RUNNING. It confirms that the server is ready.

5

Verify the installation

Verify 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 15.1.1 page appears.

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

To verify that your credentials work, open the Sign In page.

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

Enter your username and password from CREDENTIALS.txt and choose Sign In. A successful login redirects you back to the Welcome page, which confirms that your credentials are correct.

You can also verify your credentials with the REST API from your 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 means the credentials are incorrect.

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

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

Your admin credentials are needed for the Remote Console, the REST API and WLST. The password is unique to each AMI instance. To retrieve your credentials, connect to your instance over SSH and run the following command.

sudo cat /home/oracle/CREDENTIALS.txt
  • Username: weblogic
  • Password: unique per instance (see 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 15c replaces the traditional 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 (available for Windows, macOS and Linux).
  • Launch the Remote Console and connect to your WebLogic Server with these values:
  • URL: http://<public-ip>:7001
  • Username: weblogic
  • Password: your admin password

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

Option 2: REST Management API

WebLogic 15c 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 full REST API documentation, see the WebLogic REST API Reference.

Option 3: WLST command line

The WebLogic Scripting Tool (WLST) remains 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

Environment variables are pre-configured 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 use them, switch to the oracle user.

sudo su - oracle

Manage 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 for automatic startup on boot.

Create additional domains

To create a new WebLogic domain, use the WLST scripting tool.

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()

Create a boot.properties file for any new domain that you run in production mode.

Security Hardening

Change the default admin password

Use WLST to change the admin password.

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()

After you change the password, 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.

Restrict network access

Make sure your Security Group only allows access from trusted IP addresses.

  • Port 22 (SSH): your IP only
  • Port 7001/7002 (WebLogic Server): your IP or VPN CIDR only
  • Port 5556 (NodeManager): internal VPC traffic only

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

SSH connection timeout

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

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 15c key features

  • Jakarta EE 9.1 Platform: full support for the jakarta.* namespace
  • JDK 21 LTS: latest long-term support Java runtime
  • WebLogic Remote Console: modern desktop application that replaces the traditional 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: run without transaction TLog writes for improved performance
  • OIDC Support: OpenID Connect token handling
  • Certificate Management Service: technical preview for automated certificate lifecycle

Support

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

  • Email: sales@secureanycloud.com
  • Response time: guaranteed 24 hour response
  • Support plans: view support tiers
  • Oracle documentation: WebLogic 15.1.1 documentation
  • WebLogic Remote Console: download and documentation

Deploy on AWS

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

View on Marketplace

Need Help?

Our support team is available 24/7.

sales@secureanycloud.com