Oracle 18c xe docker映像不';开始

Oracle 18c xe docker映像不';开始,docker,oracle18c,Docker,Oracle18c,我已尝试使用以下链接为Oracle 18c xe构建docker映像: 然后,我尝试使用下面的命令解决此链接中的问题,并在同一页面底部添加了一条注释: docker-run--name mydb--cpuset-cpus=“0-7”-p 51521:1521-p 55500:5500-e-ORACLE\u PWD=mysecurepassword-e-ORACLE\u CHARACTERSET=AL32UTF8-ORACLE/database:18.4.0-xe,它仍然不工作! 它抛出与下面

我已尝试使用以下链接为Oracle 18c xe构建docker映像:


然后,我尝试使用下面的命令解决此链接中的问题,并在同一页面底部添加了一条注释:
docker-run--name mydb--cpuset-cpus=“0-7”-p 51521:1521-p 55500:5500-e-ORACLE\u PWD=mysecurepassword-e-ORACLE\u CHARACTERSET=AL32UTF8-ORACLE/database:18.4.0-xe
,它仍然不工作! 它抛出与下面完全相同的错误:

docker logs 701720e132af
ORACLE PASSWORD FOR SYS AND SYSTEM: Password1_One
Specify a password to be used for database accounts. Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9]. Note that the same password will be used for SYS, SYSTEM and PDBADMIN accounts:
Confirm the password:
Configuring Oracle Listener.
Listener configuration succeeded.
Configuring Oracle Database XE.
Enter SYS user password: 
***************
Enter SYSTEM user password: 
************
Enter PDBADMIN User Password: 
**************
Prepare for db operation
7% complete
Copying database files
8% complete
[WARNING] ORA-00821: Specified value of sga_target 600M is too small, needs to be at least 632M
ORA-01078: failure in processing system parameters

9% complete
[FATAL] ORA-01034: ORACLE not available

29% complete
100% complete
[FATAL] ORA-01034: ORACLE not available

7% complete
0% complete
Look at the log file "/opt/oracle/cfgtoollogs/dbca/XE/XE.log" for further details.

Database configuration failed. Check logs under '/opt/oracle/cfgtoollogs/dbca'.
mv: cannot stat '/opt/oracle/product/18c/dbhomeXE/dbs/spfileXE.ora': No such file or directory
The Oracle base remains unchanged with value /opt/oracle
#####################################
########### E R R O R ###############
DATABASE SETUP WAS NOT SUCCESSFUL!
Please check output for further info!
########### E R R O R ###############
#####################################
The following output is now a tail of the alert.log:
tail: cannot open '/opt/oracle/diag/rdbms/*/*/trace/alert*.log' for reading: No such file or directory
tail: no files remaining
docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
oracle/database     18.4.0-xe           fe0fe8a16d63        17 minutes ago      5.89GB
使用以下命令时,生成图像成功:

docker build --force-rm=true \
             --no-cache=true \
             --shm-size=1G \
             --build-arg DB_EDITION=xe \
             -t oracle/database:18.4.0-xe \
             -f Dockerfile.xe .
然后我看到下图:

docker logs 701720e132af
ORACLE PASSWORD FOR SYS AND SYSTEM: Password1_One
Specify a password to be used for database accounts. Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9]. Note that the same password will be used for SYS, SYSTEM and PDBADMIN accounts:
Confirm the password:
Configuring Oracle Listener.
Listener configuration succeeded.
Configuring Oracle Database XE.
Enter SYS user password: 
***************
Enter SYSTEM user password: 
************
Enter PDBADMIN User Password: 
**************
Prepare for db operation
7% complete
Copying database files
8% complete
[WARNING] ORA-00821: Specified value of sga_target 600M is too small, needs to be at least 632M
ORA-01078: failure in processing system parameters

9% complete
[FATAL] ORA-01034: ORACLE not available

29% complete
100% complete
[FATAL] ORA-01034: ORACLE not available

7% complete
0% complete
Look at the log file "/opt/oracle/cfgtoollogs/dbca/XE/XE.log" for further details.

Database configuration failed. Check logs under '/opt/oracle/cfgtoollogs/dbca'.
mv: cannot stat '/opt/oracle/product/18c/dbhomeXE/dbs/spfileXE.ora': No such file or directory
The Oracle base remains unchanged with value /opt/oracle
#####################################
########### E R R O R ###############
DATABASE SETUP WAS NOT SUCCESSFUL!
Please check output for further info!
########### E R R O R ###############
#####################################
The following output is now a tail of the alert.log:
tail: cannot open '/opt/oracle/diag/rdbms/*/*/trace/alert*.log' for reading: No such file or directory
tail: no files remaining
docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
oracle/database     18.4.0-xe           fe0fe8a16d63        17 minutes ago      5.89GB
指定要使用的CPU数量以前是可行的,但我必须格式化我的MacBook Pro 16”(2019),它现在使用最新版本的Catalina 10.15.7、Intel i9 2.4GHz 8核和64GB RAM。请帮助我,因为我在测试和实践中确实需要这些。谢谢


附言:即使我在GitHub项目中使用了提供的构建脚本,我仍然会遇到同样的错误!

我通过在Dockerfile中添加这一行找到了一个巨大的解决方案:

RUN sed -i 's/$MEMORY_CONSTRUCT/-initParams sga_target=1968M,pga_aggregate_target=80M/' /etc/init.d/oracle-xe-18c
以前

RUN /etc/init.d/oracle-xe-18c configure

因此,它将覆盖Oracle启动脚本的configure_perform()函数中的computed MEMORY_CONSTRUCT变量。

我通过在Dockerfile中添加这一行找到了一个巨大的解决方案:

RUN sed -i 's/$MEMORY_CONSTRUCT/-initParams sga_target=1968M,pga_aggregate_target=80M/' /etc/init.d/oracle-xe-18c
以前

RUN /etc/init.d/oracle-xe-18c configure

因此,它会覆盖Oracle启动脚本的configure_perform()函数中的computed MEMORY_CONSTRUCT变量。

我在Mac OS X上遇到了与Catalina、Docker Desktop和Docker compose相同的问题。容器在初始启动时失败

但是,如果我将分配给Docker Desktop的CPU数量减少到1,它就可以工作了:


只有1个CPU可用,我能够启动容器,并且数据库已正确初始化。初始启动后,我可以停止Docker Desktop,将CPU计数增加回原始值(8),然后重新启动以前初始化的容器。虽然有点麻烦,但它可以工作。我在Mac OS X上遇到了与Catalina相同的问题,Catalina带有Docker Desktop和Docker compose。容器在初始启动时失败

但是,如果我将分配给Docker Desktop的CPU数量减少到1,它就可以工作了:


只有1个CPU可用,我能够启动容器,并且数据库已正确初始化。初始启动后,我可以停止Docker Desktop,将CPU计数增加回原始值(8),并重新启动以前初始化的容器。有点麻烦,但它可以工作。I

您好!请您确切地告诉我您使用此代码更新了哪个docker文件?我在搜索时没有找到特定的文件。谢谢!您好,我使用此文件:好的,我将尝试使用此图像,如果它可以工作,我将返回给您。我使用offi创建了我的文件这就是为什么我找不到你提到的行。你好!你能确切地告诉我你用这个代码更新了哪个docker文件吗?我在搜索时没有找到具体的文件。谢谢!你好,我使用这个:好的,我会尝试使用这个图像,如果它有效的话,我会回复你。我用官方的docker文件创建了我的为什么我找不到你提到的台词。你好,谢谢你的回复,祝你新年快乐!我尝试了这个,但仍然没有运气。说实话,这有点令人沮丧,尤其是在去年年底升级到Big Sur之后。你好,谢谢你的回复,祝你新年快乐!我尝试了这个,但仍然没有运气。这有点令人沮丧说实话,尤其是在去年年底升级到Big Sur之后。