Why is this a separate blogpost? It is clearly described at the github-page with Vagrant-boxes, so what can be added?

Well… it didn’t work. For me anyway. The database wasn’t created in de VM, so the rest was of no use either. The cause? A combination of Windows and github-repository. For now it’s a bug I think which will be resolved soon, but it may happen anybody in the future.

What did  I do. My environment is a Windows 10 laptop with the following installed:

  • Githup
  • Vagrant
  • Virtualbox

Following the instructions at the github-page:

  • Clone the repository:

git clone https://github.com/oracle/vagrant-boxes

Switched logging on and run vagrant.

set VAGRANT_LOG=info

vagrant up > vagrant.log

Check if it works. Find the ip-number of the Virtualbox through ‘ipconfig’, and choose the Host-Only Network:

Ethernet adapter VirtualBox Host-Only Network:

Connection-specific DNS Suffix  . :

Link-local IPv6 Address . . . . . : fe80::891f:84a:c5fc:1548%11

IPv4 Address. . . . . . . . . . . : 192.168.56.1

Subnet Mask . . . . . . . . . . . : 255.255.255.0

Default Gateway . . . . . . . . . :

In my case it should be (browser of my laptop) : http:\\192.168.56.1:8080\ords

And.. nothing.

Checking the log-file, discovered that the database hadn’t been created, and got stuck already while creating the listener.

oracle-18c-apex: /etc/sysconfig/oracle-xe-18c.conf: line 3: $’\r’: command not found
oracle-18c-apex: /etc/sysconfig/oracle-xe-18c.conf: line 5: $’\r’: command not found
oracle-18c-apex: /etc/sysconfig/oracle-xe-18c.conf: line 8: $’\r’: command not found
oracle-18c-apex: /etc/sysconfig/oracle-xe-18c.conf: line 11: $’\r’: command not found
oracle-18c-apex: /etc/sysconfig/oracle-xe-18c.conf: line 14: $’\r’: command not found
oracle-18c-apex: /etc/sysconfig/oracle-xe-18c.conf: line 17: $’\r’: command not found

oracle-18c-apex: Configuring Oracle Listener.

oracle-18c-apex: Listener configuration failed. Check log ‘/opt/oracle/cfgtoollogs/netca/netca_configure_out.log’ for more details.

oracle-18c-apex: INSTALLER: Database created

oracle-18c-apex: oracle-xe-18c.service is not a native service, redirecting to /sbin/chkconfig.

oracle-18c-apex: Executing /sbin/chkconfig oracle-xe-18c on

oracle-18c-apex: INSTALLER: Created and enabled oracle-xe-18c systemd’s service

The first lines with $’\r’ give it away, but let’s see, what  is the content of this netca_configure_out.log:

Parsing command line arguments:

Parameter “orahome” = /opt/oracle/product/18c/dbhomeXE

Parameter “instype” = typical

Parameter “inscomp” = client,oraclenet,javavm,server,ano

Parameter “insprtcl” = tcp

Parameter “cfg” = local

Parameter “authadp” = NO_VALUE

Parameter “responsefile” = /opt/oracle/product/18c/dbhomeXE/network/install/netca_typ.rsp

Parameter “silent” = true

Parameter “orahnam” = OraHomeXE

Parameter “listenerparameters” = DEFAULT_SERVICE=XE

Failed parsing command line arguments: Invalid number argument for “lisport”

It turned out that there were carriage returns in the lines in the file /etc/sysconfig/oracle-xe-18c.conf.

And this file is a copy of the file in the vagrant directory ora-responses on Windows:

D:\….. \vagrant-boxes\OracleAPEX\ora-response\oracle-xe-18c.conf.tmpl

First I thought I made a mistake by editing this file in the past (it happens…), so I downloaded the https://github.com/oracle/vagrant-boxes/tree/master/OracleAPEX another time, replaced the file and ran it again. Same result.

Solution is simple: Remove the carriage returns at the end of te lines in the file oracle-xe-18c.conf.tmpl in windows with a dos2unix-command e.g. and it works like a charm.

Regardz

Resources:

Announcement Apex 19.1 / Vagrant: https://blogs.oracle.com/scoter/automated-oracle-apex-191-installation-with-vagrant-and-virtualbox

Vagrant boxes Github: https://github.com/oracle/vagrant-boxes/tree/master/OracleAPEX

XE 18.4: https://www.oracle.com/technetwork/database/database-technologies/express-edition/downloads/index.html

ORDS 19.1: https://www.oracle.com/technetwork/developer-tools/rest-data-services/downloads/index.html