Я делаю webapp с докером, мне нужно запустить код, созданный публичным пользователем (вообще не безопасно), я использую redis для передачи некоторых данных между моими контейнерами (используя сокет, совместно используемый в именованном томе)
Как я могу запретить небезопасным контейнерам отправлять данные в Redis?
my docker-compose.yml
version: "3"
services:
redis:
image: redis:latest
command: >
sh -c "chown redis /tmp/redis/
redis-server /usr/local/etc/redis/redis.conf"
volumes:
- redis_socket:/tmp/redis
unsafe_container:
build:
context: ./docker
dockerfile: Dockerfile
command: python unsafe.py
volumes:
- redis_socket:/tmp/redis:ro
links:
- redis
depends_on:
- redis
data_in:
build:
context: ./docker
dockerfile: Dockerfile-data
command: >
sh -c "python3 /code/manage.py wait_db
python3 /code/manage.py start_dc"
volumes:
- redis_socket:/tmp/redis
links:
- redis
depends_on:
- redis
volumes:
redis_socket:
Если я делаю Redis Slave, могу ли я настроить этот режим так, чтобы он принимал чтение только от всех подключений, кроме главного Redis?
Спасибо
EDIT: после некоторых тестов Slave только для чтенияпо умолчанию, но я не могу подключить подчиненное устройство к ведущему с помощью сокета, я не нашел ничего об этой функции / проблеме в документации