Browse Source

Añado el directorio ownCloud

main
Celestino Rey 3 years ago
parent
commit
c4f4ed70b8
16 changed files with 364 additions and 0 deletions
  1. +13
    -0
      ownCloud/Readme.md
  2. +43
    -0
      ownCloud/collabora-deployment.yaml
  3. +6
    -0
      ownCloud/creaTodo.sh
  4. +8
    -0
      ownCloud/docker-compose.yml
  5. +1
    -0
      ownCloud/entra.sh
  6. +13
    -0
      ownCloud/kustomization.yaml
  7. +68
    -0
      ownCloud/mysql-deployment.yaml
  8. +48
    -0
      ownCloud/nextcloud-deployment.yaml
  9. +4
    -0
      ownCloud/oc-namespace.yaml
  10. +44
    -0
      ownCloud/owncloud-deployment.yaml
  11. +22
    -0
      ownCloud/owncloud-service.yaml
  12. +5
    -0
      ownCloud/paraTodo.sh
  13. +54
    -0
      ownCloud/php-deployment.yaml
  14. +11
    -0
      ownCloud/pv-local-mysql.yaml
  15. +11
    -0
      ownCloud/pv-local-owncloud.yaml
  16. +13
    -0
      ownCloud/pvc-owncloud.yaml

+ 13
- 0
ownCloud/Readme.md View File

@ -0,0 +1,13 @@
# Nextcloud
para que funcione hay que dar permisos al directorio para www-data:www-data.
El nombre del directorio está definido en
nextcloud-deployment.yaml: subPath: server-data
y este está alojado dentro del directorio definido en el volumen persistente.
En micaso en
pi@k8s-router:/media/discoexterno/owncloud/server-data $

+ 43
- 0
ownCloud/collabora-deployment.yaml View File

@ -0,0 +1,43 @@
apiVersion: v1
kind: Service
metadata:
name: code-server
namespace: nextcloud
labels:
app: code
spec:
selector:
pod-label: code-server-pod
type: NodePort
ports:
- port: 9980
nodePort: 30389
targetPort: code
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: code-server
namespace: nextcloud
labels:
app: code
spec:
replicas: 1
selector:
matchLabels:
pod-label: code-server-pod
template:
metadata:
labels:
pod-label: code-server-pod
spec:
containers:
- name: code
image: collabora/code:6.4.10.10
env:
- name: extra_params
value: --o:ssl.enable=false
ports:
- containerPort: 9980
name: code

+ 6
- 0
ownCloud/creaTodo.sh View File

@ -0,0 +1,6 @@
kubectl create -f oc-namespace.yaml
kubectl create -f pv-local-owncloud.yaml
kubectl create -f pvc-owncloud.yaml
kubectl create -f owncloud-service.yaml
kubectl create -f owncloud-deployment.yaml
watch kubectl get all -n owncloud

+ 8
- 0
ownCloud/docker-compose.yml View File

@ -0,0 +1,8 @@
version: '3.1'
services:
owncloud:
# use the latest version of owncloud
image: owncloud:latest
ports:
# bind ownCloud's port 80 to port 8080
- 8080:80

+ 1
- 0
ownCloud/entra.sh View File

@ -0,0 +1 @@
kubectl exec -ti deployment.apps/owncloud -n owncloud -- /bin/bash

+ 13
- 0
ownCloud/kustomization.yaml View File

@ -0,0 +1,13 @@
secretGenerator:
- name: mysqlnc-pass
namespace: nextcloud
literals:
- password=Dsa-0213
- db_user=root
- db_passwd=Dsa-0213
resources:
- nc-namespace.yaml
- pvc-nextcloud.yaml
- mysql-deployment.yaml
- php-deployment.yaml
- nextcloud-deployment.yaml

+ 68
- 0
ownCloud/mysql-deployment.yaml View File

@ -0,0 +1,68 @@
apiVersion: v1
kind: Service
metadata:
name: nextcloud-mysql
namespace: nextcloud
labels:
app: nextcloud
spec:
ports:
- port: 3306
selector:
app: nextcloud
tier: mysql
clusterIP: None
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mysql-nc-pv-claim
namespace: nextcloud
labels:
app: nextcloud
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 20Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: nextcloud-mysql
namespace: nextcloud
labels:
app: nextcloud
spec:
selector:
matchLabels:
app: nextcloud
tier: mysql
strategy:
type: Recreate
template:
metadata:
labels:
app: nextcloud
tier: mysql
spec:
containers:
- image: mariadb
name: mysql
env:
- name: MYSQL_ROOT_PASSWORD
valueFrom:
secretKeyRef:
name: mysqlnc-pass
key: password
ports:
- containerPort: 3306
name: mysql
volumeMounts:
- name: mysql-persistent-storage
mountPath: /var/lib/mysql
volumes:
- name: mysql-persistent-storage
persistentVolumeClaim:
claimName: mysql-nc-pv-claim

+ 48
- 0
ownCloud/nextcloud-deployment.yaml View File

@ -0,0 +1,48 @@
apiVersion: v1
kind: Service
metadata:
name: nextcloud-server
namespace: nextcloud
labels:
app: nextcloud
spec:
selector:
pod-label: nextcloud-server-pod
type: NodePort
ports:
- port: 80
nodePort: 30289
targetPort: nextcloud
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: nextcloud-server
namespace: nextcloud
labels:
app: nextcloud
spec:
replicas: 1
selector:
matchLabels:
pod-label: nextcloud-server-pod
template:
metadata:
labels:
pod-label: nextcloud-server-pod
spec:
containers:
- name: nextcloud
image: nextcloud
volumeMounts:
- name: server-storage
mountPath: /var/www/html
subPath: server-data
ports:
- containerPort: 80
name: nextcloud
volumes:
- name: server-storage
persistentVolumeClaim:
claimName: dbnc-pv-claim

+ 4
- 0
ownCloud/oc-namespace.yaml View File

@ -0,0 +1,4 @@
apiVersion: v1
kind: Namespace
metadata:
name: owncloud

+ 44
- 0
ownCloud/owncloud-deployment.yaml View File

@ -0,0 +1,44 @@
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: /snap/kompose/19/kompose-linux-amd64 convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: owncloud
name: owncloud
namespace: owncloud
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: owncloud
strategy: {}
template:
metadata:
annotations:
kompose.cmd: /snap/kompose/19/kompose-linux-amd64 convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: owncloud
spec:
containers:
- image: owncloud:latest
imagePullPolicy: ""
name: owncloud
volumeMounts:
- name: server-storage
mountPath: /var/www/html/data
ports:
- containerPort: 80
resources: {}
restartPolicy: Always
serviceAccountName: ""
volumes:
- name: server-storage
persistentVolumeClaim:
claimName: dboc-pv-claim
status: {}

+ 22
- 0
ownCloud/owncloud-service.yaml View File

@ -0,0 +1,22 @@
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: /snap/kompose/19/kompose-linux-amd64 convert
kompose.version: 1.21.0 (992df58d8)
creationTimestamp: null
labels:
io.kompose.service: owncloud
name: owncloud
namespace: owncloud
spec:
type: NodePort
ports:
- name: "8080"
port: 8080
nodePort: 30289
targetPort: 80
selector:
io.kompose.service: owncloud
status:
loadBalancer: {}

+ 5
- 0
ownCloud/paraTodo.sh View File

@ -0,0 +1,5 @@
kubectl delete -f owncloud-deployment.yaml
kubectl delete -f owncloud-service.yaml
kubectl delete -f pvc-owncloud.yaml
kubectl delete -f pv-local-owncloud.yaml
kubectl delete -f oc-namespace.yaml

+ 54
- 0
ownCloud/php-deployment.yaml View File

@ -0,0 +1,54 @@
apiVersion: v1
kind: Service
metadata:
name: phpmyadmin-nextcloud
namespace: nextcloud
labels:
app: nextcloud
spec:
selector:
app: nextcloud
tier: phpmyadmin
type: NodePort
ports:
- name: phpadmin
port: 80
nodePort: 30480
targetPort: phpmyadm
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: phpmyadmin-nextcloud
namespace: nextcloud
labels:
app: nextcloud
spec:
selector:
matchLabels:
app: nextcloud
tier: phpmyadmin
strategy:
type: Recreate
template:
metadata:
labels:
app: nextcloud
tier: phpmyadmin
spec:
containers:
- name: phpmyadmin
image: phpmyadmin
ports:
- containerPort: 80
name: phpmyadm
env:
- name: PMA_HOST
value: nextcloud-mysql
- name: PMA_PORT
value: "3306"
- name: MYSQL_ROOT_PASSWORD
valueFrom:
secretKeyRef:
name: mysqlnc-pass
key: password

+ 11
- 0
ownCloud/pv-local-mysql.yaml View File

@ -0,0 +1,11 @@
apiVersion: v1
kind: PersistentVolume
metadata:
name: nc-data
spec:
capacity:
storage: 20Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/mnt/cluster/nextcloud/nextcloud-db"

+ 11
- 0
ownCloud/pv-local-owncloud.yaml View File

@ -0,0 +1,11 @@
apiVersion: v1
kind: PersistentVolume
metadata:
name: owncloud
spec:
capacity:
storage: 50Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/mnt/cluster/owncloud"

+ 13
- 0
ownCloud/pvc-owncloud.yaml View File

@ -0,0 +1,13 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: dboc-pv-claim
namespace: owncloud
labels:
app: owncloud
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 50Gi

Loading…
Cancel
Save