日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

利用Dockefile将Python的py文件项目代码打包为Docker镜像

發(fā)布時(shí)間:2025/3/11 python 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 利用Dockefile将Python的py文件项目代码打包为Docker镜像 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1.創(chuàng)建python項(xiàng)目


【備注:一定要將項(xiàng)目python環(huán)境依賴(lài)存至本項(xiàng)目下,默認(rèn)依賴(lài)本機(jī)python環(huán)境(會(huì)造成依賴(lài)包過(guò)多)】

2.創(chuàng)建main.py文件,完成程序代碼

主要功能就是獲取"https://www.hao123.com/"網(wǎng)址頁(yè)面源代碼,并存儲(chǔ)到"myGetFile.html"文件中

main.py

#! python # -*- coding: utf-8 -*- from urllib.request import urlopen url = "https://www.hao123.com/"if __name__ == '__main__':resp = urlopen(url)# 把讀取到網(wǎng)頁(yè)的頁(yè)面源代碼寫(xiě)入myGetFile.html文件with open("myGetFile.html", mode="w", encoding='utf-8') as f:f.write(resp.read().decode('utf-8'))f.close() # 關(guān)閉文件resp.close() # 關(guān)閉resp響應(yīng)print("結(jié)束")

3.導(dǎo)出程序依賴(lài)

在項(xiàng)目目錄下,打開(kāi)shell面板

在打開(kāi)的終端中,輸入pip freeze > requirements.txt回車(chē),生成requirements.txt文件


4.打包前準(zhǔn)備
在新建文件夾下面創(chuàng)建docker_test文件夾,同級(jí)目錄下創(chuàng)建Dockerfile文件,在docker_test文件夾下面添加main.py源代碼和requirements.txt文件

5.創(chuàng)建Dockerfile文件,添加內(nèi)容

在Dockerfile文件中輸入以下內(nèi)容:

# python版本,可根據(jù)需求進(jìn)行修改 FROM python:3.8-alpineRUN mkdir /code# 將代碼和項(xiàng)目依賴(lài)添加到code文件夾 ADD ./docker_test /code# 設(shè)置code文件夾是工作目錄 WORKDIR /codeRUN pip install -r requirements.txt# 鏡像運(yùn)行時(shí)執(zhí)行的命令,這里的配置等于 python main.py ENTRYPOINT ["python","main.py"]

7.打包Docker鏡像

docker build -t imagename Dockerfilepath
Dockerfilepath:Dockerfile 所在文件夾名稱(chēng),當(dāng)前目錄為 “.”

在彈出的終端中輸入docker build -t mypythontest:1.0 .回車(chē)。

打包成功后,利用命令docker images可以驗(yàn)證mypythontest鏡像

8.運(yùn)行鏡像
#docker run --name c_name imagename
#c_name為容器名 imagename為打包的鏡像名

docker run -it --name pythontest mypythontest:1.0

9.把docker鏡像中的文件復(fù)制到宿主機(jī)上來(lái)

本例,在終端中運(yùn)行docker cp pythontest:/code ./

看到已生成code文件夾


生成的網(wǎng)頁(yè)源代碼文件

如果本文對(duì)您有所幫助,請(qǐng)關(guān)注微信公眾號(hào)“捷創(chuàng)源科技”。
獲取更多資料,請(qǐng)?jiān)L問(wèn)我的博客

總結(jié)

以上是生活随笔為你收集整理的利用Dockefile将Python的py文件项目代码打包为Docker镜像的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。