docker-images icon indicating copy to clipboard operation
docker-images copied to clipboard

Oracle Database with NFS mounted Volume

Open lexwinko opened this issue 2 years ago • 2 comments

I'm trying to deploy an oracle enterprise database on our internal docker swarm and ran into the following issue:

The docker-compose is run by our manager node as docker stack deploy -c /etc/docker/X/X/oracle/docker-compose.yml X --with-registry-auth

Inside the compose file we have an NFS mounted volume on a different node (excempt):

services:
  oracle:
    volumes:
      - qa_oracle:/opt/oracle/oradata
volumes:
  oracle:
    driver_opts:
      type: nfs
      o: addr=X,nolock,soft,rw
      device: ":/mnt/swarm_persistence/shared/X/oracle"

When I try to run the container, I get the same error as in https://github.com/oracle/docker-images/issues/2395 , but currently there is no way to create a local oracle image to test whether that fix would work.

oracle-oracle-1  | 8% complete
oracle-oracle-1  | Copying database files
oracle-oracle-1  | 31% complete
oracle-oracle-1  | 100% complete
oracle-oracle-1  | [FATAL] Recovery Manager failed to restore datafiles. Refer logs for details.
oracle-oracle-1  | 8% complete
oracle-oracle-1  | 0% complete
oracle-oracle-1  | Look at the log file "/opt/oracle/cfgtoollogs/dbca/ORCLCDB/ORCLCDB.log" for further details.
oracle-oracle-1  | [ 2022-09-07 11:11:12.079 CEST ] Prepare for db operation
oracle-oracle-1  | DBCA_PROGRESS : 8%
oracle-oracle-1  | [ 2022-09-07 11:11:12.171 CEST ] Copying database files
oracle-oracle-1  | DBCA_PROGRESS : 31%
oracle-oracle-1  | DBCA_PROGRESS : 100%
oracle-oracle-1  | [ 2022-09-07 11:11:28.320 CEST ] [FATAL] Recovery Manager failed to restore datafiles. Refer logs for details.
oracle-oracle-1  | DBCA_PROGRESS : 8%
oracle-oracle-1  | DBCA_PROGRESS : 0%
oracle-oracle-1  |
oracle-oracle-1  | SQL*Plus: Release 21.0.0.0.0 - Production on Wed Sep 7 11:11:30 2022
oracle-oracle-1  | Version 21.3.0.0.0
oracle-oracle-1  |
oracle-oracle-1  | Copyright (c) 1982, 2021, Oracle.  All rights reserved.
oracle-oracle-1  |
oracle-oracle-1  | Connected to an idle instance.
oracle-oracle-1  |
oracle-oracle-1  | SQL> ALTER SYSTEM SET control_files='/opt/oracle/oradata/ORCLCDB/control01.ctl' scope=spfile
oracle-oracle-1  | *
oracle-oracle-1  | ERROR at line 1:
oracle-oracle-1  | ORA-01034: ORACLE not available
oracle-oracle-1  | Process ID: 0
oracle-oracle-1  | Session ID: 0 Serial number: 0

I added the oracle user with uid 54321 to our storage server and gave ownership of the folder image

What am I doing wrong?

lexwinko avatar Sep 07 '22 09:09 lexwinko

I tried creating my own EE-image but the problem persists.

When I change the volume to a local one, the container starts without any problems

lexwinko avatar Sep 12 '22 11:09 lexwinko

Same problem, RAM failed to create PDB with NFS Mount on /opt/oracle/oradata/. Any probllem with local persistent volume and the same image.

GuillaumeM69 avatar Sep 23 '22 13:09 GuillaumeM69