docker部署路飞学城blog来啦

部署需求分析:

之前是将nginx、django、vue直接部署在服务器上,既然学了docker,试试怎么部署在docker中
1.环境准备
  一台linux服务器 centos7
  安装好docker systemctl start docker
  vue代码
  django后端代码 3.注意修改vue提交axaj请求的地址
修改vue接口代码文件/opt/07-luffy_project_01/src/restful/api.js vue.js需要发送请求给django后端接口,改成容器的ip地址
sed -i "s/127.0.0.1/172.17.0.3/g" /opt/07-luffy_project_01/src/restful/api.js 然后重新打包vue的静态文件,生成dist目录,提供给nginx

第一步,准备nginx的运行容器

nginx容器构建目录如下

nginx_docker  一级目录
├── CentOS-Base.repo  用于修改容器的yum源
├── dist         将本地的dist文件夹拷贝到容器内
├── Dockerfile      用于构建镜像
├── epel.repo      用于修改容器的yum源
└── nginx.conf     将本地的nginx.conf配置文件,拷贝到容器内,生效nginx配置

配置文件如下:

cat Dockerfile 内容如下
[root@web02 nginx_docker]# cat Dockerfile
FROM centos
MAINTAINER yugo
ADD CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo
ADD epel.repo /etc/yum.repos.d/epel.repo
RUN yum clean all
RUN yum install nginx -y
COPY nginx.conf /etc/nginx/nginx.conf
COPY dist /opt/dist
EXPOSE
ENTRYPOINT nginx -g "daemon off;"

cat nginx.conf内容如下

[root@web02 nginx_docker]# cat nginx.conf
worker_processes ; events {
worker_connections ;
} http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout ;
server {
listen ;
server_name luffy_nginx.cn;
location / {
root /opt/dist;
index index.html;
}
}
server {
listen ;
server_name luffy_nginx.cn;
location / {
uwsgi_pass luffy_backend.cn:;
include uwsgi_params;
}
}
}

构建nginx镜像

docker build -t luffy_nginx .

运行nginx镜像,产生容器实例

docker run -d -p80:80  luffy_nginx

查看产生容器的ip地址信息,进行dnsmasq域名解析

 docker inspect --format '{{ .NetworkSettings.IPAddress }}' 容器id

通过windows/Macos访问linux的ip地址,查看容器端口映射结果

此时已经配置好了nginx反向代理与vue的静态文件,开始配置后端代码!!!!

第二步、配置django后端容器

docker部署路飞学城的更多相关文章

  1. vue+uwsgi+nginx部署路飞学城

    vue+uwsgi+nginx部署路飞学城   有一天,老男孩的苑日天给我发来了两个神秘代码,听说是和mjj的结晶 超哥将这两个代码,放到了一个网站上,大家可以自行下载 路飞学城django代码 ht ...

  2. linux vue uwsgi nginx 部署路飞学城 安装 vue

    vue+uwsgi+nginx部署路飞学城 有一天,老男孩的苑日天给我发来了两个神秘代码,听说是和mjj的结晶 超哥将这两个代码,放到了一个网站上,大家可以自行下载 路飞学城django代码#这个代码 ...

  3. 14,vue+uwsgi+nginx部署路飞学城

    有一天,老男孩的苑日天给我发来了两个神秘代码,听说是和mjj的结晶 超哥将这两个代码,放到了一个网站上,大家可以自行下载 路飞学城django代码 https://files.cnblogs.com/ ...

  4. django环境部署 crm和路飞学城

    环境依赖 yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-de ...

  5. linux --- 7. 路飞学城部署

    一.前端 vue 部署 1.下载项目的vue 代码(路飞学城为例), wget https://files.cnblogs.com/files/pyyu/07-luffy_project_01.zip ...

  6. 路飞学城Python-Day14

    转载:python之路-路飞学城-python-book [25.常用模块-logging模块详解] [26.常用模块-logging模块详解2] [27.常用模块-logging模块日志过滤和日志文 ...

  7. drf框架使用之 路飞学城(第一天)

    1. 路飞学城第一天: 知识点 使用的是序列化与反序列化的使用: 1.创建一个公共相应的Json方法: #创建一个公共响应的类: class LuffyResponse(): def __init__ ...

  8. vue 项目记录.路飞学城(一)

    前情提要: 通过vue 搭建路飞学城记录  一:项目分析 二:项目搭建 1:创建项目 vue init webpack luffy 2:初始化项目 清除默认的HelloWorld.vue组件和APP. ...

  9. python 全栈开发,Day98(路飞学城背景,django ContentType组件,表结构讲解)

    昨日内容回顾 1. 为什么要做前后端分离? - 前后端交给不同的人来编写,职责划分明确. - API (IOS,安卓,PC,微信小程序...) - vue.js等框架编写前端时,会比之前写jQuery ...

随机推荐

  1. file_put_contents () failed to open stream: Permission denied 解决办法

    今天,帮朋友配置服务器thinkphp5的时候,直接访问“www.***.com/admin/index/index” : 出现以下错误: file_put_contents (/PHP/admin/ ...

  2. spark中saveAsTextFile的错误

    写了很简单的一段spark代码,将结果保存为windows本地文件,执行之后总是报错NullPointerException 查询之后 发现是本地缺少hadoop需要的一个文件所致 如果本地已经安装了 ...

  3. python之tkinter使用-多选框实现开关操作

    # tkinter的Checkbutton实现开关操作 import tkinter as tk root = tk.Tk() root.title('开关') root.geometry('170x ...

  4. Gulp实现静态网页模块化的方法详解

    前言: 在做纯静态页面开发的过程中,难免会遇到一些的尴尬问题.比如:整套代码有50个页面,其中有40个页面顶部和底部模块相同.那么同样的两段代码我们复制了40遍(最难受的方法).然后,这个问题就这样解 ...

  5. codeforces624A

    Save Luke CodeForces - 624A Luke Skywalker got locked up in a rubbish shredder between two presses. ...

  6. 构建squid代理服务器

    基本概念 本文使用squid代理服务 软件介绍:百度百科 作为应用层的代理服务软件,Squid主要提供缓存加速.应用层过滤控制的功能: 工作机制:缓存网页对象,减少重复请求(HTTP代理的缓存加速对象 ...

  7. 自学Zabbix4.2 web监控项创建+item详解

    自学Zabbix4.2 web监控项创建+item详解 1. web监控项创建 1.1  Scenario 选项卡 Name: 监控项的名称 Application: 放到哪个应用中 Authenti ...

  8. 面试 -- Http协议相关(转载)

    http请求由三部分组成,分别是:请求行.消息报头.请求正文 HTTP(超文本传输协议)是一个基于请求与响应模式的.无状态的.应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接 ...

  9. Linux中使用Electronic WeChat客户端

    微信推出了Windows版和Mac版,一直没有推出也不会推出Linux版本,这就催生了Electronic WeChat(https://github.com/geeeeeeeeek/electron ...

  10. Codeforces 382 D Permutations

    题目大意: 给出一张二分图,这张二分图完美匹配的个数是奇数,求删掉第$i(1<=i<=m)$条边后完美匹配个数的奇偶性. 设这张图的邻接矩阵为$A$,那么完美匹配的个数为$A$的积和式,即 ...