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. “i词汇”宣传文案

    目录 "i词汇"微信小程序 队名 :颜罗王team 成员: 姓名 学号 杨雪莹(PM) 201521123005 林楚虹 201521123002 董美凤 201521123003 ...

  2. Activiti中子流程:SubProcess,CallActiviti的区别

    子流程:SubProcess,CallActiviti的区别 https://community.alfresco.com/thread/221771-call-activiti-vs-subproc ...

  3. 使用telnet模拟http请求

    HTTP 首先我们需要知道http报文是由一系列的字符串组成的.然后我们来了解具体的相关事项. 方法 HTTP支持几种不同形式的请求命令,这些命令就被称为HTTP方法.每个HTTP请求报文都包含一个方 ...

  4. jq源码解析之绑在$,jQuery上面的方法

    1.当我们用$符号直接调用的方法.在jQuery内部是如何封装的呢?有没有好奇心? // jQuery.extend 的方法 是绑定在 $ 上面的. jQuery.extend( { //expand ...

  5. linux的LNMP架构介绍、MySQL安装、PHP安装

    LNMP架构介绍 和LAMP唯一不同的是,LNMP中的N指的是Nginx(类似于Apache的一种web服务软件).目前这种环境的应用也非常多.Nginx设计的初衷是提供一种快速.高效.多并发的Web ...

  6. .NET中的许可证机制--License

    .NET中的许可证机制主要类:System.ComponentModel.License(为所有许可证提供 abstract 基类.向组件的特定实例授予许可证)     System.Componen ...

  7. XE2 运行时 item not found的解决办法

    .net类库的原因. 将C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG下面的 machine.config.default 改名为machin ...

  8. python 模块之-re

    就其本质而言,正则表达式(或 RE)是一种小型的.高度专业化的编程语言,(在Python中)它内嵌在Python中,并通过 re 模块实现.正则表达式模式被编译成一系列的字节码,然后由用 C 编写的匹 ...

  9. nginx-匹配规则

    location 指令的作用是根据用户请求的URI来执行不同的应用. locationn使用的语法为 location [=|~|~*|^~] uri { .... } location 语法说明表 ...

  10. Python从入门到放弃系列(Django/Flask/爬虫)

    第一篇 Django从入门到放弃 第二篇 Flask 第二篇 爬虫