flask+mysql+docker搭建简易网站

因为学校期末作业的要求,我用flask+mysql 集合到docker中搭建了一个简易网站

中间参考了很多师傅的教程,这里给出详细的搭建步骤。

1.生成requirement.txt

flask网页程序需要依赖一些python库,为了方便在docker上进行安装,所以需要将所需库整合到requirement.txt中。

首先用pycharm打开你的项目在终端输入:pip freeze > requirement.txt

生成的requirement.txt如图

flask+mysql+docker搭建简易网站

但是其中有很多没有用的库,请大家根据自己的项目自行删改。

; 2.创建Dokcerfile

在项目文件夹的跟路径创建一个Dockerfile文件

dockerfile命令讲解:https://developer.aliyun.com/article/574780

#设置python环境镜像
FROM python:3.9
#代码添加到Chenge文件夹,app不需要新建(docker执行时自建)
ADD ./zlckqa /app
#设置code文件夹是工作目录
WORKDIR /app
安装相应的python库
RUN pip install -r requirement.txt
CMD ["python", "app.py"]

RUN与CMD的区别在于,RUN是在创建镜像的时候执行的,而CMD在这个镜像创建的容器每次启动时都会执行

ADD与COPY的区别在于,ADD可以写成 ADD http://foo.com/bar.go /tmp/main.go 或 ADD /foo.tar.gz /tmp/ 用于下载一个文件到容器中或者将一个压缩文件解压到容器中。

创建好后,按如下方式进行排列

tree 0714/ -L 2

flask+mysql+docker搭建简易网站

3.创建镜像flask_zlck

在服务器上传好文件后,就可以直接进到文件夹里,输入

docker build -t flask_zlck

这会创建一个名为flask_zlck的镜像

flask+mysql+docker搭建简易网站

4.拉取并创建mysql镜像

docker pull mysql:5.6

flask+mysql+docker搭建简易网站

启动mysql5.6镜像:

docker run --name mysql_flask -p 6666:3306 -env MYSQL_ROOT_PASSWORD=xxxxxx -d mysql:5.6
  • —d设置detach为true,也就是后台运行(-i指定容器交互)
  • -p port 映射端口 宿主机端口:容器端口
  • -env/-e environment 设置数据库密码xxx
  • —name:给容器起一个别名,可选如果不指定则docker会自动生成不规则的字符串

创建成功后docker ps看一下

flask+mysql+docker搭建简易网站

连接navicat

flask+mysql+docker搭建简易网站

5.将flask_zlck与数据库连接并启动

docker run --name flask -p 8081:8081 --link mysql_flask:mysql

注意应用中mysql和redis的host都要相应改变,改成数据库容器在flask容器中的别名

–link 容器名:容器别名 可以实现容器间的通信

如果没有意外的话现在就可以从服务器的8081端口访问到flask应用了

6.数据库中文编码问题

完美安装数据库:https://blog.csdn.net/u011937566/article/details/121111616

简易数据库安装详尽教程:https://blog.csdn.net/Liucheng417/article/details/80082096

https://blog.csdn.net/m0_37639542/article/details/72852875

参考:

https://www.cnblogs.com/luozx207/p/9935252.html

https://mp.weixin.qq.com/s/G0mdguyuNz9kmU_1D6fPxQ

docker入门(廖雪峰):https://www.ruanyifeng.com/blog/2018/02/docker-wordpress-tutorial.html

高版本mysql+flask搭建:https://blog.csdn.net/weixin_28689193/article/details/113293037

https://blog.csdn.net/hunter1000/article/details/122872356

Original: https://blog.csdn.net/weixin_45772001/article/details/127339575
Author: smart青龙
Title: flask+mysql+docker搭建简易网站

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/748981/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球