Browse Source

Actualización de README

politica
Celestino Rey 9 months ago
parent
commit
357a023d43
1 changed files with 81 additions and 14 deletions
  1. +81
    -14
      ReyMotaAppsRancher/README.md

+ 81
- 14
ReyMotaAppsRancher/README.md View File

@ -1,45 +1,112 @@
# Instalación # Instalación
## Versión para kubernetes y Rancher
### Estructura de carpetas en K8S
Desde el directorio K8S ejecutar make (esto hace todo: la imagen, para los pods y los lanza otra vez)
.
├── ConfigMaps
│   ├── env-prod-configmap-local.yaml
│   ├── env-prod-configmap.yaml
│   └── env-prod-db-configmap.yaml
├── Deployments
│   ├── db-deployment.yaml
│   ├── nginx-deployment.yaml
│   └── reymota-deployment.yaml
├── Makefile
├── namespace.yaml
├── PVC
│   ├── postgres-data-persistentvolumeclaim.yaml
│   ├── reymota-prod-persistentvolumeclaim.yaml
│   └── static-volume-persistentvolumeclaim.yaml
├── reg-secret.yaml
├── Services
│   ├── db-service.yaml
│   ├── nginx-service.yaml
│   ├── reymota-ingress.yaml
│   └── reymota-service.yaml
└── Shells
├── borraNS.sh
├── entraPsql.sh
└── entra.sh
La primera vez, hay que entrar en el pod de vehículos con 'entra.sh' y
## Creación de Persistent Volume Claims
python manage.py createsuperuser
En Rancher está instalado el operador longhorn que se encarga de crear los Persistent Volumes automáticamente cuando se crea una PVC
La primera vez hay que crear las PVC. Si la aplicación cambia, no haría falta volver a crearlas, a no ser que los cambios afecten mucho a la estructura de las base de datos.
python manage.py makemigrations
kubectl create -f postgres-data-persistentvolumeclaim.yaml
kubectl create -f reymota-prod-persistentvolumeclaim.yaml
kubectl create -f static-volume-persistentvolumeclaim.yaml
## Despliegue de la aplicación
make clean ; make install
Si la aplicación hubiese cambiado y tuvieramos que crear una nueva imagen, entonces
make
esto hace todo: la imagen, para los pods y los lanza otra vez
# Migraciones
La primera vez, hay que entrar en el pod de vehículos con 'entra.sh', desde el directorio K8S/Shells y
python manage.py makemigrations lyrics
python manage.py makemigrations reymotausers
python manage.py makemigrations repostajes
python manage.py migrate python manage.py migrate
## Comprobar la base de datos ## Comprobar la base de datos
Con la shell entraPsql.sh:
Con la shell K8S/Shells/entraPsql.sh:
\l para listar las BD \l para listar las BD
\c reymota para usar nuestra db \c reymota para usar nuestra db
\dt para ver las tablas \dt para ver las tablas
# De dónde cogí ideas
# Importar datos
Si tenemos un fichero json con los datos de otra instalación, podemos importarlo.
## Descargar los datos
Primero tendríamos que descargar los datos a través del api de la otra instalación.
curl https://reymota.es/usuarios/api/usuarios/ > mediafiles/usuarios.json
curl https://reymota.es/lyrics/api/artistas/ > mediafiles/artistas.json
curl https://reymota.es/lyrics/api/albumes/ > mediafiles/albumes.json
curl https://reymota.es/lyrics/api/canciones/ > mediafiles/canciones.json
https://learndjango.com/tutorials/django-login-and-logout-tutorial
curl https://reymota.es/repostajes/api/vehiculos/ > mediafiles/vehiculos.json
curl https://reymota.es/repostajes/api/repostajes/ > mediafiles/repostajes.json
## Importar los datos
Username: {{ user.username }}
Es importante hacerlo en este orden ya que hay dependencias entre las tablas
User Full name: {{ user.get_full_name }}
./manage.py importar_usuarios mediafiles/usuarios.json
User Group: {{ user.groups.all.0 }}
./manage.py importar_artistas mediafiles/artistas.json
./manage.py importar_albumes mediafiles/albumes.json
./manage.py importar_canciones mediafiles/canciones.json
Email: {{ user.email }}
./manage.py importar_vehiculos mediafiles/vehiculos.json
./manage.py importar_repostajes mediafiles/repostajes.json
Session Started at: {{ user.last_login }}
# Crear datos
Si no tenemos datos y vamos a crear una instancia de cero, lo primero que hay que hacer es crear un superusuario
## Para funcionar con gunicorn y nginx
https://testdriven.io/blog/dockerizing-django-with-postgres-gunicorn-and-nginx/
./manage.py createsuperuser
A continuación, desde el interfaz web, se crean los datos.
# Miscelánea
## Cambiar la secuencia de lo sid ## Cambiar la secuencia de lo sid


Loading…
Cancel
Save