部署python flaks项目至docker
1,项目介绍:
这是一个自动化测试的项目,使用python语言的flask框架,项目结构大致如下:
-
adautotest--
-
-
--app
-
-
--config
-
-
--logs
-
-
--models
-
-
--service
-
-
--views
-
-
--tests
-
-
manage.py
-
-
Dockerfile
-
-
requirements.txt
Dockerfile内容如下:
-
# For more information, please refer to https://aka.ms/vscode-docker-python
-
FROM python:3.8-slim
-
-
EXPOSE 8083
-
-
# Keeps Python from generating .pyc files in the container
-
ENV PYTHONDONTWRITEBYTECODE=1
-
ENV FLASK_ENV=dev
-
-
# Turns off buffering for easier container logging
-
ENV PYTHONUNBUFFERED=1
-
-
# Install pip requirements
-
COPY requirements.txt .
-
RUN python -m pip install -r requirements.txt
-
-
WORKDIR /root
-
COPY . /root
-
-
# During debugging, this entry point will be overridden. For more information, please refer to https://aka.ms/vscode-docker-python-debug
-
CMD ["python","manage.py","runserver"]
-
manage.py
manage.py运行的端口8083应该和Dockerfile中暴露的端口一致。
requirements.txt就是这个项目所有依赖
2,Dockerfile逻辑
编写的Dockerfile逻辑
FROM python:3.8-slim
是指使用什么python版本
EXPOSE 8083
是指暴露出来的端口
ENV FLASK_ENV=dev
是指定义的环境变量
-
COPY requirements.txt .
-
RUN python -m pip install -r requirements.txt
把当前目录下的 requirements.txt 进行依赖安装
-
WORKDIR /root
-
COPY . /root
WORKDIR /root 相当于在容器中cd root(没有应该会新建)
COPY . /root 把当前宿主机中当前目录下的都拷贝到容器中的/root下去
CMD ["python","manage.py","runserver"]
运行命令 python manage.py runserver
3, docker打包镜像
把项目文件拷贝到docker机器上,进入项目目录
运行命令:
docker build -t image_name:版本 Dockfile_path
查看镜像
docker images
删除镜像
-
docker rmi 镜像名称:版本
-
-
或
-
-
docker rmi 镜像id
删除镜像前先删除镜像容器
-
docker ps -a
-
-
docker rm 容器id
4,docker启动容器
docker run -d -p 宿主机端口:容器端口 image_name:版本
-d是指后台运行
-p是指指定端口 (也可以使用默认端口-P)
-
docker ps查看所启动的容器
-
-
docker ps -a 查看所有启动的容器,包括暂停的容器
进入容器
docker exec -it 容器id /bin/bash
尝试访问有响应
注意有个大坑:
flask host设置为0.0.0.0要是设置为127.0.0.1的话,怎么都会访问不通,还会出现如下curl 错误
connection reset by peer
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgaheig
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13