{"id":11541,"date":"2018-08-14T20:39:44","date_gmt":"2018-08-14T18:39:44","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/"},"modified":"2018-08-14T20:39:44","modified_gmt":"2018-08-14T18:39:44","slug":"oracle-database-on-openshift","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/","title":{"rendered":"Oracle Database on OpenShift"},"content":{"rendered":"<h2>By Franck Pachot<\/h2>\n<p>.<br \/>\nIn a <a href=\"https:\/\/www.dbi-services.com\/blog\/openshift-on-my-windows-10-laptop-with-minishift\/\" target=\"_blank\" rel=\"noopener noreferrer\">previous post<\/a> I described the setup of MiniShift on my laptop in order to run OpenShift for test purpose. I even pulled the Oracle Database image from the Docker Store. But the goal is to import it into OpenShift to deploy it from the Image Stream.<br \/>\n<!--more--><\/p>\n<p>I start MiniShift on my laptop, specifying a larger disk (default is 20GB)<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;minishift start --disk-size 40g\n-- Starting profile 'minishift'\n-- Check if deprecated options are used ... OK\n-- Checking if https:\/\/github.com is reachable ... OK\n-- Checking if requested OpenShift version 'v3.9.0' is valid ... OK\n-- Checking if requested OpenShift version 'v3.9.0' is supported ... OK\n-- Checking if requested hypervisor 'virtualbox' is supported on this platform ... OK\n-- Checking if VirtualBox is installed ... OK\n-- Checking the ISO URL ... OK\n-- Checking if provided oc flags are supported ... OK\n-- Starting the OpenShift cluster using 'virtualbox' hypervisor ...\n-- Minishift VM will be configured with ...\n   Memory:    2 GB\n   vCPUs :    2\n   Disk size: 40 GB\n-- Starting Minishift VM .................................................................... OK\n-- Checking for IP address ... OK\n-- Checking for nameservers ... OK\n-- Checking if external host is reachable from the Minishift VM ...\n   Pinging 8.8.8.8 ... OK\n-- Checking HTTP connectivity from the VM ...\n   Retrieving http:\/\/minishift.io\/index.html ... OK\n-- Checking if persistent storage volume is mounted ... OK\n-- Checking available disk space ... 1% used OK\n   Importing 'openshift\/origin:v3.9.0' ............. OK\n   Importing 'openshift\/origin-docker-registry:v3.9.0' ... OK\n   Importing 'openshift\/origin-haproxy-router:v3.9.0' ...... OK\n-- OpenShift cluster will be configured with ...\n   Version: v3.9.0\n-- Copying oc binary from the OpenShift container image to VM ... OK\n-- Starting OpenShift cluster ...........................................................\nUsing nsenter mounter for OpenShift volumes\nUsing public hostname IP 192.168.99.105 as the host IP\nUsing 192.168.99.105 as the server IP\nStarting OpenShift using openshift\/origin:v3.9.0 ...\nOpenShift server started.\n&nbsp;\nThe server is accessible via web console at:\n    https:&frasl;&frasl;192.168.99.105:8443\n&nbsp;\nYou are logged in as:\n    User:     developer\n    Password: \n&nbsp;\nTo login as administrator:\n    oc login -u system:admin\n<\/code><\/pre>\n<p>MiniShift is starting a VirualBox and gets an IP address from the VirtualBox DHCP &#8211; here 192.168.99.105<br \/>\nI can access to the console https:\/\/192.168.99.105:8443 and log as developer or admin but for the moment I&#8217;m continuing in command line.<\/p>\n<p>At any moment I can log to the VM running OpenShift with the minishift command. Here checking the size of the disks<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;minishift ssh\n&nbsp;\n[docker@minishift ~]$ df -h\nFilesystem           Size  Used Avail Use% Mounted on\n\/dev\/mapper\/live-rw  9.8G  697M  9.0G   8% \/\ndevtmpfs             974M     0  974M   0% \/dev\ntmpfs               1000M     0 1000M   0% \/dev\/shm\ntmpfs               1000M   18M  983M   2% \/run\ntmpfs               1000M     0 1000M   0% \/sys\/fs\/cgroup\n\/dev\/sr0             344M  344M     0 100% \/run\/initramfs\/live\n\/dev\/sda1             39G  1.8G   37G   5% \/mnt\/sda1\ntmpfs                200M     0  200M   0% \/run\/user\/0\ntmpfs                200M     0  200M   0% \/run\/user\/1000\n<\/code><\/pre>\n<h3>Build the Docker image<\/h3>\n<p>The goal is to run in OpenShift a container from an image that has been build somewhere else. In this example I&#8217;ll not build one but use one provided on the Docker store: the Oracle Database &#8216;slim&#8217; image. For this example, I&#8217;ll use the minishift VM docker, just because it is there.<\/p>\n<p>I have DockerTools installed on my laptop and just want to set the environment to connect to the docker server on the minishift VM. I can get the environment from minishift:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;minishift docker-env\nSET DOCKER_TLS_VERIFY=1\nSET DOCKER_HOST=tcp:\/\/192.168.99.105:2376\nSET DOCKER_CERT_PATH=C:\\Users\\Franck\\.minishift\\certs\nREM Run this command to configure your shell:\nREM     @FOR \/f \"tokens=*\" %i IN ('minishift docker-env') DO @call %i\n<\/code><\/pre>\n<p>Here is how to directly set the environemnt from it:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;@FOR \/f \"tokens=*\" %i IN ('minishift docker-env') DO @call %i\n<\/code><\/pre>\n<p>Now my docker commands will connect to this docker server. Here are the related info, minishift is already running several containers there for its own usage:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;docker info\nContainers: 9\n Running: 7\n Paused: 0\n Stopped: 2\nImages: 6\nServer Version: 1.13.1\nStorage Driver: overlay2\n Backing Filesystem: xfs\n Supports d_type: true\n Native Overlay Diff: true\nLogging Driver: journald\nCgroup Driver: systemd\nPlugins:\n Volume: local\n Network: bridge host macvlan null overlay\n Log:\nSwarm: inactive\nRuntimes: docker-runc runc\nDefault Runtime: docker-runc\nInit Binary: docker-init\ncontainerd version:  (expected: aa8187dbd3b7ad67d8e5e3a15115d3eef43a7ed1)\nrunc version: e9c345b3f906d5dc5e8100b05ce37073a811c74a (expected: 9df8b306d01f59d3a8029be411de015b7304dd8f)\ninit version: N\/A (expected: 949e6facb77383876aeff8a6944dde66b3089574)\nSecurity Options:\n seccomp\n  Profile: default\n selinux\nKernel Version: 3.10.0-862.6.3.el7.x86_64\nOperating System: CentOS Linux 7 (Core)\nOSType: linux\nArchitecture: x86_64\nCPUs: 2\nTotal Memory: 1.953GiB\nName: minishift\nID: U7IQ:TE3X:HSGK:3ES2:IO6G:A7VI:3KUU:YMBC:3ZIR:QYUL:EQUL:VFMS\nDocker Root Dir: \/var\/lib\/docker\nDebug Mode (client): false\nDebug Mode (server): false\nUsername: pachot\nRegistry: https:\/\/index.docker.io\/v1\/\nLabels:\n provider=virtualbox\nExperimental: false\nInsecure Registries:\n 172.30.0.0\/16\n 127.0.0.0\/8\nLive Restore Enabled: false\n<\/code><\/pre>\n<p>As for this example, I&#8217;ll use the Oracle Database image, I need to log to the Docker Store to prove that I accept the licensing conditions:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;docker login\nLogin with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https:\/\/hub.docker.com to create one.\nUsername:\nPassword:\nLogin Succeeded\n<\/code><\/pre>\n<p>I pull the image, takes some time because &#8216;slim&#8217; means 2GB with Oracle Database.<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;docker pull store\/oracle\/database-enterprise:12.2.0.1-slim\nTrying to pull repository docker.io\/store\/oracle\/database-enterprise ...\n12.2.0.1-slim: Pulling from docker.io\/store\/oracle\/database-enterprise\n4ce27fe12c04: Pull complete\n9d3556e8e792: Pull complete\nfc60a1a28025: Pull complete\n0c32e4ed872e: Pull complete\nbe0a1f1e8dfd: Pull complete\nDigest: sha256:dbd87ae4cc3425dea7ba3d3f34e062cbd0afa89aed2c3f3d47ceb5213cc0359a\nStatus: Downloaded newer image for docker.io\/store\/oracle\/database-enterprise:12.2.0.1-slim\n<\/code><\/pre>\n<p>Here is the image:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;docker images\nREPOSITORY                         TAG                 IMAGE ID            CREATED             SIZE\nopenshift\/origin-web-console       v3.9.0              aa12a2fc57f7        7 weeks ago         495MB\nopenshift\/origin-docker-registry   v3.9.0              0530b896b578        7 weeks ago         465MB\nopenshift\/origin-haproxy-router    v3.9.0              6b85d7aec983        7 weeks ago         1.28GB\nopenshift\/origin-deployer          v3.9.0              39ee47797d2e        7 weeks ago         1.26GB\nopenshift\/origin                   v3.9.0              12a3f005312b        7 weeks ago         1.26GB\nopenshift\/origin-pod               v3.9.0              6e08365fbba9        7 weeks ago         223MB\nstore\/oracle\/database-enterprise   12.2.0.1-slim       27c9559d36ec        12 months ago       2.08GB\n<\/code><\/pre>\n<p>My minishift VM disk has increased by 2GB:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;minishift ssh -- df -Th \/mnt\/sda1\nFilesystem     Type  Size  Used Avail Use% Mounted on\n\/dev\/sda1      xfs    39G  3.9G   35G  11% \/mnt\/sda1\n<\/code><\/pre>\n<h3>Push the image to OpenShift registry<\/h3>\n<p>OpenShift has its integrated container registry from which the Docker images are visible to Image Stream.<br \/>\nHere is the address of the registry:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;minishift openshift registry\n172.30.1.1:5000\n<\/code><\/pre>\n<p>I&#8217;ll run some OpenShift commands and the path to the minishift cache for &#8216;oc&#8217; can be set with:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;minishift oc-env\nSET PATH=C:\\Users\\Franck\\.minishift\\cache\\oc\\v3.9.0\\windows;%PATH%\nREM Run this command to configure your shell:\nREM     @FOR \/f \"tokens=*\" %i IN ('minishift oc-env') DO @call %i\n&nbsp;\nC:\\Users\\Franck&gt;@FOR \/f \"tokens=*\" %i IN ('minishift oc-env') DO @call %i\n<\/code><\/pre>\n<p>I am still connected as developer to OpenShift:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;oc whoami\ndeveloper\n<\/code><\/pre>\n<p>and I get the login token:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;oc whoami -t\nlde5zRPHjkDyaXU9ninZ6zX50cVu3liNBjQVinJdwFc\n<\/code><\/pre>\n<p>I use this token to login to the OpenShift registry with docker in order to be able to push the image:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;docker login -u developer -p lde5zRPHjkDyaXU9ninZ6zX50cVu3liNBjQVinJdwFc 172.30.1.1:5000\nWARNING! Using --password via the CLI is insecure. Use --password-stdin.\nLogin Succeeded\n<\/code><\/pre>\n<p>I create a new project to import the image to:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;oc new-project oracle --display-name=Oracle\nNow using project \"oracle\" on server \"https:\/\/192.168.99.105:8443\".\n&nbsp;\nYou can add applications to this project with the 'new-app' command. For example, try:\n&nbsp;\n    oc new-app centos\/ruby-22-centos7~https:\/\/github.com\/openshift\/ruby-ex.git\n&nbsp;\nto build a new example application in Ruby.\n<\/code><\/pre>\n<p>This can also be done from the GUI. Here is the project on the right:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftProject.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftProject.png\" alt=\"CaptureOpenShiftProject\" width=\"1024\" height=\"334\" class=\"aligncenter size-large wp-image-27041\" \/><\/a><\/p>\n<p>I tag the image with the name of the registry (172.30.1.1:5000) and the name of the project (oracle) and add an image name, so that the full name is: 172.30.1.1:5000\/oracle\/ora122slim<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;docker tag store\/oracle\/database-enterprise:12.2.0.1-slim 172.30.1.1:5000\/oracle\/ora122slim\n<\/code><\/pre>\n<p>We can see this tagged image<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;docker images\nREPOSITORY                          TAG                 IMAGE ID            CREATED             SIZE\nopenshift\/origin-web-console        v3.9.0              aa12a2fc57f7        7 weeks ago         495MB\nopenshift\/origin-docker-registry    v3.9.0              0530b896b578        7 weeks ago         465MB\nopenshift\/origin-haproxy-router     v3.9.0              6b85d7aec983        7 weeks ago         1.28GB\nopenshift\/origin-deployer           v3.9.0              39ee47797d2e        7 weeks ago         1.26GB\nopenshift\/origin                    v3.9.0              12a3f005312b        7 weeks ago         1.26GB\nopenshift\/origin-pod                v3.9.0              6e08365fbba9        7 weeks ago         223MB\n172.30.1.1:5000\/oracle\/ora122slim   latest              27c9559d36ec        12 months ago       2.08GB\nstore\/oracle\/database-enterprise    12.2.0.1-slim       27c9559d36ec        12 months ago       2.08GB\n<\/code><\/pre>\n<p>Note that it is the same IMAGE ID and doesn&#8217;t take more space:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;minishift ssh -- df -Th \/mnt\/sda1\nFilesystem     Type  Size  Used Avail Use% Mounted on\n\/dev\/sda1      xfs    39G  3.9G   35G  11% \/mnt\/sda1\n<\/code><\/pre>\n<p>Then I&#8217;m finally ready to push the image to the OpenShift docker registry:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;docker push 172.30.1.1:5000\/oracle\/ora122slim\nThe push refers to a repository [172.30.1.1:5000\/oracle\/ora122slim]\n066e811424fb: Pushed\n99d7f2451a1a: Pushed\na2c532d8cc36: Pushed\n49c80855196a: Pushed\n40c24f62a02f: Pushed\nlatest: digest: sha256:25b0ec7cc3987f86b1e754fc214e7f06761c57bc11910d4be87b0d42ee12d254 size: 1372\n<\/code><\/pre>\n<p>This is a copy, and takes an additional 2GB:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;minishift ssh -- df -Th \/mnt\/sda1\nFilesystem     Type  Size  Used Avail Use% Mounted on\n\/dev\/sda1      xfs    39G  5.4G   33G  14% \/mnt\/sda1\n<\/code><\/pre>\n<h3>Deploy the image<\/h3>\n<p>Finally, I can deploy the image as it is visible in the GUI:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftImport.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftImport.png\" alt=\"CaptureOpenShiftImport\" width=\"1024\" height=\"557\" class=\"aligncenter size-large wp-image-27056\" \/><\/a><\/p>\n<p>I choose to deploy from fommand line:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;oc new-app --image-stream=ora122slim --name=ora122slimdeployment\n--&gt; Found image 27c9559 (12 months old) in image stream \"oracle\/ora122slim\" under tag \"latest\" for \"ora122slim\"\n&nbsp;\n    * This image will be deployed in deployment config \"ora122slimdeployment\"\n    * Ports 1521\/tcp, 5500\/tcp will be load balanced by service \"ora122slimdeployment\"\n      * Other containers can access this service through the hostname \"ora122slimdeployment\"\n    * This image declares volumes and will default to use non-persistent, host-local storage.\n      You can add persistent volumes later by running 'volume dc\/ora122slimdeployment --add ...'\n\n--&gt; Creating resources ...\n    imagestreamtag \"ora122slimdeployment:latest\" created\n    deploymentconfig \"ora122slimdeployment\" created\n    service \"ora122slimdeployment\" created\n--&gt; Success\n    Application is not exposed. You can expose services to the outside world by executing one or more of the commands below:\n     'oc expose svc\/ora122slimdeployment'\n    Run 'oc status' to view your app.\n<\/code><\/pre>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftDeploy.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftDeploy.png\" alt=\"CaptureOpenShiftDeploy\" width=\"1024\" height=\"240\" class=\"aligncenter size-large wp-image-27065\" \/><\/a><\/p>\n<p>I expose the service:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;oc expose service ora122slimdeployment\nroute \"ora122slimdeployment\" exposed\n<\/code><\/pre>\n<h3>\/bin\/bash: \/home\/oracle\/setup\/dockerInit.sh: Permission denied<\/h3>\n<p>Here is one little thing to change. From the POD terminal, I can see the following error:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftCrash.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftCrash.png\" alt=\"CaptureOpenShiftCrash\" width=\"1024\" height=\"402\" class=\"aligncenter size-large wp-image-27072\" \/><\/a><\/p>\n<p>The same can be read from command line:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;oc status\nIn project Oracle (oracle) on server https:\/\/192.168.99.105:8443\n&nbsp;\nhttp:\/\/ora122slimdeployment-oracle.192.168.99.105.nip.io to pod port 1521-tcp (svc\/ora122slimdeployment)\n  dc\/ora122slimdeployment deploys istag\/ora122slim:latest\n    deployment #1 deployed 7 minutes ago - 0\/1 pods (warning: 6 restarts)\n&nbsp;\nErrors:\n  * pod\/ora122slimdeployment-1-86prl is crash-looping\n&nbsp;\n1 error, 2 infos identified, use 'oc status -v' to see details.\n&nbsp;\nC:\\Users\\Franck&gt;oc logs ora122slimdeployment-1-86prl -c ora122slimdeployment\n\/bin\/bash: \/home\/oracle\/setup\/dockerInit.sh: Permission denied\n<\/code><\/pre>\n<p>This is because by default, for security reason, OpenShift runs the container with a random user id. But the files are executable only by oracle:<\/p>\n<pre><code>\nsh-4.2$ ls -l \/home\/oracle\/setup\/dockerInit.sh\n-rwxr-xr--. 1 oracle oinstall 2165 Aug 17  2017 \/home\/oracle\/setup\/dockerInit.sh\nsh-4.2$\n<\/code><\/pre>\n<p>The solution is quite simple: allow the container to run with its own user id:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;minishift addon apply anyuid\n-- Applying addon 'anyuid':.\n Add-on 'anyuid' changed the default security context constraints to allow pods to run as any user.\n Per default OpenShift runs containers using an arbitrarily assigned user ID.\n Refer to https:\/\/docs.openshift.org\/latest\/architecture\/additional_concepts\/authorization.html#security-context-constraints and\n https:\/\/docs.openshift.org\/latest\/creating_images\/guidelines.html#openshift-origin-specific-guidelines for more information.\n<\/code><\/pre>\n<p>The the restart of the POD will go further:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftOracle.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftOracle.png\" alt=\"CaptureOpenShiftOracle\" width=\"1024\" height=\"425\" class=\"aligncenter size-large wp-image-27074\" \/><\/a><\/p>\n<p>This Oracle Database from the Docker Store is not really an image of an installed Oracle Database, but just a tar of Oracle Home and Database files that have to be untared.<\/p>\n<p>Now, in addition to the image size I have an additional 2GB layer for the container:<\/p>\n<pre><code>\nC:\\Users\\Franck&gt;minishift ssh -- df -Th \/mnt\/sda1\nFilesystem     Type  Size  Used Avail Use% Mounted on\n\/dev\/sda1      xfs    39G   11G   28G  28% \/mnt\/sda1\n&nbsp;\nC:\\Users\\Franck&gt;docker system df\nTYPE                TOTAL               ACTIVE              SIZE                RECLAIMABLE\nImages              7                   6                   3.568GB             1.261GB (35%)\nContainers          17                  9                   1.895GB             58.87kB (0%)\nLocal Volumes       0                   0                   0B                  0B\nBuild Cache                                                 0B                  0B\n<\/code><\/pre>\n<p>Of course there is more to customize. The minishift VM should have more memory and the container for Oracle Database as well. We probably want to add an external volume, and export ports outside of the minishift VM.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>By Franck Pachot . In a previous post I described the setup of MiniShift on my laptop in order to run OpenShift for test purpose. I even pulled the Oracle Database image from the Docker Store. But the goal is to import it into OpenShift to deploy it from the Image Stream.<\/p>\n","protected":false},"author":27,"featured_media":11542,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[229],"tags":[],"type_dbi":[],"class_list":["post-11541","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-database-administration-monitoring"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Oracle Database on OpenShift - dbi Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Oracle Database on OpenShift\" \/>\n<meta property=\"og:description\" content=\"By Franck Pachot . In a previous post I described the setup of MiniShift on my laptop in order to run OpenShift for test purpose. I even pulled the Oracle Database image from the Docker Store. But the goal is to import it into OpenShift to deploy it from the Image Stream.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2018-08-14T18:39:44+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftProject.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2145\" \/>\n\t<meta property=\"og:image:height\" content=\"700\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Oracle Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Oracle Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/\"},\"author\":{\"name\":\"Oracle Team\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee\"},\"headline\":\"Oracle Database on OpenShift\",\"datePublished\":\"2018-08-14T18:39:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/\"},\"wordCount\":685,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftProject.png\",\"articleSection\":[\"Database Administration &amp; Monitoring\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/\",\"name\":\"Oracle Database on OpenShift - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftProject.png\",\"datePublished\":\"2018-08-14T18:39:44+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#primaryimage\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftProject.png\",\"contentUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftProject.png\",\"width\":2145,\"height\":700},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Oracle Database on OpenShift\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee\",\"name\":\"Oracle Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"caption\":\"Oracle Team\"},\"url\":\"https:\/\/www.dbi-services.com\/blog\/author\/oracle-team\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Oracle Database on OpenShift - dbi Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/","og_locale":"en_US","og_type":"article","og_title":"Oracle Database on OpenShift","og_description":"By Franck Pachot . In a previous post I described the setup of MiniShift on my laptop in order to run OpenShift for test purpose. I even pulled the Oracle Database image from the Docker Store. But the goal is to import it into OpenShift to deploy it from the Image Stream.","og_url":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/","og_site_name":"dbi Blog","article_published_time":"2018-08-14T18:39:44+00:00","og_image":[{"width":2145,"height":700,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftProject.png","type":"image\/png"}],"author":"Oracle Team","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Oracle Team","Est. reading time":"11 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/"},"author":{"name":"Oracle Team","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee"},"headline":"Oracle Database on OpenShift","datePublished":"2018-08-14T18:39:44+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/"},"wordCount":685,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftProject.png","articleSection":["Database Administration &amp; Monitoring"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/","url":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/","name":"Oracle Database on OpenShift - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftProject.png","datePublished":"2018-08-14T18:39:44+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftProject.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureOpenShiftProject.png","width":2145,"height":700},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/oracle-database-on-openshift\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Oracle Database on OpenShift"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee","name":"Oracle Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","caption":"Oracle Team"},"url":"https:\/\/www.dbi-services.com\/blog\/author\/oracle-team\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/11541","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/27"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=11541"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/11541\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media\/11542"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=11541"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=11541"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=11541"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=11541"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}