Posted on 05-DEC-24 12.00.00.000000 PM Docker安装APEX Category APEX Oracle 23c Free Docker, APEX & ORDS – all in one simple guide安装dockerdocker version sudo yum install docker -y安装Oracledocker pull container-registry.oracle.com/database/free:latest docker run -d -it --name 23cfree -p 8521:1521 -p 8500:5500 -p 8023:8080 -p 9043:8443 -e ORACLE_PWD=E container-registry.oracle.com/database/free:latest docker exec -it 23cfree /bin/bash安装APEXunzip apex-latest.zip rm apex-latest.zip cd apex sqlplus / as sysdba ALTER SESSION SET CONTAINER = FREEPDB1; @apexins.sql SYSAUX SYSAUX TEMP /i/ ALTER USER APEX_PUBLIC_USER ACCOUNT UNLOCK; ALTER USER APEX_PUBLIC_USER IDENTIFIED BY E; @apxchpwd.sql exit mkdir /home/oracle/software mkdir /home/oracle/software/apex mkdir /home/oracle/software/ords mkdir /home/oracle/scripts cp -r /home/oracle/apex/images /home/oracle/software/apex cd /home/oracle/安装中文包cd apex/builder/zh-cn sqlplus / as sysdba ALTER SESSION SET CONTAINER = FREEPDB1; @load_zh-cn.sql修改ORDS密码(半年过期,为了避免无法使用,所以需要过期前修改密码)sqlplus / as sysdba ALTER SESSION SET CONTAINER = FREEPDB1; ALTER PROFILE default LIMIT PASSWORD_LIFE_TIME UNLIMITED;Linux时区修改cp /etc/localtime /etc/localtime.bak ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime dateOracle时区修改ALTER DATABASE SET TIME_ZONE = '+08:00'; ALTER DATABASE SET TIME_ZONE = 'Asia/Shanghai'; SHUTDOWN IMMEDIATE; STARTUP; ALTER SESSION SET CONTAINER = FREEPDB1; ALTER DATABASE SET TIME_ZONE = '+08:00'; SHUTDOWN IMMEDIATE; STARTUP;安装nanoshutdowm immediate; su cat /dev/null > /etc/dnf/vars/ociregion dnf update -y dnf install sudo -y dnf install nano -y nano /etc/sudoers Defaults !lecture oracle ALL=(ALL) NOPASSWD: ALL安装Javadnf install java-17-openjdk -y mkdir /etc/ords mkdir /etc/ords/config mkdir /home/oracle/logs chmod -R 777 /etc/ords java -version安装ORDSyum-config-manager --add-repo=https://yum.oracle.com/repo/OracleLinux/OL8/oracle/software/x86_64 dnf install ords -y配置ORDSexport _JAVA_OPTIONS="-Xms512M -Xmx512M" ords --config /etc/ords/config install /home/oracle/software/apex/images创建ORDS启动、停止脚本nano /home/oracle/scripts/start_ords.sh export ORDS_HOME=/usr/local/bin/ords export _JAVA_OPTIONS="-Xms512M -Xmx512M" LOGFILE=/home/oracle/logs/ords-`date +"%Y""%m""%d"`.log nohup ${ORDS_HOME} --config /etc/ords/config serve >> $LOGFILE 2>&1 & echo "View log file with : tail -f $LOGFILE" nano /home/oracle/scripts/stop_ords.sh kill `ps -ef | grep [o]rds.war | awk '{print $2}'`创建ORDS自启动脚本nano /opt/oracle/scripts/startup/01_auto_ords.sh sudo sh /home/oracle/scripts/start_ords.sh设置Linux重启自动启动APEXdocker update --restart=always 23cfree设置Nginx,方便访问各个对外应用 APEX Nginx配置设置Nginx守护进程,开机自动启动sudo systemctl enable nginx sudo systemctl start nginx sudo systemctl status nginx sudo systemctl restart nginx设置域名解析、SSL认证通过Cloudflare,设置域名解析,申请15年有效证书,国内证书都是三个月,很麻烦。推荐一个免费15年的SSL证书【附教程】