Я впервые пользуюсь докером. Написал dockerfile и docker-compose. Собрал, проверил у себя на пк - запускается, бот видит все переменные. Собираю образ в .tar и перемещаю на сервер, загружаю на сервере - не видит эти переменные. Почему?
docker-compose:
services:
app:
build: .
container_name: fruityblox_bot
restart: always
env_file:
- .env
volumes:
- app_logs:/var/log/app
- ./doc:/app/doc:ro
networks:
- fruityblox_network
healthcheck:
test: ["CMD", "python", "-c", "import sys; sys.exit(0)"]
interval: 30s
timeout: 10s
retries: 3
volumes:
app_logs:
driver: local
networks:
fruityblox_network:
driver: bridge
Dockerfile:
FROM python:3.10-slim
WORKDIR /app
ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONUNBUFFERED=1 \
TZ=UTC
RUN apt-get update && apt-get install -y \
gcc \
&& rm -rf /var/lib/apt/lists/*
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY app/ ./app/
RUN mkdir -p /var/log/app
RUN useradd --create-home --shell /bin/bash app && \
chown -R app:app /app /var/log/app
USER app
EXPOSE 8000
HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
CMD python -c "import sys; sys.exit(0)"
CMD ["python", "-m", "app.main"]