repo copiado desde local
This commit is contained in:
81
README.md
81
README.md
@@ -1,31 +1,72 @@
|
||||
# sprpcb
|
||||
|
||||
Sistema Plurinacional de Registro del Patrimonio Cultural Boliviano
|
||||
Sistema Plurinacional de Registro del Patrimonio Cultural Boliviano.
|
||||
|
||||
Modo de desarrollo en un servidor en modo tradicional (no contenedores). Clone este repositorio o descargue el script de instalacion de software requerido para un servidor Ubuntu.
|
||||
|
||||
# Nginx y Let’s Encrypt con Docker Compose
|
||||
### Guía rápida de instalación
|
||||
para mas detalles, consulte la documentación oficial de [ArchesProject](https://arches.readthedocs.io/en/stable/installing/)
|
||||
|
||||
Este enfoque obtiene y renueva automáticamente los certificados TLS [Let's Encrypt](https://letsencrypt.org/) y configura el acceso HTTPS en Nginx para su dominio.
|
||||
```bash
|
||||
#cd ~
|
||||
wget https://gitea.patrimonio.org.bo/sysadmin/sprpcb/raw/branch/dev-7_6_x-nodocker/instalar_arches7.6_ubuntu.sh
|
||||
source ./instalar_arches7.6_ubuntu.sh
|
||||
python3.12 -m venv ENV
|
||||
source ENV/bin/activate
|
||||
python -m pip install --upgrade pip
|
||||
pip install arches==7.6.19
|
||||
arches-admin startproject mi_proyecto
|
||||
```
|
||||
|
||||
Hay 3 contenedores que trabajan para ello utilizando docker compose:
|
||||
### Configuración del idioma español
|
||||
|
||||
* Nginx, genera certificados autofirmados "dummy" para obtener los certificados de Let's Encrypt
|
||||
* Certbot - obtiene y renueva los certificados, espera hasta que Nginx esté listo para obtener los certificados
|
||||
* Cron - cada día renueva los certificados, si verifica que están vencidos, arranca Cerbot para renovarlos, luego reinicia Nginx
|
||||
|
||||
Para personalizar el manejo de certificados debe cambiar estos parámetros en el archivo `.env`. Por ejemplo:
|
||||
|
||||
```properties
|
||||
DOMAINS=patrimonio.org.bo
|
||||
CERTBOT_EMAILS=admin@patrimonio.org.bo info@patrimonio.org.bo
|
||||
CERTBOT_TEST_CERT=0
|
||||
CERTBOT_RSA_KEY_SIZE=4096
|
||||
```shell
|
||||
# Crear carpetas para los archivos de idioma
|
||||
mkdir -p ~/ENV/lib/python3.12/site-packages/arches/locale/es/LC_MESSAGES
|
||||
cd ~/ENV/lib/python3.12/site-packages/arches/locale/es/LC_MESSAGES
|
||||
# Descargar los archivos necesarios del repositorio
|
||||
wget https://gitea.patrimonio.org.bo/sysadmin/sprpcb/raw/branch/prod-7_6_x/arches/es/LC_MESSAGES/django.*
|
||||
cd ~
|
||||
```
|
||||
|
||||
Configuration parameters:
|
||||
### Crear carpetas para las extensiones adicionales
|
||||
|
||||
* `DOMAINS` - lista de dominios separadas por espacio para el manejo de certificados
|
||||
* `CERTBOT_EMAILS` - lista de emails separada por espacios para los dominios correspondientes. Si no se especifica, el sistema trabajara con el parámetro `--register-unsafely-without-email`
|
||||
* `CERTBOT_TEST_CERT` - usa el servidor de prueba de Let's Encrypt staging (`--test-cert`)
|
||||
```bash
|
||||
# cd ~/mi_proyecto/mi_proyecto
|
||||
mkdir -p templates/views/components/plugins
|
||||
mkdir -p media/js/views/components/plugins
|
||||
```
|
||||
### Editar o añadir los siguientes parámetros del archivo de configuración ~/mi_proyecto/mi_proyecto/settings.py
|
||||
```properties
|
||||
#...
|
||||
PUBLIC_SERVER_ADDRESS = "http://IP_LOCAL:8000/" # IP_LOCAL es la ip del servidor
|
||||
#...
|
||||
ENABLE_USER_SIGNUP = False
|
||||
PERMISSION_FRAMEWORK = "arches_default_deny.ArchesDefaultDenyPermissionFramework"
|
||||
#...
|
||||
LANGUAGE_CODE = "es"
|
||||
|
||||
Let's Encrypt tiene límites de velocidad. Por lo tanto, durante las pruebas es mejor usar un servidor de prueba configurando `CERTBOT_TEST_CERT=1` (valor predeterminado). Cuando esté listo para usar el servidor Let's Encrypt de producción,t `CERTBOT_TEST_CERT=0`.
|
||||
# list of languages...
|
||||
#...
|
||||
LANGUAGES = [
|
||||
# ('de', _('German')),
|
||||
# ('en', _('English')),
|
||||
# ('en-gb', _('British English')),
|
||||
('es', _('Spanish')),
|
||||
]
|
||||
```
|
||||
### Comandos finales para completar una instalación de arches en blanco
|
||||
```bash
|
||||
# se recomienda reiniciar el servidor y reconectar por ssh
|
||||
# 1ra terminal:
|
||||
source ENV/bin/activate
|
||||
cd ~/mi_proyecto
|
||||
python manage.py setup_db
|
||||
python manage.py runserver IP_LOCAL:8000
|
||||
# Conectar un segundo terminal al servidor de manera paralela
|
||||
# 2da terminal:
|
||||
source ENV/bin/activate
|
||||
cd ~/mi_proyecto/mi_proyecto
|
||||
npm run build_development
|
||||
```
|
||||
Finalmente, comprobar en un navegador web: http://IP_LOCAL:8000
|
||||
Reference in New Issue
Block a user