weblogic实践

WSL下使用weblogic

准备

WSL 2 + Ubuntu 20.04 + WebLogic 14c(14.1.1.0.0,Java EE 8 兼容版)

安装 WSL 2 + Ubuntu 20.04 + JDK

  1. wsl安装
    wsl --install # 自动启用组件并安装默认 Ubuntu 系统
    wsl --version
  2. 验证 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

  1. 配置 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

  1. 创建目录mkdir -p homne/lzz/weblogic,并复制 weblogic 包到目录
  2. 创建静默安装配置文件 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=false
    
    mkdir /home/lzz/weblogic/oracle_home
  3. 执行安装命令
    新建用户
    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.....

云环境下使用weblogic(模拟生产)

准备

posted @ 2025-09-22 21:04  sunss20  阅读(14)  评论(0)    收藏  举报