python应用打包成docker镜像


前言

今天看到一个mjj分享的应用,用python实现的,并且提供了docker的部署。因此i记录一下将python写的服务端通过dockerfile的方式打包成镜像的方式。

方法

项目的原地址是https://github.com/vastsa/FileCodeBox

直接贴上dockerfile

FROM python:3.9.5
LABEL author="Lan"
LABEL email="vast@tom.com"
LABEL version="1.0"


COPY . /app
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
WORKDIR /app
RUN pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
EXPOSE 12345
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "12345"]

使用docker部署的方法为

docker build --file Dockerfile --tag filecodebox .
docker run -d -p 12345:12345 --name filecodebox filecodebox

浅浅分析一下dockerfile。

  1. 选择python3.9.5作为基础镜像。
  2. 将当前远啦拷贝到app目录
  3. 设置时区。(这个可以重点学习,因为我在使用国外的vps运行定时任务时经常出现失去不一致的问题。)
  4. 安装python所需要的包。
  5. 暴露端口。
  6. 使用uvicorn来运行应用。

评论
评论
 上一篇
adb使用学习 adb使用学习
无线连接在开发者选项里打开无线调试,点击使用配对码配对设备获取ip端口号和配对码。 控制台里运行 adb pair 192.168.2.37:42551常用命令查看文件 adb shell ls / 电脑发文件到手机 adb push
2022-12-24 Zhang Rui
下一篇 
python向企业微信推送消息 python向企业微信推送消息
需求程序中的某些消息推送到企业微信中,通过微信进行接收。 代码import requests import json import yaml class Wechatpush: def __init__(self, corpi
2022-12-04 Zhang Rui
  目录