7b546a1d2f26e4d80c61b79f5ebd196e5cc8327d
Shop
Desarrollo
Establecer variables de entorno
A partir del archivo .env.example, creamos un archivo .env en el que podemos establecer las
variables de entorno.
Instalar dependencias
pip install -r requirements.test.txt
Lanzar migraciones
python manage.py migrate
Arrancar servidor
python manage.py runserver
Tailwind
python manage.py tailwind start
Tareas de Celery
celery -A config worker -B -l debug
Pruebas con pytest
pytest --cov
Docker
Descarga
docker pull ghcr.io/pablo-moreno/shoppy
Construir imagen
docker build -t shoppy .
Crear contenedor
API
docker run -it --rm -p 8000:80 -e RUN_SERVER=TRUE --env-file=.env shoppy_api
Tareas en segundo plano
docker run -it --rm -p 8000:80 -e RUN_CELERY=TRUE --env-file=.env shoppy_tasks
Variables de entorno
Puedes crear un archivo .env con las siguientes variables de entorno.
| Variable | Default value | Comments |
|---|---|---|
| SECRET_KEY | secret key | Clave de encriptación |
| DEBUG | TRUE | Modo de desarrollo activo |
| DATABASE_URL | sqlite:///db.sqlite3 | URL de conexión a base de datos |
| STATIC_ROOT | static | Carpeta de estáticos |
| MEDIA_ROOT | media | Carpeta de archivos media |
| REDIS_HOST | redis | Dirección de servidor Redis |
| REDIS_PORT | 6379 | Puerto de Redis |
| PAGE_SIZE | 20 | Tamaño de paginación |
| ALLOWED_HOSTS | * | Hosts permitidos (CORS) |
| CELERY_BROKER_URL | redis://172.17.0.1:6379/0 | Url de conexión para celery |
| S3_ENABLED | FALSE | Activado protocolo S3 |
| S3_HOST | URL de servidor S3 | |
| AWS_ACCESS_KEY_ID | Clave de acceso de S3 | |
| AWS_SECRET_ACCESS_KEY | Clave secreta de S3 | |
| AWS_STORAGE_BUCKET_NAME | Nombre del bucket de S3 | |
| AWS_S3_ENDPOINT_URL | Endpoint de S3 |
Depurar pagos TPV con Redsys
Para poder usar el TPV en la máquina local necesitaremos instalar y configurar ngrok,
siguiendo los pasos que nos indican en la web al crear nuestra cuenta
Arrancaremos ngrok con el siguiente comando:
ngrok http http://localhost:8000
Ngrok nos dará una URL accesible desde fuera, que tendremos que guardar en los Ajustes de la tienda
como Dominio del TPV
Tendremos que establecer también los siguientes ajustes de la cuenta con estos valores para desarrollo.
| Variable | Valor para desarrollo | Descripción |
|---|---|---|
redsys_shared_secret |
sq7HjrUOBfKmC576ILgskD5srU870gJ7 | Clave privada de Redsys |
merchant_code |
999008881 | Código de negocio de Redsys |
terminal |
001 | Terminal de Redsys |
currency_code |
978 | Código de moneda de Redsys |
tpv_domain |
Dominio del TPV para redirección de Redsys (en local lo obtenemos por ngrok) |
Description
Languages
JavaScript
40.7%
Python
37.8%
HTML
12.3%
CSS
9%