flask 在docker中的问题
2017-08-30 本文已影响110人
songkl
端口映射失败
host一定不要用默认的"127.0.0.1",不然容器启动,即使映射了端口,在浏览器中也仍然是无法访问服务的。
将host设置为"0.0.0.0",这样Flask容器可以接受到宿主的请求。
后台服务器、前台开发服务器需要做代理转发,两个进程要同时开启
python app.py & //& 代表守护进程 后台运行
npm run dev &
有关进程前后台切换的命令
jobs //当前后台运行的进程
ctrl + z //将当前进程转移到后台 并暂停
bg %{job number} //运行后台暂停的对应job
在docker中npm run dev 请求后台数据一直失败404
1. 在打包配置文件 package.json中 scripts有两个子项:dev和build
两个host都要改为0.0.0.0。即添加 --host 0.0.0.0
2. 对于这个docker容器来说,职责单一,就直接将localhost改为0.0.0.0 😄😄😄
3. 后端代码是运行在5000端口上的。要把这个请求发给后端,需要配置一下代理,打开 webpack.config.js, 找到 devServer 添加 proxy: {"/api/*": {target: 'http://localhost:5000', host: 'localhost'