docker部署路飞学城

时间:2023-01-30 04:56:28

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地址,查看容器端口映射结果

docker部署路飞学城

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

第二步、配置django后端容器