一.使用都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
