dockerfile_arm64.txt 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"
  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. RUN chmod +x /etc/autostart/app.sh && apt-get clean && apt-get update
  32. # arm64安装gcc
  33. # RUN apt-get install gcc-9-aarch64-linux-gnu gcc-aarch64-linux-gnu -y
  34. RUN apt install build-essential -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. # arm64专用
  39. RUN pip install ./whl/gevent-21.12.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  40. # RUN pip install --upgrade gevent --no-cache-dir
  41. # RUN pip install ./whl/gevent-21.12.0-cp37-cp37m-linux_armv7l.whl
  42. # 执行指令,安装依赖
  43. RUN pip install -r requirements.txt
  44. # 安装vim编辑器
  45. RUN apt-get install -y vim
  46. # 切换容器时区
  47. RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
  48. # 设置语言支持中文打印
  49. ENV LANG C.UTF-8
  50. ENV LC_ALL C.UTF-8
  51. EXPOSE 5705 9001
  52. # docker build -f dockerfile -t hjdhnx/drpy:mini . 构建命令,非此文件内命令
  53. # docker build -f dockerfile -t hjdhnx/drpy_mini . 构建命令,非此文件内命令
  54. # docker build -f dockerfile -t hjdhnx/drpy_mini . 构建命令,非此文件内命令
  55. # docker push hjdhnx/drpy_mini
  56. # docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 -f dockerfile -t hjdhnx/drpy:mini_arm64 .
  57. # docker buildx build --platform linux/arm64 -f dockerfile -t hjdhnx/drpy_mini:armv7 .
  58. # docker buildx build --platform linux/arm64 -f dockerfile_arm64.txt -t hjdhnx/drpy:arm64 .
  59. # docker buildx build --platform linux/arm64 -f dockerfile_arm64.txt -t hjdhnx/drpy:arm64 --push .
  60. # 启动命令,非此文件内命令
  61. # 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
  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_mini
  63. # ENV LC_ALL=zh_CN.utf8
  64. # ENV LANG=zh_CN.utf8
  65. # ENV LANGUAGE=zh_CN.utf8
  66. # RUN localedef -c -f UTF-8 -i zh_CN zh_CN.utf8
  67. # 执行命令
  68. # CMD [ "python", "/root/sd/pywork/dr_py/app.py" ]
  69. # supervisord -c /root/sd/pywork/dr_py/super/flask.conf
  70. # CMD [ "supervisord","-c", "/root/sd/pywork/dr_py/super/flask.conf" ]
  71. # ENTRYPOINT supervisord -c /root/sd/pywork/dr_py/super/flask.conf
  72. # ENTRYPOINT -c /root/sd/pywork/dr_py/super/flask.conf
  73. # CMD /bin/bash
  74. # 启动容器时,执行脚本
  75. ENTRYPOINT ["/etc/autostart/app.sh","flask"]
  76. # CMD supervisord -c /root/sd/pywork/dr_py/super/flask.conf && /bin/bash