{"id":11127,"date":"2018-05-11T15:15:38","date_gmt":"2018-05-11T13:15:38","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/"},"modified":"2018-05-11T15:15:38","modified_gmt":"2018-05-11T13:15:38","slug":"deploying-edb-containers-in-minishiftopenshift","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/","title":{"rendered":"Deploying EDB containers in MiniShift\/OpenShift"},"content":{"rendered":"<p><b>This blog refers to an older version of EDB&#8217;s Postgres on Kubernetes offering that is no longer available.<\/b><\/p>\n<p>In this post we&#8217;ll look at how we can deploy EnterpriseDB containers in <a href=\"https:\/\/docs.openshift.org\/latest\/minishift\/\" target=\"_blank\" rel=\"noopener noreferrer\">MiniShift<\/a>. When you need to setup MiniShift have a look <a href=\"https:\/\/www.dbi-services.com\/blog\/testing-edb-containers-with-minishift\/\" target=\"_blank\" rel=\"noopener noreferrer\">here<\/a>. In this post we&#8217;ll do the setup with the MiniShift console, in a next post we&#8217;ll do the same by using the command line tools.<\/p>\n<p><!--more--><\/p>\n<p>As a few containers will be running at the end MiniShift got more resources when it was started:<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1\">\ndwe@dwe:\/opt$ minishift delete\ndwe@dwe:\/opt$ minishift start --cpus 4 --disk-size 30GB --memory 4GB\n<\/pre>\n<p>Once MiniShift is up and running open the MiniShift console and login as developer\/admin:<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1\">\ndwe@dwe:\/opt$ minishift console\n<\/pre>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_001-8.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_001-8.png\" alt=\"Selection_001\" width=\"1895\" height=\"716\" class=\"aligncenter size-full wp-image-23263\" \/><\/a><\/p>\n<p>The first thing we need to do is to grant the necessary permissions after we stepped into &#8220;My Project&#8221;:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_002-5.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_002-5.png\" alt=\"Selection_002\" width=\"1887\" height=\"851\" class=\"aligncenter size-full wp-image-23265\" \/><\/a><\/p>\n<p>The permission are in Resources-&gt;Membership. Add admin,edit and view to the default account:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_004-5.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_004-5.png\" alt=\"Selection_004\" width=\"1885\" height=\"613\" class=\"aligncenter size-full wp-image-23277\" \/><\/a><\/p>\n<p>For accessing the EnterpriseDB container repository a new secret needs to be created which contains the connection details. Secrets are under Resources-&gt;Secrets:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_005-4.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_005-4.png\" alt=\"Selection_005\" width=\"1915\" height=\"616\" class=\"aligncenter size-full wp-image-23280\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_006-3.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_006-3.png\" alt=\"Selection_006\" width=\"1914\" height=\"796\" class=\"aligncenter size-full wp-image-23281\" \/><\/a><\/p>\n<p>As databases are happy when they can store their data on persistent storage we need a volume. Volumes can be created under &#8220;Storage&#8221;:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_0071.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_0071.png\" alt=\"Selection_007\" width=\"1909\" height=\"588\" class=\"aligncenter size-full wp-image-23284\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_0081.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_0081.png\" alt=\"Selection_008\" width=\"1881\" height=\"661\" class=\"aligncenter size-full wp-image-23285\" \/><\/a><\/p>\n<p>Now we need a <a href=\"https:\/\/docs.docker.com\/registry\/deploying\/\" target=\"_blank\" rel=\"noopener noreferrer\">local registry<\/a> where we can push the EnterpriseDB containers to:<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1\">\ndwe@dwe:~$ minishift ssh\n                        ##         .\n                  ## ## ##        ==\n               ## ## ## ## ##    ===\n           \/\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\\___\/ ===\n      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ \/  ===- ~~~\n           \\______ o           __\/\n             \\    \\         __\/\n              \\____\\_______\/\n _                 _   ____     _            _\n| |__   ___   ___ | |_|___ \\ __| | ___   ___| | _____ _ __\n| '_ \\ \/ _ \\ \/ _ \\| __| __) \/ _` |\/ _ \\ \/ __| |\/ \/ _ \\ '__|\n| |_) | (_) | (_) | |_ \/ __\/ (_| | (_) | (__|   &lt;  __\/ |\n|_.__\/ \\___\/ \\___\/ \\__|_____\\__,_|\\___\/ \\___|_|\\_\\___|_|\nBoot2Docker version 1.12.6, build HEAD : 5ab2289 - Wed Jan 11 03:20:40 UTC 2017\nDocker version 1.12.6, build 78d1802\ndocker@minishift:~$ docker run -d -p 5000:5000 --restart=always --name registry registry:2\nUnable to find image &#039;registry:2&#039; locally\n2: Pulling from library\/registry\n81033e7c1d6a: Pull complete \n...\nStatus: Downloaded newer image for registry:2\n14e85f4e2a36e727a0584803e49bbd690ffdb092c02238a241bd2ad003680625\ndocker@minishift:~$ docker login containers.enterprisedb.com\nUsername: dbi-services\nPassword: \nLogin Succeeded\ndocker@minishift:~$ docker pull containers.enterprisedb.com\/edb\/edb-as:v10.3\nv10.3: Pulling from test\/edb-as\nd9aaf4d82f24: Pulling fs layer \n...\nStatus: Downloaded newer image for containers.enterprisedb.com\/edb\/edb-as:v10.3\ndocker@minishift:~$ docker tag containers.enterprisedb.com\/edb\/edb-as:v10.3 localhost:5000\/edb\/edb-as:v10.3\ndocker@minishift:~$ docker push localhost:5000\/edb\/edb-as:v10.3\nThe push refers to a repository [localhost:5000\/edb\/edb-as]\n274db5c4ff47: Preparing \n...\ndocker@minishift:~$ docker pull containers.enterprisedb.com\/edb\/edb-pgpool:v3.5\nv3.5: Pulling from test\/edb-pgpool\n...\ndocker@minishift:~$ docker tag containers.enterprisedb.com\/edb\/edb-pgpool:v3.5 localhost:5000\/edb\/edb-pgpool:v3.5\ndocker@minishift:~$ docker push localhost:5000\/edb\/edb-pgpool:v3.5\nThe push refers to a repository [localhost:5000\/edb\/edb-pgpool]\n8a7df26eb139: Pushed \n...\n<\/pre>\n<p>This is all what is required for the preparation. The next step is to import to the <a href=\"https:\/\/docs.openshift.org\/latest\/dev_guide\/templates.html\" target=\"_blank\" rel=\"noopener noreferrer\">template<\/a> which specifies the setup. For this little demo we&#8217;ll use this one:<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1\">\napiVersion: v1\nkind: Template\nmetadata:\n   name: edb-as10-0\n   annotations:\n    description: \"Standard EDB Postgres Advanced Server 10.0 Deployment Config\"\n    tags: \"database,epas,postgres,postgresql\"\n    iconClass: \"icon-postgresql\"\nobjects:\n- apiVersion: v1 \n  kind: Service\n  metadata:\n    name: ${DATABASE_NAME}-service \n    labels:\n      role: loadbalancer\n      cluster: ${DATABASE_NAME}\n  spec:\n    selector:                  \n      lb: ${DATABASE_NAME}-pgpool\n    ports:\n    - name: lb \n      port: ${PGPORT}\n      targetPort: 9999\n    sessionAffinity: None\n    type: LoadBalancer\n- apiVersion: v1 \n  kind: DeploymentConfig\n  metadata:\n    name: ${DATABASE_NAME}-pgpool\n  spec:\n    replicas: 2\n    selector:\n      lb: ${DATABASE_NAME}-pgpool\n    strategy:\n      resources: {}\n      rollingParams:\n        intervalSeconds: 1\n        maxSurge: 25%\n        maxUnavailable: 25%\n        timeoutSeconds: 600\n        updatePeriodSeconds: 1\n      type: Rolling\n    template:\n      metadata:\n        labels:\n          lb: ${DATABASE_NAME}-pgpool\n          role: queryrouter\n          cluster: ${DATABASE_NAME}\n      spec:\n        containers:\n        - name: edb-pgpool\n          env:\n          - name: DATABASE_NAME\n            value: ${DATABASE_NAME} \n          - name: PGPORT\n            value: ${PGPORT} \n          - name: REPL_USER\n            value: ${REPL_USER} \n          - name: ENTERPRISEDB_PASSWORD\n            value: 'postgres' \n          - name: REPL_PASSWORD\n            value: 'postgres' \n          - name: ACCEPT_EULA\n            value: ${ACCEPT_EULA}\n          image: containers.enterprisedb.com\/edb\/edb-pgpool:v3.5\n          imagePullPolicy: IfNotPresent\n          readinessProbe:\n            exec:\n              command:\n              - \/var\/lib\/edb\/testIsReady.sh\n            initialDelaySeconds: 60\n            timeoutSeconds: 5\n    triggers:\n    - type: ConfigChange\n- apiVersion: v1\n  kind: DeploymentConfig\n  metadata:\n    name: ${DATABASE_NAME}-as10-0\n  spec:\n    replicas: 1\n    selector:\n      db: ${DATABASE_NAME}-as10-0 \n    strategy:\n      resources: {}\n      rollingParams:\n        intervalSeconds: 1\n        maxSurge: 25%\n        maxUnavailable: 25%\n        timeoutSeconds: 600\n        updatePeriodSeconds: 1\n      type: Rolling\n    template:\n      metadata:\n        creationTimestamp: null\n        labels:\n          db: ${DATABASE_NAME}-as10-0 \n          cluster: ${DATABASE_NAME}\n      spec:\n        containers:\n        - name: edb-as10 \n          env:\n          - name: DATABASE_NAME \n            value: ${DATABASE_NAME} \n          - name: DATABASE_USER \n            value: ${DATABASE_USER} \n          - name: DATABASE_USER_PASSWORD\n            value: 'postgres' \n          - name: ENTERPRISEDB_PASSWORD\n            value: 'postgres' \n          - name: REPL_USER\n            value: ${REPL_USER} \n          - name: REPL_PASSWORD\n            value: 'postgres' \n          - name: PGPORT\n            value: ${PGPORT} \n          - name: RESTORE_FILE\n            value: ${RESTORE_FILE} \n          - name: LOCALEPARAMETER\n            value: ${LOCALEPARAMETER}\n          - name: CLEANUP_SCHEDULE\n            value: ${CLEANUP_SCHEDULE}\n          - name: EFM_EMAIL\n            value: ${EFM_EMAIL}\n          - name: NAMESERVER\n            value: ${NAMESERVER}\n          - name: POD_NAMESPACE\n            valueFrom:\n              fieldRef:\n                fieldPath: metadata.namespace\n          - name: POD_NODE\n            valueFrom:\n              fieldRef:\n                fieldPath: spec.nodeName \n          - name: POD_IP\n            valueFrom:\n              fieldRef:\n                fieldPath: status.podIP \n          - name: ACCEPT_EULA\n            value: ${ACCEPT_EULA}\n          image: containers.enterprisedb.com\/edb\/edb-as:v10.3\n          imagePullPolicy: IfNotPresent \n          readinessProbe:\n            exec:\n              command:\n              - \/var\/lib\/edb\/testIsReady.sh\n            initialDelaySeconds: 60\n            timeoutSeconds: 5 \n          livenessProbe:\n            exec:\n              command:\n              - \/var\/lib\/edb\/testIsHealthy.sh\n            initialDelaySeconds: 600 \n            timeoutSeconds: 60 \n          ports:\n          - containerPort: ${PGPORT} \n          volumeMounts:\n          - name: ${PERSISTENT_VOLUME}\n            mountPath: \/edbvolume\n        dnsPolicy: ClusterFirst\n        restartPolicy: Always\n        volumes:\n        - name: ${PERSISTENT_VOLUME}\n          persistentVolumeClaim:\n            claimName: ${PERSISTENT_VOLUME_CLAIM}\n    triggers:\n    - type: ConfigChange\nparameters:\n- name: DATABASE_NAME\n  displayName: Database Name\n  description: Name of Postgres database (leave edb for default)\n  value: 'edb'\n- name: DATABASE_USER\n  displayName: Default database user (leave enterprisedb for default)\n  description: Default database user\n  value: 'enterprisedb'\n- name: REPL_USER\n  displayName: Repl user\n  description: repl database user\n  value: 'repl'\n- name: PGPORT\n  displayName: Database Port\n  description: Database Port (leave 5444 for default)\n  value: \"5444\"\n- name: LOCALEPARAMETER\n  displayName: Locale\n  description: Locale of database\n  value: ''\n- name: CLEANUP_SCHEDULE\n  displayName: Host Cleanup Schedule\n  description: Standard cron schedule - min (0 - 59), hour (0 - 23), day of month (1 - 31), month (1 - 12), day of week (0 - 6) (0 to 6 are Sunday to Saturday, or use names; 7 is Sunday, the same as 0). Leave it empty if you dont want to cleanup.\n  value: '0:0:*:*:*'\n- name: EFM_EMAIL\n  displayName: Email\n  description: Email for EFM\n  value: 'none@none.com'\n- name: NAMESERVER\n  displayName: Name Server for Email\n  description: Name Server for Email\n  value: '8.8.8.8'\n- name: PERSISTENT_VOLUME\n  displayName: Persistent Volume\n  description: Persistent volume name\n  value: ''\n  required: true\n- name: PERSISTENT_VOLUME_CLAIM \n  displayName: Persistent Volume Claim\n  description: Persistent volume claim name\n  value: ''\n  required: true\n- name: RESTORE_FILE\n  displayName: Restore File\n  description: Restore file location\n  value: ''\n- name: ACCEPT_EULA\n  displayName: Accept end-user license agreement (leave 'Yes' for default)\n  description: Indicates whether user accepts the end-user license agreement\n  value: 'Yes'\n  required: true\n<\/pre>\n<p>For importing that into OpenShift go to &#8220;Overview&#8221; and select &#8220;Import YAML\/JSON&#8221;:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_0102.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_0102.png\" alt=\"Selection_010\" width=\"1909\" height=\"778\" class=\"aligncenter size-full wp-image-23292\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_0111.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_0111.png\" alt=\"Selection_011\" width=\"1897\" height=\"755\" class=\"aligncenter size-full wp-image-23293\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_012-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_012-1.png\" alt=\"Selection_012\" width=\"1906\" height=\"752\" class=\"aligncenter size-full wp-image-23294\" \/><\/a><\/p>\n<p>This imports the template but does not process it right now. When you go back to &#8220;Overview&#8221; you should see a new template which you can provision:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_013-2.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_013-2.png\" alt=\"Selection_013\" width=\"1916\" height=\"543\" class=\"aligncenter size-full wp-image-23296\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_014-3.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_014-3.png\" alt=\"Selection_014\" width=\"1915\" height=\"855\" class=\"aligncenter size-full wp-image-23297\" \/><\/a><\/p>\n<p>Selecting the new template brings you to the specification of the variables. The only bits you need to adjust are the values for the <a href=\"https:\/\/docs.openshift.com\/container-platform\/3.9\/dev_guide\/persistent_volumes.html\" target=\"_blank\" rel=\"noopener noreferrer\">volume and the volume claim<\/a>:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_015-3.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_015-3.png\" alt=\"Selection_015\" width=\"1919\" height=\"826\" class=\"aligncenter size-full wp-image-23298\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_0161.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_0161.png\" alt=\"Selection_016\" width=\"1902\" height=\"785\" class=\"aligncenter size-full wp-image-23300\" \/><\/a><\/p>\n<p>A few moments later the EDB containers are up and running:<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1\">\ndwe@dwe:~$ oc get pods\nNAME                 READY     STATUS    RESTARTS   AGE\nedb-as10-0-1-fdr5j   1\/1       Running   0          1m\nedb-pgpool-1-9twmc   1\/1       Running   0          1m\nedb-pgpool-1-m5x44   1\/1       Running   0          1m\n<\/pre>\n<p>Current there are two pgpool instances and one database instance container. You can double check that the instance is really running with:<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1\">\ndwe@dwe:~$ oc rsh edb-as10-0-1-fdr5j\nsh-4.2$ psql postgres\npsql.bin (10.3.8)\nType \"help\" for help.\n\npostgres=# select version();\n                                                   version                                                   \n-------------------------------------------------------------------------------------------------------------\n EnterpriseDB 10.3.8 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-16), 64-bit\n(1 row)\n<\/pre>\n<p>Going back to the &#8220;Overview&#8221; page in the console shows the same information:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_019-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_019-1.png\" alt=\"Selection_019\" width=\"1888\" height=\"563\" class=\"aligncenter size-full wp-image-23303\" \/><\/a><\/p>\n<p>In the next post we&#8217;ll scale up the deployment by adding two replicas and configure access from outside the cluster.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This blog refers to an older version of EDB&#8217;s Postgres on Kubernetes offering that is no longer available. In this post we&#8217;ll look at how we can deploy EnterpriseDB containers in MiniShift. When you need to setup MiniShift have a look here. In this post we&#8217;ll do the setup with the MiniShift console, in a [&hellip;]<\/p>\n","protected":false},"author":28,"featured_media":11143,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[229],"tags":[762,601,713,586],"type_dbi":[],"class_list":["post-11127","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-database-administration-monitoring","tag-containers","tag-docker","tag-enterprisedb","tag-postegresql"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.8 (Yoast SEO v28.8) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Deploying EDB containers in MiniShift\/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\/deploying-edb-containers-in-minishiftopenshift\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Deploying EDB containers in MiniShift\/OpenShift\" \/>\n<meta property=\"og:description\" content=\"This blog refers to an older version of EDB&#8217;s Postgres on Kubernetes offering that is no longer available. In this post we&#8217;ll look at how we can deploy EnterpriseDB containers in MiniShift. When you need to setup MiniShift have a look here. In this post we&#8217;ll do the setup with the MiniShift console, in a [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2018-05-11T13:15:38+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_016-3.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1917\" \/>\n\t<meta property=\"og:image:height\" content=\"342\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Open source 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=\"Open source Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 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\\\/deploying-edb-containers-in-minishiftopenshift\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/deploying-edb-containers-in-minishiftopenshift\\\/\"},\"author\":{\"name\":\"Open source Team\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/4bae5e5dd8c7d48edbd948772b49b202\"},\"headline\":\"Deploying EDB containers in MiniShift\\\/OpenShift\",\"datePublished\":\"2018-05-11T13:15:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/deploying-edb-containers-in-minishiftopenshift\\\/\"},\"wordCount\":373,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/deploying-edb-containers-in-minishiftopenshift\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/04\\\/Selection_016-3.png\",\"keywords\":[\"Containers\",\"Docker\",\"enterprisedb\",\"PostegreSQL\"],\"articleSection\":[\"Database Administration &amp; Monitoring\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/deploying-edb-containers-in-minishiftopenshift\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/deploying-edb-containers-in-minishiftopenshift\\\/\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/deploying-edb-containers-in-minishiftopenshift\\\/\",\"name\":\"Deploying EDB containers in MiniShift\\\/OpenShift - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/deploying-edb-containers-in-minishiftopenshift\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/deploying-edb-containers-in-minishiftopenshift\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/04\\\/Selection_016-3.png\",\"datePublished\":\"2018-05-11T13:15:38+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/4bae5e5dd8c7d48edbd948772b49b202\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/deploying-edb-containers-in-minishiftopenshift\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/deploying-edb-containers-in-minishiftopenshift\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/deploying-edb-containers-in-minishiftopenshift\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/04\\\/Selection_016-3.png\",\"contentUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/04\\\/Selection_016-3.png\",\"width\":1917,\"height\":342},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/deploying-edb-containers-in-minishiftopenshift\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Deploying EDB containers in MiniShift\\\/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\\\/4bae5e5dd8c7d48edbd948772b49b202\",\"name\":\"Open source Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/eb4fb12e386e8c41fdef0733e8114594cf2653e4f55e9fa2161442b8eaf3f657?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/eb4fb12e386e8c41fdef0733e8114594cf2653e4f55e9fa2161442b8eaf3f657?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/eb4fb12e386e8c41fdef0733e8114594cf2653e4f55e9fa2161442b8eaf3f657?s=96&d=mm&r=g\",\"caption\":\"Open source Team\"},\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/author\\\/open-source-team\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Deploying EDB containers in MiniShift\/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\/deploying-edb-containers-in-minishiftopenshift\/","og_locale":"en_US","og_type":"article","og_title":"Deploying EDB containers in MiniShift\/OpenShift","og_description":"This blog refers to an older version of EDB&#8217;s Postgres on Kubernetes offering that is no longer available. In this post we&#8217;ll look at how we can deploy EnterpriseDB containers in MiniShift. When you need to setup MiniShift have a look here. In this post we&#8217;ll do the setup with the MiniShift console, in a [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/","og_site_name":"dbi Blog","article_published_time":"2018-05-11T13:15:38+00:00","og_image":[{"width":1917,"height":342,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_016-3.png","type":"image\/png"}],"author":"Open source Team","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Open source Team","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/"},"author":{"name":"Open source Team","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/4bae5e5dd8c7d48edbd948772b49b202"},"headline":"Deploying EDB containers in MiniShift\/OpenShift","datePublished":"2018-05-11T13:15:38+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/"},"wordCount":373,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_016-3.png","keywords":["Containers","Docker","enterprisedb","PostegreSQL"],"articleSection":["Database Administration &amp; Monitoring"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/","url":"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/","name":"Deploying EDB containers in MiniShift\/OpenShift - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_016-3.png","datePublished":"2018-05-11T13:15:38+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/4bae5e5dd8c7d48edbd948772b49b202"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_016-3.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_016-3.png","width":1917,"height":342},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/deploying-edb-containers-in-minishiftopenshift\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Deploying EDB containers in MiniShift\/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\/4bae5e5dd8c7d48edbd948772b49b202","name":"Open source Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/eb4fb12e386e8c41fdef0733e8114594cf2653e4f55e9fa2161442b8eaf3f657?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/eb4fb12e386e8c41fdef0733e8114594cf2653e4f55e9fa2161442b8eaf3f657?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/eb4fb12e386e8c41fdef0733e8114594cf2653e4f55e9fa2161442b8eaf3f657?s=96&d=mm&r=g","caption":"Open source Team"},"url":"https:\/\/www.dbi-services.com\/blog\/author\/open-source-team\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/11127","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\/28"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=11127"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/11127\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media\/11143"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=11127"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=11127"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=11127"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=11127"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}