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.
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.largeis 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.
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.
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.propertiesWebLogic encrypts this file automatically on the next startup.
Start WebLogic Server
Start WebLogic Server with its systemd service:
sudo systemctl start weblogic.serviceThe server takes approximately 60 to 90 seconds to start. Follow the startup progress in the journal:
sudo journalctl -u weblogic.service -fWhen the message Server state changed to RUNNING appears, the server is ready.
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,stateAccess 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,stateA 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
- URL:
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/applicationRuntimesFor 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_domainTo load them, switch to the oracle user:
sudo su - oracleManaging 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 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 EOFRestart 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.txtRestrict 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 -yMonitor 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.logCommon 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.shto 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.logOracle 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