• dockerfile封装docker镜像


    一.使用都dockerfile封装docker镜像

      1.在任意一个地方创建文件夹docker

    mkdir docker

      2.进入文件夹并且下载一个django2.1.7的包以及一个epel.repo

    cd docker
    wget https://media.djangoproject.com/releases/2.1/Django-2.1.7.tar.gz
    wget -O epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

      3.在此文件夹下两个文件Dockfile和run.sh

      

      4.编写Dockerfile文件

    FROM centos
    MAINTAINER TigerLee
    
    ADD epel.repo /etc/yum.repos.d  # 将当前目录的epel.repo文件拷贝到容器的/etc/yum.repos.d目录下
    RUN yum update -y  # 运行命令(或yum不是最新的,确保版本比较新)
    
    RUN yum install -y python36
    RUN yum install -y python36-pip
    RUN pip3 install setuptools   #安装python相关的东西
    ADD Django-2.1.7.tar.gz /opt/   #把djang拷贝到/opt/目录下并且解压
    
    WORKDIR /opt/  # 进入/opt目录
    RUN mv Django-2.1.7 django  # 运行命令mv
    
    WORKDIR /opt/django    # 进入/opt/django目录
    RUN python3 setup.py install #安装django
    
    WORKDIR /opt
    RUN django-admin.py startproject qishi
    
    ADD run.sh /opt/qishi/run.sh
    WORKDIR /opt/qishi
    RUN chmod 777 run.sh
    EXPOSE 8000  # 声明容器端口
    CMD ["/bin/sh","run.sh"]  # 容器启动时默认执行的命令
    FROM centos
    MAINTAINER TigerLee
    
    ADD epel.repo /etc/yum.repos.d
    RUN yum update -y
    
    RUN yum install -y python36
    RUN yum install -y python36-pip
    RUN pip3 install setuptools
    ADD Django-2.1.7.tar.gz /opt/
    
    WORKDIR /opt/
    RUN mv Django-2.1.7 django
    
    WORKDIR /opt/django
    RUN python3 setup.py install
    
    WORKDIR /opt
    RUN django-admin.py startproject qishi
    
    ADD run.sh /opt/qishi/run.sh
    WORKDIR /opt/qishi
    RUN chmod 777 run.sh
    EXPOSE 8000
    CMD ["/bin/sh","run.sh"]
    简洁版

      4.编写run.sh

    python3 manage.py runserver 0.0.0.0:8000

      5.构建镜像

    sudo docker build -t tom/django-217  .   最后那个点不能少,表示当前路劲

      查看镜像

     

      6.利用构建出来的镜像构造容器(记得端口映射)

     docker run -d -p 9090:8000  tom/django-217

      查看容器状态:

      

      7.使用交互式模式进入容器,再使用ps -ef查看运行的进程

    docker exec -ti 450
    ps -ef  

      8.运行状态查看

     

       9.使用浏览器访问

    第一次访问发现报错,因为我们不是本机访问的,所以要修改配置
    在ALLOW_HOSTS=['*']
    修改完了重新运行容器

      10. 导出镜像

     docker save -o centos_django217.tar.gz tom/django-217

      

  • 相关阅读:
    【原创】只需3行代码,Python基础面试题:循环报数3的出圈
    【原创】MySQL同时取出最大值和最小值所在整行
    【原创】Python打印立方米
    【Python】如何像cmd一样操作系统命令
    【群答疑20210525-3】MySQL限制时间是当前月,或者月区间查询
    【群答疑20210525-1】MySQL列名相同,出现两列问题
    【原创】爬虫反爬基础常见类型总结
    【原创】Python基础面试题:按照年龄判断未成年还成年(条件语句)
    【原创】Python基础:你真的知道and和or的用法吗
    【Python】 读写MySQL
  • 原文地址:https://www.cnblogs.com/tjp40922/p/10759126.html
Copyright © 2020-2023  润新知