Skip to content

Instantly share code, notes, and snippets.

@oivoodoo
Created September 28, 2017 08:09
Show Gist options
  • Save oivoodoo/f641bb528cac1bea49486f8388f67d1f to your computer and use it in GitHub Desktop.
Save oivoodoo/f641bb528cac1bea49486f8388f67d1f to your computer and use it in GitHub Desktop.
k8s deploy for odoo
---
apiVersion: v1
kind: Service
metadata:
name: odoo-db
labels:
app: odoo-shop
spec:
ports:
- port: 5432
selector:
app: odoo-shop
tier: backend
type: NodePort
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: odoo-db
labels:
app: odoo-shop
spec:
strategy:
type: Recreate
template:
metadata:
labels:
app: odoo-shop
tier: backend
spec:
containers:
- image: postgres:9.4
name: odoo-db
env:
- name: POSTGRES_USER
value: odoo
- name: POSTGRES_PASSWORD
value: odoo
- name: PGDATA
value: /var/lib/postgresql/data/pgdata
ports:
- containerPort: 5432
name: odoo-db
volumeMounts:
- name: odoo-db-pvc
mountPath: /var/lib/postgresql/data
volumes:
- name: odoo-db-pvc
emptyDir: {}
---
apiVersion: v1
kind: Service
metadata:
name: odoo-shop
labels:
app: odoo-shop
spec:
ports:
- name: http
port: 80
targetPort: 8069
selector:
app: odoo-shop
---
kind: PersistentVolume
apiVersion: v1
metadata:
name: odoo-addons
labels:
type: local
spec:
storageClassName: manual
capacity:
storage: 1Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/mnt/extra-addons"
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: odoo-addons-claim
spec:
storageClassName: manual
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: odoo-shop
labels:
app: odoo-shop
spec:
strategy:
type: Recreate
template:
metadata:
labels:
app: odoo-shop
tier: frontend
spec:
containers:
- image: odoo:10.0
name: odoo-shop
env:
- name: USER
value: odoo
- name: PASSWORD
value: odoo
- name: HOST
value: odoo-db
securityContext:
privileged: true
runAsUser: 0
ports:
- containerPort: 8069
name: odoo
volumeMounts:
- name: odoo-pvc
mountPath: /var/lib/odoo
- name: odoo-addons-space
mountPath: /mnt/extra-addons
volumes:
- name: odoo-pvc
emptyDir: {}
- name: odoo-addons-space
persistentVolumeClaim:
claimName: odoo-addons-claim
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: odoo
annotations:
kubernetes.io/ingress.class: "nginx"
kubernetes.io/tls-acme: "true"
ingress.kubernetes.io/rewrite-target: "/"
spec:
tls:
- hosts:
- odoo.rubyforce.co
secretName: odoo-tls
rules:
- host: odoo.rubyforce.co
http:
paths:
- path: /
backend:
serviceName: odoo-shop
servicePort: http
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment