Files
peeringdb-peeringdb/Ctl/dev/docker-compose.yml
Stefan Pratter 0784265f80 Support 202308 test performance (#1440)
* Sorting icon from google material icons #1419
Manual IX-F import request queue can get stuck #1182
IX Object Creation Per Policy #1364
Creating a new network not possible #1401
IX-F Importer: Cosmetic issue with "resolved" emails and double-slashes in URLs after the FQDN #1334
Add a "Delete Affiliation" button/option to the profile #1226
Redis and negative caching #1431

* linting

* update gen_docs to use py3.11

* fix issue with api docs schema regen

* regen apidoc schema and db schema graph

* fix username validation for social media

* Add test case for social media validation

* linting

* tests shouldnt use redis

* also fix session cache setup (although not used atm)

* linting

* all caches to localmemcache during testing

---------

Co-authored-by: 20C <code@20c.com>
Co-authored-by: Matt Griswold <grizz@20c.com>
2023-09-12 20:54:04 -05:00

100 lines
2.7 KiB
YAML

version: "3.4"
services:
database:
image: "mysql:8"
# command: mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci
environment:
MYSQL_DATABASE: peeringdb
MYSQL_USER: peeringdb
MYSQL_PASSWORD: devPASSWORD
MYSQL_ALLOW_EMPTY_PASSWORD: 1
restart: always
ports:
- "13306:3306"
volumes:
- peeringdb_database:/var/lib/mysql:Z
networks:
- peeringdb_network
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.6.1
ports:
- "9200:9200"
environment:
- discovery.type=single-node
networks:
- peeringdb_network
redis:
image: "docker.io/redis:7"
restart: always
command:
- sh
- -c
- 'redis-server --requirepass devPASSWORD'
# environment:
# REDIS_PASSWORD: devPASSWORD
ports:
- "6379:6379"
networks:
- peeringdb_network
volumes:
- peeringdb_redis_data:/data:Z
peeringdb:
user: "0:0"
build:
context: ../..
dockerfile: Dockerfile
target: tester
container_name: peeringdb
command: runserver 0.0.0.0:8000
env_file: .env
depends_on:
- database
- elasticsearch
environment:
DATABASE_USER: peeringdb
DATABASE_PASSWORD: devPASSWORD
DATABASE_HOST: database
REDIS_HOST: redis
REDIS_PASSWORD: devPASSWORD
ports:
# this needs to be set in the shell, compose env vars aren't read yet
- "${DJANGO_PORT:-8000}:8000"
volumes:
- ../../peeringdb_server:/srv/www.peeringdb.com/peeringdb_server:Z
- ../../mainsite:/srv/www.peeringdb.com/mainsite:Z
- ../../tests:/srv/www.peeringdb.com/tests:Z
- ../../docs:/srv/www.peeringdb.com/docs:Z
# uncomment if you want indexed search data to be persistent
# - ../../search-data:/srv/www.peeringdb.com/search-data
# uncomment if you want api cache files to be persistent
# - ../../api-cache:/srv/www.peeringdb.com/api-cache
# uncomment if you want localization to be available for development
#
# expects a https://github.com/peeringdb/translations source checkout in the parent
# directory
# - ../../../translations/locale:/srv/www.peeringdb.com/locale:Z
# uncomment if you want a django-peeringdb source checkout
# to be available for development
#
# expects a https://github.com/peeringdb/django-peeringdb source checkout in the parent
# directory
# - ../../../django-peeringdb/src/django_peeringdb:/srv/www.peeringdb.com/venv/lib/python3.9/site-packages/django_peeringdb:Z
networks:
- peeringdb_network
volumes:
peeringdb_database:
peeringdb_redis_data:
networks:
peeringdb_network: