先下载一个docker 基于windows具体安装方法:https://www.runoob.com/docker/windows-docker-install.html
安装成功后类似于这样:
项目架构比较简单,在(一)中已经展示那就是个python词云demo
一.要新建一个文件docker_PythonProgram
把文件项目复制到下面,创建一个Dockerfile文件
PythonProgram文件中包含除了项目多了requirements.txt文件
cmd命令进入工程目录下我的在D:AppDataPythonProgram下执行pip freeze > requirements.txt
便会生成requirements.txt,(一定要把它复制到docker_PythonProgram中的PythonProgram内)
requirements.txt
Flask==1.1.2 jieba==0.42.1 matplotlib==3.4.2 numpy==1.20.3 wordcloud==1.8.1 altgraph==0.17 click==8.0.0 colorama==0.4.4 cycler==0.10.0 future==0.18.2 itsdangerous==1.1.0 Jinja2==3.0.0 kiwisolver==1.3.1 MarkupSafe==2.0.0rc2 pefile==2019.4.18 Pillow==8.2.0 pyparsing==2.4.7 python-dateutil==2.8.1 pywin32-ctypes==0.2.0 six==1.16.0 Werkzeug==2.0.0
Dockerfile
FROM python:3.8.6 ADD ./PythonProgram ./code WORKDIR /code RUN pip install -r requirements.txt CMD ["python", "/code/test1.py"]
#基于的基础镜像
FROM python:3.8.6
#代码添加到code文件夹
ADD ./PythonProgram ./code
# 设置code文件夹是工作目录
WORKDIR /code
# 安装支持(把不必要的)
RUN pip install -r requirements.txt
重启容器后自动启动服务
CMD ["python", "/code/test1.py"]
二、文件docker_PythonProgram中包含工程代码,和运行工程所需要的环境列表
三、之后都是在cmd小黑窗中进行操作
创建镜像cxx_python_new
docker build -t cxx_python_new . (后面有点注意,一般这个要花费很长时间,)
查看镜像是否创建成功:docker images
四、运行镜像,生成并启动容器
执行:docker run -it -p 8081:8080 --name cxx_python cxx_python_new
在docker 的客户端上也可以看到
看一下结果:
说明项目已将部署到docker上了。但是项目点击提交回报错
这个问题难为了我好长时间最后在看别人的文档,和自己的分学习的基础上解决的,
执行看日志命令:
docker logs -f --tail 50 4b31e23ff78d(容器id)
问题出在:
msyh.ttc 是雅黑字体文件,正常情况下window中有这个文件,在C:WindowsFonts微软雅黑中,但是docker中并没有这个文件,需要上传到docker的容器中
就是这个文件:
cmd中需要执行命令:docker ps -a 先查出容器ID
然后执行:docker inspect -f '{{.ID}}' 75ffd7e3e8fc(容器ID)
后面执行:
docker cp D:/AppData/msyh.ttc 75ffd7e3e8fc6d2100a85605fcbd2b5555b81ce407ea58ff72418e3c659aed74:/code/msyh.ttc
这个时候去看一下docker容器中是否存在此文件
执行docker exec -it 75ffd7e3e8fc /bin/bash
发现文件已经存在
运行项目:
成功!!!