first commit
This commit is contained in:
67
Dockerfile
Normal file
67
Dockerfile
Normal file
@@ -0,0 +1,67 @@
|
||||
# -----------------------------
|
||||
# NAS Media Player Dockerfile
|
||||
# -----------------------------
|
||||
FROM python:3.9-slim
|
||||
|
||||
LABEL maintainer="神雕<teasiu@qq.com>"
|
||||
LABEL version="1.2"
|
||||
LABEL description="NAS Media Player 多架构Python版Docker镜像"
|
||||
|
||||
# -----------------------------
|
||||
# 环境变量
|
||||
# -----------------------------
|
||||
ENV APP_DIR=/opt/nas-media-player \
|
||||
VIDEO_DIR=/mnt \
|
||||
PORT=8800 \
|
||||
LOG_FILE=/opt/nas-media-player/nas-media-player.log \
|
||||
PYTHONUNBUFFERED=1 \
|
||||
PYTHONDONTWRITEBYTECODE=1
|
||||
|
||||
# -----------------------------
|
||||
# 创建目录
|
||||
# -----------------------------
|
||||
RUN mkdir -p ${APP_DIR}/static \
|
||||
&& mkdir -p ${VIDEO_DIR} \
|
||||
&& chmod 777 ${APP_DIR} ${VIDEO_DIR} ${APP_DIR}/static
|
||||
|
||||
# -----------------------------
|
||||
# 日志文件
|
||||
# -----------------------------
|
||||
RUN touch ${LOG_FILE} && chmod 666 ${LOG_FILE}
|
||||
|
||||
# -----------------------------
|
||||
# 安装依赖工具
|
||||
# -----------------------------
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
curl procps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# -----------------------------
|
||||
# 复制 requirements 并安装
|
||||
# -----------------------------
|
||||
COPY requirements.txt ${APP_DIR}/
|
||||
RUN pip install --no-cache-dir -i https://pypi.tuna.tsinghua.edu.cn/simple \
|
||||
-r ${APP_DIR}/requirements.txt
|
||||
|
||||
# -----------------------------
|
||||
# 复制程序和静态文件
|
||||
# -----------------------------
|
||||
COPY nas-media-player.py ${APP_DIR}/
|
||||
COPY index.html zhinan.html ${APP_DIR}/static/
|
||||
|
||||
# -----------------------------
|
||||
# 暴露端口
|
||||
# -----------------------------
|
||||
EXPOSE ${PORT}
|
||||
|
||||
# -----------------------------
|
||||
# EntryPoint:直接运行 Python
|
||||
# -----------------------------
|
||||
RUN echo '#!/bin/sh' > /entrypoint.sh && \
|
||||
echo 'cd ${APP_DIR}' >> /entrypoint.sh && \
|
||||
echo 'echo "NAS Media Player 启动中... 端口:${PORT}"' >> /entrypoint.sh && \
|
||||
echo 'exec python3 nas-media-player.py >> ${LOG_FILE} 2>&1' >> /entrypoint.sh && \
|
||||
chmod +x /entrypoint.sh
|
||||
|
||||
ENTRYPOINT ["/entrypoint.sh"]
|
||||
|
||||
Reference in New Issue
Block a user