dockerfile 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. # 基于的基础镜像-在dockerhub找
  2. # FROM silverlogic/python3.8
  3. FROM python:3.7-slim-buster
  4. # 添加描述信息
  5. MAINTAINER python3.7+drpy+supervisord by "hjdhnx" for amd64
  6. # 设置app文件夹是工作目录
  7. WORKDIR /root/sd/pywork/dr_py
  8. # 复制文件及目录过去
  9. COPY . /root/sd/pywork/dr_py
  10. # 配置一下国内的agt源
  11. # 移动旧的源
  12. RUN cp /etc/apt/sources.list /etc/apt/sources.list.bac
  13. # 更换国内源 bullseye debian11 https://mirrors.bfsu.edu.cn/help/debian/
  14. # RUN cat <<EOF > /etc/apt/sources.list
  15. # # 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
  16. # deb https://mirrors.bfsu.edu.cn/debian/ bullseye main contrib non-free
  17. # # deb-src https://mirrors.bfsu.edu.cn/debian/ bullseye main contrib non-free
  18. # deb https://mirrors.bfsu.edu.cn/debian/ bullseye-updates main contrib non-free
  19. # # deb-src https://mirrors.bfsu.edu.cn/debian/ bullseye-updates main contrib non-free
  20. #
  21. # deb https://mirrors.bfsu.edu.cn/debian/ bullseye-backports main contrib non-free
  22. # # deb-src https://mirrors.bfsu.edu.cn/debian/ bullseye-backports main contrib non-free
  23. #
  24. # deb https://mirrors.bfsu.edu.cn/debian-security bullseye-security main contrib non-free
  25. # # deb-src https://mirrors.bfsu.edu.cn/debian-security bullseye-security main contrib non-free
  26. # EOF
  27. RUN mkdir -p /etc/autostart
  28. ADD sources.list /etc/apt/
  29. ADD app.sh /etc/autostart/
  30. # RUN sed -i s@/archive.ubuntu.com/@/mirrors.aliyun.com/@g /etc/apt/sources.list
  31. # armv7安装gcc
  32. # RUN apt-get install gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf -y
  33. RUN chmod +x /etc/autostart/app.sh && apt-get clean && apt-get update
  34. # RUN apt-get install python3-lxml -y
  35. # 执行指令,换源并安装依赖 设置默认pip源
  36. RUN pip install -i https://mirrors.cloud.tencent.com/pypi/simple --upgrade pip \
  37. && pip config set global.index-url https://mirrors.cloud.tencent.com/pypi/simple
  38. # \ && pip config set global.extra-index-url https://www.piwheels.org/simple
  39. # armv7专用
  40. # RUN pip install gevent-21.12.0-cp37-cp37m-linux_armv7l.whl
  41. # RUN pip install --upgrade gevent --no-cache-dir
  42. # RUN pip install gevent-21.12.0-cp37-cp37m-linux_armv7l.whl
  43. # 执行指令,安装依赖
  44. RUN pip install -r requirements.txt
  45. # 安装vim编辑器
  46. RUN apt-get install -y vim
  47. # 切换容器时区
  48. RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
  49. # 设置语言支持中文打印
  50. ENV LANG C.UTF-8
  51. ENV LC_ALL C.UTF-8
  52. EXPOSE 5705 9001
  53. # docker build -f dockerfile -t hjdhnx/drpy:mini . 构建命令,非此文件内命令
  54. # docker build -f dockerfile -t hjdhnx/drpy_mini . 构建命令,非此文件内命令
  55. # docker build -f dockerfile -t hjdhnx/drpy_mini . 构建命令,非此文件内命令
  56. # docker push hjdhnx/drpy_mini
  57. # docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 -f dockerfile -t hjdhnx/drpy:mini_arm64 .
  58. # docker buildx build --platform linux/arm/v7 -f dockerfile -t hjdhnx/drpy_armv7 .
  59. # docker buildx build --platform linux/arm/v7 -f dockerfile -t hjdhnx/drpy:armv7 --push .
  60. # docker build -f dockerfile -t hjdhnx/drpy:amd64 .
  61. # 启动命令,非此文件内命令
  62. # docker run -it -p 5705:5705 -p 9001:9001 -v /home/pywork/dr_py:/root/sd/pywork/dr_py --restart=always --name drpy -d hjdhnx/drpy:amd64
  63. # docker run -it -p 5705:5705 -p 9001:9001 -v /home/pywork/dr_py:/root/sd/pywork/dr_py --restart=always --name drpy -d hjdhnx/drpy_mini
  64. # ENV LC_ALL=zh_CN.utf8
  65. # ENV LANG=zh_CN.utf8
  66. # ENV LANGUAGE=zh_CN.utf8
  67. # RUN localedef -c -f UTF-8 -i zh_CN zh_CN.utf8
  68. # 执行命令
  69. # CMD [ "python", "/root/sd/pywork/dr_py/app.py" ]
  70. # supervisord -c /root/sd/pywork/dr_py/super/flask.conf
  71. # CMD [ "supervisord","-c", "/root/sd/pywork/dr_py/super/flask.conf" ]
  72. # ENTRYPOINT supervisord -c /root/sd/pywork/dr_py/super/flask.conf
  73. # ENTRYPOINT -c /root/sd/pywork/dr_py/super/flask.conf
  74. # CMD /bin/bash
  75. # 启动容器时,执行脚本
  76. ENTRYPOINT ["/etc/autostart/app.sh","flask"]
  77. # CMD supervisord -c /root/sd/pywork/dr_py/super/flask.conf && /bin/bash