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.
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.largeis 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.
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.
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.propertiesWebLogic encrypts this file automatically on the next startup.
Start WebLogic Server
Start WebLogic Server with the systemd service.
sudo systemctl start weblogic.serviceWait 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 -fLook for the message Server state changed to RUNNING. It confirms that the server is ready.
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,stateAccess 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,stateA 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/applicationRuntimesFor 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_domainTo use them, switch to the oracle user.
sudo su - oracleManage 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 -fBoth 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 EOFRestart 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.logCommon 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.shto 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.logOracle 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