zoukankan      html  css  js  c++  java
  • docker搭建oracle 11.2.0.3.0

    dockerfile 如下:

     1 FROM oraclelinux:7-slim
     2 
     3 ARG ORACLE_BASE=/opt/oracle
     4 ARG ORACLE_HOME=/opt/oracle/product/11.2.0.1/dbhome_1
     5 ARG INSTALL_FILE="http://192.168.1.100:8000/database.tar"
     6 ARG INSTALL_RSP="db_install.rsp"
     7 ARG NETCA_RSP="netca.rsp"
     8 ARG DBCA_RSP="dbca.rsp"
     9 ARG REQUIRED_SPACE_GB=20
    10 ARG proxy=192.168.1.100:3129
    11 ARG INSTALL_DIR=$ORACLE_BASE/install
    12 ARG PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch/:/usr/sbin:$PATH
    13 ARG LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
    14 ARG CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
    15  
    16 # Copy binaries
    17 COPY $INSTALL_RSP $NETCA_RSP $DBCA_RSP runOracle.sh /install/
    18 
    19 
    20 RUN sync && 
    21     if [ `df -PB 1G / | tail -n 1 | awk '{ print $4 }'` -lt $REQUIRED_SPACE_GB ]; then echo "ERROR:The container needs at least $REQUIRED_SPACE_GB GB !!!!!!!!!!!" && exit 1; fi &&
    22     echo "proxy=http://${proxy}" >>/etc/yum.conf &&
    23     echo "export http_proxy=${proxy}" >>/etc/profile &&
    24     echo "export ORACLE_BASE=${ORACLE_BASE}">>/etc/profile &&
    25     echo "export ORACLE_HOME=${ORACLE_HOME}">>/etc/profile &&
    26     echo "export export PATH=$ORACLE_HOME/bin:$PATH">>/etc/profile &&
    27     source /etc/profile &&
    28     yum -y install oracle-rdbms-server-11gR2-preinstall tar openssl openssh-server vi && 
    29     ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ""  && 
    30     ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key -N ""  && 
    31     sed -ri 's/^#PermitRootLogins+.*/PermitRootLogin yes/' /etc/ssh/sshd_config && 
    32     sed -ri 's/UsePAM yes/#UsePAM yes/g' /etc/ssh/sshd_config && 
    33     mkdir /var/run/sshd && 
    34     mkdir -p $ORACLE_BASE/scripts/setup && 
    35     mkdir $ORACLE_BASE/scripts/startup && 
    36     ln -s $ORACLE_BASE/scripts /docker-entrypoint-initdb.d && 
    37     mkdir $ORACLE_BASE/oradata && 
    38     rm -rf /var/cache/yum && 
    39     echo 'root:root' |chpasswd  && 
    40     echo 'oracle:oracle' | chpasswd && 
    41     chown -R oracle:dba $ORACLE_BASE
    42 
    43 # Install DB software
    44 USER oracle
    45 RUN if [ ! -d $INSTALL_DIR ]; then cp -R /install $ORACLE_BASE ; fi && 
    46     sed -i -e "s|###ORACLE_BASE###|$ORACLE_BASE|g" $INSTALL_DIR/$INSTALL_RSP && 
    47     sed -i -e "s|###ORACLE_HOME###|$ORACLE_HOME|g" $INSTALL_DIR/$INSTALL_RSP && 
    48     # Install Oracle binaries
    49     cd $INSTALL_DIR && 
    50     curl ${INSTALL_FILE}|tar -xv   && 
    51     chmod -R 777 $INSTALL_DIR/database && 
    52     $INSTALL_DIR/database/runInstaller -ignoresysprereqs -ignoreprereq -silent -force -waitforcompletion -responsefile $INSTALL_DIR/$INSTALL_RSP && 
    53     ${ORACLE_HOME}/bin/netca /silent /responseFile $INSTALL_DIR/$NETCA_RSP && 
    54     sed -i -e "s|`hostname`|###hostname###|g" ${ORACLE_HOME}/network/admin/listener.ora  && 
    55     #${ORACLE_HOME}/bin/dbca -silent -responseFile $INSTALL_DIR/$DBCA_RSP && 
    56     cd $HOME  && 
    57     mv $INSTALL_DIR/runOracle.sh .  && 
    58     echo "unset http_proxy" >> .bash_profile  && 
    59     rm -rf $INSTALL_DIR/database || echo "rm $INSTALL_DIR/database Failed"
    60 
    61 
    62 USER root
    63 RUN $ORACLE_BASE/oraInventory/orainstRoot.sh && 
    64     $ORACLE_HOME/root.sh && 
    65     rm -rf /install
    66     
    67 
    68 VOLUME ["$ORACLE_BASE/oradata"]
    69 EXPOSE 1521 22
    70 CMD    ["/usr/sbin/sshd", "-D"]
    View Code

    db_install.rsp,如下

      1 ####################################################################
      2 ## Copyright(c) Oracle Corporation 1998,2011. All rights reserved.##
      3 ##                                                                ##
      4 ## Specify values for the variables listed below to customize     ##
      5 ## your installation.                                             ##
      6 ##                                                                ##
      7 ## Each variable is associated with a comment. The comment        ##
      8 ## can help to populate the variables with the appropriate        ##
      9 ## values.                              ##
     10 ##                                                                ##
     11 ## IMPORTANT NOTE: This file contains plain text passwords and    ##
     12 ## should be secured to have read permission only by oracle user  ##
     13 ## or db administrator who owns this installation.                ##
     14 ##                                                                ##
     15 ####################################################################
     16 
     17 #------------------------------------------------------------------------------
     18 # Do not change the following system generated value. 
     19 #------------------------------------------------------------------------------
     20 oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
     21 
     22 #------------------------------------------------------------------------------
     23 # Specify the installation option.
     24 # It can be one of the following:
     25 # 1. INSTALL_DB_SWONLY
     26 # 2. INSTALL_DB_AND_CONFIG
     27 # 3. UPGRADE_DB
     28 #-------------------------------------------------------------------------------
     29 oracle.install.option=INSTALL_DB_SWONLY
     30 
     31 #-------------------------------------------------------------------------------
     32 # Specify the hostname of the system as set during the install. It can be used
     33 # to force the installation to use an alternative hostname rather than using the
     34 # first hostname found on the system. (e.g., for systems with multiple hostnames 
     35 # and network interfaces)
     36 #-------------------------------------------------------------------------------
     37 ORACLE_HOSTNAME=hostname
     38 
     39 #-------------------------------------------------------------------------------
     40 # Specify the Unix group to be set for the inventory directory.  
     41 #-------------------------------------------------------------------------------
     42 UNIX_GROUP_NAME=dba
     43 
     44 #-------------------------------------------------------------------------------
     45 # Specify the location which holds the inventory files.
     46 # This is an optional parameter if installing on
     47 # Windows based Operating System.
     48 #-------------------------------------------------------------------------------
     49 INVENTORY_LOCATION=###ORACLE_BASE###/oraInventory
     50 
     51 #-------------------------------------------------------------------------------
     52 # Specify the languages in which the components will be installed.             
     53 # 
     54 # en   : English                  ja   : Japanese                  
     55 # fr   : French                   ko   : Korean                    
     56 # ar   : Arabic                   es   : Latin American Spanish    
     57 # bn   : Bengali                  lv   : Latvian                   
     58 # pt_BR: Brazilian Portuguese     lt   : Lithuanian                
     59 # bg   : Bulgarian                ms   : Malay                     
     60 # fr_CA: Canadian French          es_MX: Mexican Spanish           
     61 # ca   : Catalan                  no   : Norwegian                 
     62 # hr   : Croatian                 pl   : Polish                    
     63 # cs   : Czech                    pt   : Portuguese                
     64 # da   : Danish                   ro   : Romanian                  
     65 # nl   : Dutch                    ru   : Russian                   
     66 # ar_EG: Egyptian                 zh_CN: Simplified Chinese        
     67 # en_GB: English (Great Britain)  sk   : Slovak                    
     68 # et   : Estonian                 sl   : Slovenian                 
     69 # fi   : Finnish                  es_ES: Spanish                   
     70 # de   : German                   sv   : Swedish                   
     71 # el   : Greek                    th   : Thai                      
     72 # iw   : Hebrew                   zh_TW: Traditional Chinese       
     73 # hu   : Hungarian                tr   : Turkish                   
     74 # is   : Icelandic                uk   : Ukrainian                 
     75 # in   : Indonesian               vi   : Vietnamese                
     76 # it   : Italian                                                   
     77 #
     78 # all_langs   : All languages
     79 #
     80 # Specify value as the following to select any of the languages.
     81 # Example : SELECTED_LANGUAGES=en,fr,ja
     82 #
     83 # Specify value as the following to select all the languages.
     84 # Example : SELECTED_LANGUAGES=all_langs  
     85 #------------------------------------------------------------------------------
     86 SELECTED_LANGUAGES=en,zh_CN
     87 
     88 #------------------------------------------------------------------------------
     89 # Specify the complete path of the Oracle Home.
     90 #------------------------------------------------------------------------------
     91 ORACLE_HOME=###ORACLE_HOME###
     92 
     93 #------------------------------------------------------------------------------
     94 # Specify the complete path of the Oracle Base. 
     95 #------------------------------------------------------------------------------
     96 ORACLE_BASE=###ORACLE_BASE###
     97 
     98 #------------------------------------------------------------------------------
     99 # Specify the installation edition of the component.                        
    100 #                                                             
    101 # The value should contain only one of these choices.        
    102 # EE     : Enterprise Edition                                
    103 # SE     : Standard Edition                                  
    104 # SEONE  : Standard Edition One
    105 # PE     : Personal Edition (WINDOWS ONLY)
    106 #------------------------------------------------------------------------------
    107 oracle.install.db.InstallEdition=EE
    108 
    109 #------------------------------------------------------------------------------
    110 # This variable is used to enable or disable custom install and is considered
    111 # only if InstallEdition is EE.
    112 #
    113 # true  : Components mentioned as part of 'optionalComponents' property
    114 #         are considered for install.
    115 # false : Value for 'optionalComponents' is not considered.
    116 #------------------------------------------------------------------------------
    117 oracle.install.db.EEOptionsSelection=false
    118 
    119 #------------------------------------------------------------------------------
    120 # This variable is considered only if 'EEOptionsSelection' is set to true. 
    121 #
    122 # Description: List of Enterprise Edition Options you would like to enable.
    123 #
    124 #              The following choices are available. You may specify any
    125 #              combination of these choices.  The components you choose should
    126 #              be specified in the form "internal-component-name:version"
    127 #              Below is a list of components you may specify to enable.
    128 #        
    129 #              oracle.oraolap:11.2.0.3.0 - Oracle OLAP
    130 #              oracle.rdbms.dm:11.2.0.3.0 - Oracle Data Mining
    131 #              oracle.rdbms.dv:11.2.0.3.0 - Oracle Database Vault
    132 #              oracle.rdbms.lbac:11.2.0.3.0 - Oracle Label Security
    133 #              oracle.rdbms.partitioning:11.2.0.3.0 - Oracle Partitioning
    134 #              oracle.rdbms.rat:11.2.0.3.0 - Oracle Real Application Testing
    135 #------------------------------------------------------------------------------
    136 oracle.install.db.optionalComponents=oracle.rdbms.partitioning:11.2.0.3.0,oracle.oraolap:11.2.0.3.0,oracle.rdbms.dm:11.2.0.3.0,oracle.rdbms.dv:11.2.0.3.0,oracle.rdbms.lbac:11.2.0.3.0,oracle.rdbms.rat:11.2.0.3.0
    137 
    138 ###############################################################################
    139 #                                                                             #
    140 # PRIVILEGED OPERATING SYSTEM GROUPS                                            #
    141 # ------------------------------------------                                  #
    142 # Provide values for the OS groups to which OSDBA and OSOPER privileges       #
    143 # needs to be granted. If the install is being performed as a member of the   #        
    144 # group "dba", then that will be used unless specified otherwise below.          #
    145 #                                                                             #
    146 # The value to be specified for OSDBA and OSOPER group is only for UNIX based #
    147 # Operating System.                                                           #
    148 #                                                                             #
    149 ###############################################################################
    150 
    151 #------------------------------------------------------------------------------
    152 # The DBA_GROUP is the OS group which is to be granted OSDBA privileges.
    153 #------------------------------------------------------------------------------
    154 oracle.install.db.DBA_GROUP=dba
    155 
    156 #------------------------------------------------------------------------------
    157 # The OPER_GROUP is the OS group which is to be granted OSOPER privileges.
    158 # The value to be specified for OSOPER group is optional.
    159 #------------------------------------------------------------------------------
    160 oracle.install.db.OPER_GROUP=oinstall
    161 
    162 #------------------------------------------------------------------------------
    163 # Specify the cluster node names selected during the installation.
    164 # Example : oracle.install.db.CLUSTER_NODES=node1,node2
    165 #------------------------------------------------------------------------------
    166 oracle.install.db.CLUSTER_NODES=
    167 
    168 #------------------------------------------------------------------------------
    169 # This variable is used to enable or disable RAC One Node install.
    170 #
    171 # true  : Value of RAC One Node service name is used.
    172 # false : Value of RAC One Node service name is not used.
    173 #
    174 # If left blank, it will be assumed to be false
    175 #------------------------------------------------------------------------------
    176 oracle.install.db.isRACOneInstall=
    177 
    178 #------------------------------------------------------------------------------
    179 # Specify the name for RAC One Node Service. 
    180 #------------------------------------------------------------------------------
    181 oracle.install.db.racOneServiceName=
    182 
    183 #------------------------------------------------------------------------------
    184 # Specify the type of database to create.
    185 # It can be one of the following:
    186 # - GENERAL_PURPOSE/TRANSACTION_PROCESSING             
    187 # - DATA_WAREHOUSE                                
    188 #------------------------------------------------------------------------------
    189 oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
    190 
    191 #------------------------------------------------------------------------------
    192 # Specify the Starter Database Global Database Name. 
    193 #------------------------------------------------------------------------------
    194 oracle.install.db.config.starterdb.globalDBName=
    195 
    196 #------------------------------------------------------------------------------
    197 # Specify the Starter Database SID.
    198 #------------------------------------------------------------------------------
    199 oracle.install.db.config.starterdb.SID=
    200 
    201 #------------------------------------------------------------------------------
    202 # Specify the Starter Database character set.
    203 #                                              
    204 # It can be one of the following:
    205 # AL32UTF8, WE8ISO8859P15, WE8MSWIN1252, EE8ISO8859P2,
    206 # EE8MSWIN1250, NE8ISO8859P10, NEE8ISO8859P4, BLT8MSWIN1257,
    207 # BLT8ISO8859P13, CL8ISO8859P5, CL8MSWIN1251, AR8ISO8859P6,
    208 # AR8MSWIN1256, EL8ISO8859P7, EL8MSWIN1253, IW8ISO8859P8,
    209 # IW8MSWIN1255, JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE,
    210 # KO16MSWIN949, ZHS16GBK, TH8TISASCII, ZHT32EUC, ZHT16MSWIN950,
    211 # ZHT16HKSCS, WE8ISO8859P9, TR8MSWIN1254, VN8MSWIN1258
    212 #------------------------------------------------------------------------------
    213 oracle.install.db.config.starterdb.characterSet=AL32UTF8
    214 
    215 #------------------------------------------------------------------------------
    216 # This variable should be set to true if Automatic Memory Management 
    217 # in Database is desired.
    218 # If Automatic Memory Management is not desired, and memory allocation
    219 # is to be done manually, then set it to false.
    220 #------------------------------------------------------------------------------
    221 oracle.install.db.config.starterdb.memoryOption=true
    222 
    223 #------------------------------------------------------------------------------
    224 # Specify the total memory allocation for the database. Value(in MB) should be
    225 # at least 256 MB, and should not exceed the total physical memory available 
    226 # on the system.
    227 # Example: oracle.install.db.config.starterdb.memoryLimit=512
    228 #------------------------------------------------------------------------------
    229 oracle.install.db.config.starterdb.memoryLimit=
    230 
    231 #------------------------------------------------------------------------------
    232 # This variable controls whether to load Example Schemas onto
    233 # the starter database or not.
    234 #------------------------------------------------------------------------------
    235 oracle.install.db.config.starterdb.installExampleSchemas=false
    236 
    237 #------------------------------------------------------------------------------
    238 # This variable includes enabling audit settings, configuring password profiles
    239 # and revoking some grants to public. These settings are provided by default. 
    240 # These settings may also be disabled.    
    241 #------------------------------------------------------------------------------
    242 oracle.install.db.config.starterdb.enableSecuritySettings=true
    243 
    244 ###############################################################################
    245 #                                                                             #
    246 # Passwords can be supplied for the following four schemas in the          #
    247 # starter database:                                    #
    248 #   SYS                                                                       #
    249 #   SYSTEM                                                                    #
    250 #   SYSMAN (used by Enterprise Manager)                                       #
    251 #   DBSNMP (used by Enterprise Manager)                                       #
    252 #                                                                             #
    253 # Same password can be used for all accounts (not recommended)               #
    254 # or different passwords for each account can be provided (recommended)       #
    255 #                                                                             #
    256 ###############################################################################
    257 
    258 #------------------------------------------------------------------------------
    259 # This variable holds the password that is to be used for all schemas in the
    260 # starter database.
    261 #-------------------------------------------------------------------------------
    262 oracle.install.db.config.starterdb.password.ALL=
    263 
    264 #-------------------------------------------------------------------------------
    265 # Specify the SYS password for the starter database.
    266 #-------------------------------------------------------------------------------
    267 oracle.install.db.config.starterdb.password.SYS=
    268 
    269 #-------------------------------------------------------------------------------
    270 # Specify the SYSTEM password for the starter database.
    271 #-------------------------------------------------------------------------------
    272 oracle.install.db.config.starterdb.password.SYSTEM=
    273 
    274 #-------------------------------------------------------------------------------
    275 # Specify the SYSMAN password for the starter database.
    276 #-------------------------------------------------------------------------------
    277 oracle.install.db.config.starterdb.password.SYSMAN=
    278 
    279 #-------------------------------------------------------------------------------
    280 # Specify the DBSNMP password for the starter database.
    281 #-------------------------------------------------------------------------------
    282 oracle.install.db.config.starterdb.password.DBSNMP=
    283 
    284 #-------------------------------------------------------------------------------
    285 # Specify the management option to be selected for the starter database. 
    286 # It can be one of the following:
    287 # 1. GRID_CONTROL
    288 # 2. DB_CONTROL
    289 #-------------------------------------------------------------------------------
    290 oracle.install.db.config.starterdb.control=DB_CONTROL
    291 
    292 #-------------------------------------------------------------------------------
    293 # Specify the Management Service to use if Grid Control is selected to manage 
    294 # the database.      
    295 #-------------------------------------------------------------------------------
    296 oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=
    297 
    298 ###############################################################################
    299 #                                                                             #
    300 # SPECIFY BACKUP AND RECOVERY OPTIONS                                           #
    301 # ------------------------------------                                      #
    302 # Out-of-box backup and recovery options for the database can be mentioned    #
    303 # using the entries below.                              #    
    304 #                                                                             #
    305 ###############################################################################
    306 
    307 #------------------------------------------------------------------------------
    308 # This variable is to be set to false if automated backup is not required. Else 
    309 # this can be set to true.
    310 #------------------------------------------------------------------------------
    311 oracle.install.db.config.starterdb.automatedBackup.enable=false
    312 
    313 #------------------------------------------------------------------------------
    314 # Regardless of the type of storage that is chosen for backup and recovery, if 
    315 # automated backups are enabled, a job will be scheduled to run daily to backup 
    316 # the database. This job will run as the operating system user that is 
    317 # specified in this variable.
    318 #------------------------------------------------------------------------------
    319 oracle.install.db.config.starterdb.automatedBackup.osuid=
    320 
    321 #-------------------------------------------------------------------------------
    322 # Regardless of the type of storage that is chosen for backup and recovery, if 
    323 # automated backups are enabled, a job will be scheduled to run daily to backup 
    324 # the database. This job will run as the operating system user specified by the 
    325 # above entry. The following entry stores the password for the above operating 
    326 # system user.
    327 #-------------------------------------------------------------------------------
    328 oracle.install.db.config.starterdb.automatedBackup.ospwd=
    329 
    330 #-------------------------------------------------------------------------------
    331 # Specify the type of storage to use for the database.
    332 # It can be one of the following:
    333 # - FILE_SYSTEM_STORAGE
    334 # - ASM_STORAGE
    335 #------------------------------------------------------------------------------
    336 oracle.install.db.config.starterdb.storageType=
    337 
    338 #-------------------------------------------------------------------------------
    339 # Specify the database file location which is a directory for datafiles, control
    340 # files, redo logs.         
    341 #
    342 # Applicable only when oracle.install.db.config.starterdb.storage=FILE_SYSTEM_STORAGE 
    343 #-------------------------------------------------------------------------------
    344 oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=
    345 
    346 #-------------------------------------------------------------------------------
    347 # Specify the backup and recovery location.
    348 #
    349 # Applicable only when oracle.install.db.config.starterdb.storage=FILE_SYSTEM_STORAGE 
    350 #-------------------------------------------------------------------------------
    351 oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=
    352 
    353 #-------------------------------------------------------------------------------
    354 # Specify the existing ASM disk groups to be used for storage.
    355 #
    356 # Applicable only when oracle.install.db.config.starterdb.storage=ASM_STORAGE
    357 #-------------------------------------------------------------------------------
    358 oracle.install.db.config.asm.diskGroup=
    359 
    360 #-------------------------------------------------------------------------------
    361 # Specify the password for ASMSNMP user of the ASM instance.                  
    362 #
    363 # Applicable only when oracle.install.db.config.starterdb.storage=ASM_STORAGE 
    364 #-------------------------------------------------------------------------------
    365 oracle.install.db.config.asm.ASMSNMPPassword=
    366 
    367 #------------------------------------------------------------------------------
    368 # Specify the My Oracle Support Account Username.
    369 #
    370 #  Example   : MYORACLESUPPORT_USERNAME=abc@oracle.com
    371 #------------------------------------------------------------------------------
    372 MYORACLESUPPORT_USERNAME=
    373 
    374 #------------------------------------------------------------------------------
    375 # Specify the My Oracle Support Account Username password.
    376 #
    377 # Example    : MYORACLESUPPORT_PASSWORD=password
    378 #------------------------------------------------------------------------------
    379 MYORACLESUPPORT_PASSWORD=
    380 
    381 #------------------------------------------------------------------------------
    382 # Specify whether to enable the user to set the password for
    383 # My Oracle Support credentials. The value can be either true or false.
    384 # If left blank it will be assumed to be false.
    385 #
    386 # Example    : SECURITY_UPDATES_VIA_MYORACLESUPPORT=true
    387 #------------------------------------------------------------------------------
    388 SECURITY_UPDATES_VIA_MYORACLESUPPORT=
    389 
    390 #------------------------------------------------------------------------------
    391 # Specify whether user doesn't want to configure Security Updates.
    392 # The value for this variable should be true if you don't want to configure
    393 # Security Updates, false otherwise. 
    394 #
    395 # The value can be either true or false. If left blank it will be assumed
    396 # to be false.
    397 #
    398 # Example    : DECLINE_SECURITY_UPDATES=false
    399 #------------------------------------------------------------------------------
    400 DECLINE_SECURITY_UPDATES=true
    401 
    402 #------------------------------------------------------------------------------
    403 # Specify the Proxy server name. Length should be greater than zero.
    404 #
    405 # Example    : PROXY_HOST=proxy.domain.com 
    406 #------------------------------------------------------------------------------
    407 PROXY_HOST=
    408 
    409 #------------------------------------------------------------------------------
    410 # Specify the proxy port number. Should be Numeric and atleast 2 chars.
    411 #
    412 # Example    : PROXY_PORT=25 
    413 #------------------------------------------------------------------------------
    414 PROXY_PORT=
    415 
    416 #------------------------------------------------------------------------------
    417 # Specify the proxy user name. Leave PROXY_USER and PROXY_PWD 
    418 # blank if your proxy server requires no authentication.
    419 #
    420 # Example    : PROXY_USER=username 
    421 #------------------------------------------------------------------------------
    422 PROXY_USER=
    423 
    424 #------------------------------------------------------------------------------
    425 # Specify the proxy password. Leave PROXY_USER and PROXY_PWD  
    426 # blank if your proxy server requires no authentication.
    427 #
    428 # Example    : PROXY_PWD=password 
    429 #------------------------------------------------------------------------------
    430 PROXY_PWD=
    431 
    432 #------------------------------------------------------------------------------
    433 # Specify the proxy realm. This value is used if auto-updates option is selected.
    434 #
    435 # Example    : PROXY_REALM=metalink 
    436 #------------------------------------------------------------------------------
    437 PROXY_REALM=
    438 
    439 #------------------------------------------------------------------------------
    440 # Specify the Oracle Support Hub URL. 
    441 # 
    442 # Example    : COLLECTOR_SUPPORTHUB_URL=https://orasupporthub.company.com:8080/
    443 #------------------------------------------------------------------------------
    444 COLLECTOR_SUPPORTHUB_URL=
    445 
    446 #------------------------------------------------------------------------------
    447 # Specify the auto-updates option. It can be one of the following:
    448 # a.MYORACLESUPPORT_DOWNLOAD
    449 # b.OFFLINE_UPDATES
    450 # c.SKIP_UPDATES
    451 #------------------------------------------------------------------------------
    452 oracle.installer.autoupdates.option=
    453 #------------------------------------------------------------------------------
    454 # In case MYORACLESUPPORT_DOWNLOAD option is chosen, specify the location where
    455 # the updates are to be downloaded.
    456 # In case OFFLINE_UPDATES option is chosen, specify the location where the updates 
    457 # are present.
    458 oracle.installer.autoupdates.downloadUpdatesLoc=
    459 #------------------------------------------------------------------------------
    460 # Specify the My Oracle Support Account Username which has the patches download privileges  
    461 # to be used for software updates.
    462 #  Example   : AUTOUPDATES_MYORACLESUPPORT_USERNAME=abc@oracle.com
    463 #------------------------------------------------------------------------------
    464 AUTOUPDATES_MYORACLESUPPORT_USERNAME=
    465 
    466 #------------------------------------------------------------------------------
    467 # Specify the My Oracle Support Account Username password which has the patches download privileges  
    468 # to be used for software updates.
    469 #
    470 # Example    : AUTOUPDATES_MYORACLESUPPORT_PASSWORD=password
    471 #------------------------------------------------------------------------------
    472 AUTOUPDATES_MYORACLESUPPORT_PASSWORD=
    View Code

    netca.rsp,如下:

      1 ###################################################################### 
      2 ## Copyright(c) 1998, 2011 Oracle Corporation. All rights reserved. ## 
      3 ##                                                                  ## 
      4 ## Specify values for the variables listed below to customize your  ## 
      5 ## installation.                                                    ## 
      6 ##                                                                  ## 
      7 ## Each variable is associated with a comment. The comment          ## 
      8 ## identifies the variable type.                                    ## 
      9 ##                                                                  ## 
     10 ## Please specify the values in the following format:               ## 
     11 ##                                                                  ## 
     12 ##         Type         Example                                     ## 
     13 ##         String       "Sample Value"                              ## 
     14 ##         Boolean      True or False                               ## 
     15 ##         Number       1000                                        ## 
     16 ##         StringList   {"String value 1","String Value 2"}         ## 
     17 ##                                                                  ## 
     18 ######################################################################
     19 ##                                                                  ## 
     20 ## This sample response file causes the Oracle Net Configuration    ##
     21 ## Assistant (NetCA) to complete an Oracle Net configuration during ##
     22 ## a custom install of the Oracle11g server which is similar to     ##
     23 ## what would be created by the NetCA during typical Oracle11g      ##
     24 ## install. It also documents all of the NetCA response file        ##
     25 ## variables so you can create your own response file to configure  ##
     26 ## Oracle Net during an install the way you wish.                   ##
     27 ##                                                                  ## 
     28 ###################################################################### 
     29 
     30 [GENERAL]
     31 RESPONSEFILE_VERSION="11.2"
     32 CREATE_TYPE="CUSTOM"
     33 
     34 #-------------------------------------------------------------------------------
     35 # Name       : SHOW_GUI
     36 # Datatype   : Boolean
     37 # Description: This variable controls appearance/suppression of the NetCA GUI,
     38 # Pre-req    : N/A
     39 # Default    : TRUE
     40 # Note:
     41 # This must be set to false in order to run NetCA in silent mode. 
     42 # This is a substitute of "/silent" flag in the NetCA command line.
     43 # The command line flag has precedence over the one in this response file.
     44 # This feature is present since 10.1.0.3.
     45 #-------------------------------------------------------------------------------
     46 SHOW_GUI=false
     47 
     48 #-------------------------------------------------------------------------------
     49 # Name       : LOG_FILE
     50 # Datatype   : String
     51 # Description: If present, NetCA will log output to this file in addition to the
     52 #           standard out.
     53 # Pre-req    : N/A
     54 # Default    : NONE
     55 # Note:
     56 #     This is a substitute of "/log" in the NetCA command line.
     57 # The command line argument has precedence over the one in this response file.
     58 # This feature is present since 10.1.0.3.
     59 #-------------------------------------------------------------------------------
     60 LOG_FILE=""/opt/oracle/product/11.2.0.1/dbhome_1/network/tools/netca.log""
     61 
     62 [oracle.net.ca]
     63 #INSTALLED_COMPONENTS;StringList;list of installed components
     64 # The possible values for installed components are:
     65 # "net8","server","client","aso", "cman", "javavm" 
     66 INSTALLED_COMPONENTS={"server","net8","javavm"}
     67 
     68 #INSTALL_TYPE;String;type of install
     69 # The possible values for install type are:
     70 # "typical","minimal" or "custom"
     71 INSTALL_TYPE=""typical""
     72 
     73 #LISTENER_NUMBER;Number;Number of Listeners
     74 # A typical install sets one listener 
     75 LISTENER_NUMBER=1
     76 
     77 #LISTENER_NAMES;StringList;list of listener names
     78 # The values for listener are:
     79 # "LISTENER","LISTENER1","LISTENER2","LISTENER3", ...
     80 # A typical install sets only "LISTENER" 
     81 LISTENER_NAMES={"LISTENER"}
     82 
     83 #LISTENER_PROTOCOLS;StringList;list of listener addresses (protocols and parameters separated by semicolons)
     84 # The possible values for listener protocols are:
     85 # "TCP;1521","TCPS;2484","NMP;ORAPIPE","IPC;IPCKEY","VI;1521" 
     86 # A typical install sets only "TCP;1521" 
     87 LISTENER_PROTOCOLS={"TCP;1521"}
     88 
     89 #LISTENER_START;String;name of the listener to start, in double quotes
     90 LISTENER_START=""LISTENER""
     91 
     92 #NAMING_METHODS;StringList;list of naming methods
     93 # The possible values for naming methods are: 
     94 # LDAP, TNSNAMES, ONAMES, HOSTNAME, NOVELL, NIS, DCE
     95 # A typical install sets only: "TNSNAMES","ONAMES","HOSTNAMES" 
     96 # or "LDAP","TNSNAMES","ONAMES","HOSTNAMES" for LDAP
     97 NAMING_METHODS={"TNSNAMES","ONAMES","HOSTNAME"}
     98 
     99 #NOVELL_NAMECONTEXT;String;Novell Directory Service name context, in double quotes
    100 # A typical install does not use this variable. 
    101 #NOVELL_NAMECONTEXT = ""NAMCONTEXT""
    102 
    103 #SUN_METAMAP;String; SUN meta map, in double quotes
    104 # A typical install does not use this variable. 
    105 #SUN_METAMAP = ""MAP""
    106 
    107 #DCE_CELLNAME;String;DCE cell name, in double quotes
    108 # A typical install does not use this variable. 
    109 #DCE_CELLNAME = ""CELL""
    110 
    111 #NSN_NUMBER;Number;Number of NetService Names
    112 # A typical install sets one net service name
    113 NSN_NUMBER=1
    114 
    115 #NSN_NAMES;StringList;list of Net Service names
    116 # A typical install sets net service name to "EXTPROC_CONNECTION_DATA"
    117 NSN_NAMES={"EXTPROC_CONNECTION_DATA"}
    118 
    119 #NSN_SERVICE;StringList;Oracle11g database's service name
    120 # A typical install sets Oracle11g database's service name to "PLSExtProc"
    121 NSN_SERVICE={"PLSExtProc"}
    122 
    123 #NSN_PROTOCOLS;StringList;list of coma separated strings of Net Service Name protocol parameters
    124 # The possible values for net service name protocol parameters are:
    125 # "TCP;HOSTNAME;1521","TCPS;HOSTNAME;2484","NMP;COMPUTERNAME;ORAPIPE","VI;HOSTNAME;1521","IPC;IPCKEY"  
    126 # A typical install sets parameters to "IPC;EXTPROC"
    127 NSN_PROTOCOLS={"TCP;HOSTNAME;1521"}
    View Code

    dbca.rsp 文件内容如下:

    View Code

    build.sh 如下:

    #!/bin/bash
    
    # ################## #
    # BUILDING THE IMAGE #
    # ################## #
    
    IMAGE_NAME=oracle11:v0.1
    
    echo "Building image '$IMAGE_NAME' ..."
    
    # BUILD THE IMAGE (replace all environment variables)
    BUILD_START=$(date '+%s')
    echo $BUILD_START
    docker build -t $IMAGE_NAME -f Dockerfile-oracle11g.ee . || {
      echo ""
      echo "ERROR: Oracle Database Docker Image was NOT successfully created."
      echo "ERROR: Check the output and correct any reported problems with the docker build operation."
      exit 1
    }
    echo ""
    
    BUILD_END=$(date '+%s')
    BUILD_ELAPSED=`expr $BUILD_END - $BUILD_START`
    echo $BUILD_ELAPSED

    sh build.sh 执行完后,编译完镜像,开始创建容器

    1 docker run -d -p 10022:22 -p 49181:1521 -v /home/docker/dockerdata/11.2.0.1/oradata:/opt/oracle/oradata --privileged=true --name test oracle11:v0.1

    需要注意的是,宿主目录需要提前建立 /home/docker/dockerdata/11.2.0.1/oradata。

     使用xshell远程连接上容器机器,用户名:oracle,密码:oracle,oracle用户登录之后,执行$HOME目录下的 runOracle.sh 脚本,sh runOracle.sh test ,参数为需要建立数据库的名字。

    会得到类似如下的输出:

     1 sed: can't read /opt/oracle/product/11.2.0.1/dbhome_1/network/admin/listener.ora: No such file or directory
     2 
     3 LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 12-JUN-2018 08:03:51
     4 
     5 Copyright (c) 1991, 2011, Oracle.  All rights reserved.
     6 
     7 Starting /opt/oracle/product/11.2.0.1/dbhome_1/bin/tnslsnr: please wait...
     8 
     9 TNSLSNR for Linux: Version 11.2.0.3.0 - Production
    10 Log messages written to /opt/oracle/diag/tnslsnr/ce9412e660a0/listener/alert/log.xml
    11 Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ce9412e660a0)(PORT=1521)))
    12 
    13 Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
    14 STATUS of the LISTENER
    15 ------------------------
    16 Alias                     LISTENER
    17 Version                   TNSLSNR for Linux: Version 11.2.0.3.0 - Production
    18 Start Date                12-JUN-2018 08:03:51
    19 Uptime                    0 days 0 hr. 0 min. 0 sec
    20 Trace Level               off
    21 Security                  ON: Local OS Authentication
    22 SNMP                      OFF
    23 Listener Log File         /opt/oracle/diag/tnslsnr/ce9412e660a0/listener/alert/log.xml
    24 Listening Endpoints Summary...
    25   (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ce9412e660a0)(PORT=1521)))
    26 The listener supports no services
    27 The command completed successfully
    28 /bin/cat: /proc/sys/net/core/wmem_default: No such file or directory
    29 /bin/cat: /proc/sys/net/core/wmem_default: No such file or directory
    30 /bin/cat: /proc/sys/net/core/wmem_default: No such file or directory
    31 Copying database files
    32 1% complete
    33 3% complete
    34 11% complete
    35 18% complete
    36 26% complete
    37 37% complete
    38 Creating and starting Oracle instance
    39 40% complete
    40 45% complete
    41 50% complete
    42 55% complete
    43 56% complete
    44 60% complete
    45 62% complete
    46 Completing Database Creation
    47 66% complete
    48 70% complete
    49 73% complete
    50 85% complete
    51 96% complete
    52 100% complete
    53 Look at the log file "/opt/oracle/cfgtoollogs/dbca/test/test.log" for further details.
    View Code

     相关文件可以在 https://github.com/li936393/docker-oracle-11.2.0.1上找到

  • 相关阅读:
    django restful framework 有哪些功能(10条)
    Restful 规范
    eclipse编辑环境下导入springmvc的源码
    java.lang.NoSuchMethodException: .<init>()
    spring项目出现无法加载主类
    元素 "context:component-scan" 的前缀 "context" 未绑定。
    BeanPostProcessor出现init方法无法被调用Invocation of init method failed
    spring学习笔记
    springmvc学习笔记
    打印圈1圈2
  • 原文地址:https://www.cnblogs.com/befer/p/9157501.html
Copyright © 2011-2022 走看看