需求:需要将后端服务和前端服务使用docker-composr通过nginx暴露出去。
准备:1.安装好docker-compose
2.安装好nginx
3.后端镜像服务镜像,前端dist文件
文件tree目录:

docker-compose.yml
version: '3'
services:
web:
build: .
ports:
- "5000:80" //5000 对外暴露的端口,80跟nginx 服务端口对接
backend:
image: "rsdz:v0.0.1test"
|
Dockerfile
FROM harbor.ceclouddyn.com/cks/nginx: 1.14 . 1
COPY ./dist /usr/share/nginx/html/
COPY ./nginx.conf /etc/nginx/nginx.conf
|
nginx.conf
ps:nginx 版本和Dockerfile基础镜像版本保持一致
#只展示重要部分内容
#listen 默认端口 80
server {
listen 80 default_server;
listen [::]: 80 default_server;
root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/ default .d/*.conf;
#root 后 /usr/share/nginx/html 目录文件下放置dist 子目录下的全部内容
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
#后端服务地址
location /bachend/{
proxy_pass http: //127.0.0.1:8080;
}
error_page 404 / 404 .html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
|
docker-compose up 执行命令。