1. 程式人生 > 實用技巧 >03-Dockerfile 建立Django專案映象

03-Dockerfile 建立Django專案映象

  1. 建立一個目錄
    mkdir my_django_catMail

  2. 建立Dockerfile檔案
    touch Dockerfile

  3. 建立國內原始檔
    touch sources.list

  4. 編寫國內原始檔
    vim sources.list
    將下面複製到 sources.list 中

deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security multiverse
  1. 編寫Dockerfile檔案
    vim Dockerfile

5.1 指定基礎映象
FROM ubuntu:16.04

5.2 複製 django 專案所用的包到容器
ADD requirements.txt /home

5.3 複製國內源 並且 更新原始檔
COPY sources.list /etc/atp/sources.list

5.4 安裝vim、python、pip3 以及 django 專案依賴
RUN apt-get update && apt-get install vim -y
&& apt-get install python3 -y
&& apt-get install python3-pip -y
&& pip3 install -r requirements.txt -i

http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

5.5 複製專案到容器
ADD /Users/onlyone/PycharmProjects/catMail /home

5.6 跳轉到專案目錄
WORKDIR /home/catMail

5.7 執行專案
CMD ["python3", "manage.py", "runserver", "0.0.0.0:8000"]

詳細Dockerfile 內容

FROM ubuntu:16.04

# 複製檔案到容器
ADD requirements.txt /home

# 跳轉到指定目錄
WORKDIR /home

# 複製國內更新源
COPY sources.list /etc/apt/sources.list

# 安裝vim、python、pip3以及Django專案依賴
RUN apt-get update && apt-get install vim -y \
    && apt-get install python3 -y \
    && apt-get install python3-pip -y \
    && pip3 install -r requirements.txt -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

# 複製專案到容器
ADD /catMail /home

# 跳轉到專案目錄
WORKDIR /home/catMail

# 對外暴露埠
EXPOSE 8000

# 執行專案
CMD ["python3", "manage.py", "runserver", "0.0.0.0:8000"]
  1. 建立映象 映象名建議純小寫
    docker build -t 映象名字:版本 上下文路徑
    docker build -t django_catmail:1.0 .