feat: Implement Dockerized multi-tenant Django application with initial setup for database, migrations, and superuser creation.
This commit is contained in:
@@ -37,20 +37,24 @@ COPY myproject/ .
|
||||
# Создаём директории для статики и медиа
|
||||
RUN mkdir -p /app/staticfiles /app/media
|
||||
|
||||
# Создаём непривилегированного пользователя
|
||||
RUN useradd -m -u 1000 appuser
|
||||
|
||||
# Копируем entrypoint скрипт
|
||||
COPY docker/entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
COPY docker/create_public_tenant.py /app/docker/create_public_tenant.py
|
||||
RUN chmod 755 /entrypoint.sh && chown appuser:appuser /entrypoint.sh
|
||||
|
||||
# Меняем владельца рабочей директории
|
||||
RUN chown -R appuser:appuser /app
|
||||
|
||||
# Создаём непривилегированного пользователя
|
||||
RUN useradd -m -u 1000 appuser && \
|
||||
chown -R appuser:appuser /app
|
||||
USER appuser
|
||||
|
||||
# Порт приложения
|
||||
EXPOSE 8000
|
||||
|
||||
# Точка входа
|
||||
ENTRYPOINT ["/entrypoint.sh"]
|
||||
# Точка входа (запускаем через bash явно, чтобы избежать ошибок Permission denied)
|
||||
ENTRYPOINT ["/bin/bash", "/entrypoint.sh"]
|
||||
|
||||
# Команда по умолчанию (будет переопределена в docker-compose)
|
||||
CMD ["web"]
|
||||
|
||||
Reference in New Issue
Block a user