Dockerfile 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. # 使用官方CentOS 7基础镜像
  2. FROM centos:xnyV1.3
  3. # 安装基础依赖
  4. RUN yum -y update && \
  5. yum -y groupinstall "Development Tools" && \
  6. yum -y install \
  7. openssl-devel \
  8. bzip2-devel \
  9. libffi-devel \
  10. wget \
  11. && yum clean all
  12. # 安装Python 3.12
  13. RUN cd /tmp && \
  14. wget https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tgz && \
  15. tar xzf Python-3.12.0.tgz && \
  16. cd Python-3.12.0 && \
  17. ./configure --enable-optimizations && \
  18. make altinstall && \
  19. ln -s /usr/local/bin/python3.12 /usr/local/bin/python3 && \
  20. ln -s /usr/local/bin/pip3.12 /usr/local/bin/pip3
  21. # 安装MongoDB
  22. RUN echo -e "[mongodb-org-6.0]\nname=MongoDB Repository\nbaseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/6.0/x86_64/\ngpgcheck=1\nenabled=1\ngpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc" > /etc/yum.repos.d/mongodb-org-6.0.repo && \
  23. yum -y install mongodb-org && \
  24. mkdir -p /data/db && \
  25. chown -R mongod:mongod /data/db \
  26. WORKDIR /home/app
  27. # 部署应用程序
  28. COPY ./compete/app/ .
  29. # 安装Python依赖
  30. RUN pip3 install --no-cache-dir -r /app/requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
  31. # 配置容器启动
  32. EXPOSE 27017
  33. CMD ["sh", "-c", "mongod --fork --logpath /var/log/mongodb.log"]