python專案打包成docker映象並發布執行

2021-10-07 05:42:21 字數 2869 閱讀 8339

本文以django專案為例,演示docker映象的製作過程。

一.目錄結構:

├─base_img

│ ├─dockerfile //django專案映象的dockerfile

│ └─opapi //django專案

│ ├─.vscode

│ ├─logs

│ ├─middleware

│ ├─python_agency

│ ├─manage.py

│ ├─requirements.txt

│ ├─db.sqlite3

│ └─readme.md

└─python

├─dockerfile //python環境映象的dockerfile

└─python

└─provision.sh //python安裝指令碼

二、python映象製作

1、python映象製作dockerfile:

from centos:7

#製作者資訊

maintainer [email protected]

#設定環境變數

env code_dir=/opt

env docker_scripts=$code_dir/python

#將scripts下的檔案複製到映象中的docker_scripts目錄

copy ./python/* $docker_scripts/

#執行映象中的provision.sh指令碼

run chmod a+x $docker_scripts/*

run $docker_scripts/provision.sh

2、provision.s**件:

#!/bin/bash

set -e

#python的一些依賴

yum install -y \

kde-l10n-chinese\

glibc-common\

git\

wget\

mysql-devel\

gcc\

swig\

pulseaudio\

pulseaudio-libs\

pulseaudio-libs-devel\

zlib-devel\

bzip2-devel\

openssl-devel\

ncurses-devel\

sqlite-devel\

readline-devel\

tk-devel\

gdbm-devel\

db4-devel\

libpcap-devel\

xz-devel\

libffi-devel\

ncurese-devel\

automake\

autoconf\

libtool\

make\

alsa-lib-devel\

poppler-utils\

#python3.7

wget

tar -zxvf python-3.7.4.tgz

cd python-3.7.4

./configure

make && make install

rm -rf python-3.7.4

#pip3

pip3 install --upgrade pip

3、構建python映象

切換到python資料夾下,執行如下命令就可以生成我們自己的基礎映象了,名字叫python版本3.7:

docker build -t python:3.7 .
二、專案映象製作

1、專案映象的dockerfile:

#基於的基礎映象

from python:3.7

#語言編碼設定

run localedef -c -f utf-8 -i zh_cn zh_cn.utf8

env lc_all zh_cn.utf-8

#將專案目錄檔案複製到映象中,code_dir是在基礎映象中定義的

copy ./opapi $code_dir/opapi/

#安裝專案依賴包

run pip3 install -r $code_dir/opapi/requirements.txt

#暴露埠

expose 8080

#啟動專案

cmd ["python", "$code_dir/opapi/manage.py", "runserver", "0.0.0.0:8080"]

2、build專案映象

切換到dockerfile所在目錄下,執行如下命令就可以生成專案映象了,名字叫opapi版本1.0:

docker build -t opapi:1.0 .
三、啟動映象

1、 檢視映象:

2、啟動映象

docker run -it -p 0.0.0.0:8080:8080  27bdd5bd718f
注:0.0.0.0是宿主機的ip,意思是將映象的8080埠對映到宿主機的8080埠上

3、此時就可以通過ip:8080訪問django專案了。

python檔案打包成exe

將自己寫的python檔案壓縮成exe有兩種方法 1 使用pyinstaller step1 安裝pyinstaller,在cmd視窗使用pip install pyinstaller安裝 step2 cd 到你的檔案目錄cd d py python testcases slice step3 執行...

python 打包成exe程式

1.需要安裝 py2exe 2.示例 exetest.py 建立乙個gui介面,只用乙個標籤和按鈕,無功能 from tkinter import win tk label label win,text hello btn button win,text click label.pack btn.p...

python打包成EXE檔案

在我們完成乙個python專案或乙個程式時,由於不可能讓使用者去安裝一些環境,所以希望將python的py檔案打包成在windows系統下直接可以執行的exe程式。在這裡我用的是pyinstaller來打包檔案 首先安裝pyinstaller pip install pyinstaller 輸入 格...