weblogic实践
WSL下使用weblogic
准备
WSL 2 + Ubuntu 20.04 + WebLogic 14c(14.1.1.0.0,Java EE 8 兼容版)
安装 WSL 2 + Ubuntu 20.04 + JDK
- wsl安装
wsl --install # 自动启用组件并安装默认 Ubuntu 系统
wsl --version - 验证 JDK 安装
sudo apt update # 更新软件源
sudo apt install openjdk-8-jdk -y # 安装 JDK 8
java -version #验证安装
which java #验证安装
#无法使用OpenJdk
sudo apt list --installed | grep openjdk #查看jdk版本
sudo apt remove openjdk-* #卸载jdk
#下载oracle Jdk,重新配置
sudo tar -zxvf jdk-8u202-linux-x64.tar.gz
sudo mkdir -p /usr/local/java
sudo mv jdk1.8.0_202 /usr/local/java/
#编辑profile
sudo vim /etc/profile
#profile生效后,验证jdk
source /etc/profile
which java
java -version
- 配置 JAVA_HOME 环境变量(WebLogic 需读取此变量)
- 执行 sudo nano /etc/profile 打开系统环境变量配置文件;末尾添加:
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
,按 Ctrl+O 保存,Ctrl+X 退出 - 执行 source /etc/profile 使配置生效,再执行 echo $JAVA_HOME 验证(输出 JDK 路径即成功
安装 weblogic
- 创建目录
mkdir -p homne/lzz/weblogic,并复制 weblogic 包到目录 - 创建静默安装配置文件 install.rsp
nano install.rsp[ENGINE] Response File Version=1.0.0.0.0 [GENERIC] ORACLE_HOME=/home/lzz/weblogic/oracle_home # WebLogic 安装目录(自定义) INSTALL_TYPE=WebLogic Server # 安装类型(仅安装 WebLogic Server) DECLINE_SECURITY_UPDATES=true # 拒绝安全更新(学习环境无需) SECURITY_UPDATES_VIA_MYORACLESUPPORT=falsemkdir /home/lzz/weblogic/oracle_home - 执行安装命令
新建用户sudo useradd -m oracle sudo passwd oracle echo $SHELL # 查看当前Shell sudo chsh -s /bin/bash oracle #永久切换到bash命令下(默认在sh下) visudo #sudo权限 添加 oracle ALL=(ALL:ALL) ALL 保存退出 ctrl 0, ctrl x, enter #cat 验证修改结果,如果编辑进程存在 ps aux|grep visudo, 则kill -9进程后重新编辑
Oracle 产品安装信息文件
sudo nano /etc/oraInst.loc
inventory_loc=/home/lzz/weblogic/oraInventory # inventory 目录(自定义)
inst_group=oracle # 所属用户组(与 Ubuntu 用户名一致)
oraInst.loc 和 install.rsp 文件都不支持中文乱码,即使是注释,需要删除上面除配置以外的注释信息
开始安装weblogic
java -jar fmw_14.1.1.0.0_wls_lite_generic.jar -silent -responseFile install.rsp -invPtrLoc /etc/oraInst.loc
遇到的问题
问题一:
Specify a valid response file. Usage: java -jar <shiphome>.jar -silent -responseFile <Full path to response file>
install.rsp 需要使用全路径名,install.rsp改为全路径名如下:
java -jar fmw_14.1.1.0.0_wls_lite_generic.jar -silent -responseFile /home/lzz/weblogic/install.rsp -invPtrLoc /etc/oraInst.loc
问题二:Validation of Oracle Home location failed. The location specified does not have read/write permissions
oracle home目录,当前用户没有权限操作
chown -R oracle:oracle /home/lzz/weblogic/oracle_home
chmod -R 755 /home/lzz/weblogic/oracle_home
ls -l /home/lzz/weblogic/
问题三(查看日志发现):
Copying Files
Internal Error: File Copy failed. Aborting Install
The log(s) can be found here: /tmp/OraInstall2025-09-22_08-53-04PM.
cat /tmp/OraInstall2025-09-22_08-54-38PM/install2025-09-22_08-54-38PM.log:
Unable to access the inventory /home/lzz/weblogic/oraInventory on this system. Please ensure you have the proper permissions to read/write/search the inventory
赋予权限后,
chown -R oracle:oracle /home/lzz/weblogic/oraInventory
chmod -R 755 /home/lzz/weblogic/oraInventory
ls -l /home/lzz/weblogic/
再次执行安装命令,安装成功:
The installation of Oracle Fusion Middleware 14.1.1 WebLogic Server and Coherence 14.1.1.0.0 completed successfully.
Logs successfully copied to /home/lzz/weblogic/oraInventory/logs.
weblogic使用
创建域
sudo mkdir /tmp/weblogic-response/
sudo mkdir -p /opt/weblogic/user_projects/domains/base_domain
which java #找到 /usr/local/java/jdk1.8.0_202
创建域响应文件
# 新建 WLST 脚本(注意后缀可自定义,比如 .py)
cat > /tmp/weblogic-response/create_domain_wlst.py << EOF
# WLST 脚本:创建 WebLogic 域(Jython 语法)
# 1. 读取域模板(对应原 read template from)
readTemplate("/home/lzz/weblogic/oracle_home/wlserver/common/templates/wls/wls.jar")
# 2. 设置 JDK 路径(对应原 set JavaHome)
set('JavaHome', '/usr/local/java/jdk1.8.0_202') # 替换为你实际的 JDK 路径
# 3. 设置服务器启动模式(生产模式,对应原 set ServerStartMode)
set('ServerStartMode', 'prod')
# 4. 配置管理服务器(对应原 find Server + set AdminServer.xxx)
adminServer = cmo.lookupServer('AdminServer')
adminServer.setListenAddress('') # 监听所有网卡
adminServer.setListenPort(7001) # 监听端口
adminServer.setSSLEnabled(false) # 关闭 SSL
# 5. 创建管理员用户(对应原 create User + add to Group)
# 先获取安全配置
securityConfig = cmo.getSecurityConfiguration()
realm = securityConfig.getDefaultRealm()
authProvider = realm.lookupAuthenticationProvider('DefaultAuthenticator')
# 创建用户 weblogic(密码 weblogic123!)
authProvider.createUser('weblogic', 'weblogic123!', 'Administrator User')
# 创建 Administrators 组(若不存在)
try:
authProvider.lookupGroup('Administrators')
except:
authProvider.createGroup('Administrators', 'Admin Group')
# 将用户添加到组
authProvider.addMemberToGroup('weblogic', 'Administrators')
# 6. 写入域到目标路径(对应原 write domain to)
# 注意:目标路径需确保 oracle 用户有写入权限,建议放在 oracle 可访问目录
writeDomain('/home/lzz/weblogic/oracle_home/user_projects/domains/base_domain')
# 7. 关闭模板(对应原 close template)
closeTemplate()
# 8. 退出 WLST
exit()
EOF
根据域响应文件创建域
sudo touch /home/lzz/weblogic/weblogic-domain-create.log
sudo mkdir -p /home/lzz/weblogic/oracle_home/user_projects/domains/base_domain
sudo chmod -R 755 /home/lzz/weblogic/oracle_home/user_projects/domains/base_domain
# 进入域配置工具目录
cd /home/lzz/weblogic/oracle_home/wlserver/common/bin/
sudo chown oracle:oracle /home/lzz/weblogic/weblogic-domain-create.log
chmod u+w /home/lzz/weblogic/weblogic-domain-create.log
# 执行 wlst 脚本创建域
./wlst.sh /tmp/weblogic-response/create_domain_wlst.py > /home/lzz/weblogic/weblogic-domain-create.log 2>&1
loading.....

浙公网安备 33010602011771号