背景:由于公司需要做一个内部的系统,写了html文件,需要部署。这里用到了docker+nginx部署
我的做法是用Dockerfile来实现。
# Dockerfile文件
# 基于镜像基础
FROM nginx
# 复制当前代码文件到容器中 /demo
ADD . /demo
# 设置代码文件夹工作目录 /app
WORKDIR /demo
EXPOSE 8071
在这里我暴露出来的是8071端口。
步骤:
1、将html文件及Dockerfile上传到服务器
2、构建nginx镜像
docker build -t test(镜像名称 ) .
3、直接运行镜像
docker run test
4、进入test的容器,将nginx的配置文件拷贝出来, 配置的文件一般在/etc/nginx目录下,拷贝至宿主机的/root/allweb下。
docker cp test:/etc/nginx /root/allweb
5、拷贝完成后退出test的容器,并停止
docker stop test的容器id
docker rm test的容器id
6、然后修改nginx的配置文件,修改成要代理的真实文件路径
这里我没有做任何更改,然后是通过运行镜像的时候映射这个/usr/share/nginx/html
路径实现的。将容器的/usr/share/nginx/html
挂载到 /root/allweb
7、运行镜像
docker run -d -p 8071:80 --name inweb -v /root/allweb:/usr/share/nginx/html -v /root/allweb/nginx:/etc/nginx -v /root/allweb:/inweb inweb
这就实现了简单的文件代理
网友评论