docker中nginx代理简单静态文件

背景:由于公司需要做一个内部的系统,写了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

这就实现了简单的文件代理

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 0. 前言 docker是什么?docker是用GO语言开发的应用容器引擎,基于容器化,沙箱机制的应用部署技术。可...
    sessionboy阅读 3,884评论 2 49
  • Docker简介Docker是一个由GO语言写的程序运行的“容器”; 目前云服务的基石是操作系统级别的隔离,在同一...
    gakiww阅读 570评论 0 0
  • docker 基础 什么是Docker Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基...
    JAVA日知录阅读 654评论 0 4
  • docker基本概念 1. Image Definition 镜像 Image 就是一堆只读层 read-only...
    慢清尘阅读 8,816评论 1 21
  • 五、Docker 端口映射 无论如何,这些 ip 是基于本地系统的并且容器的端口非本地主机是访问不到的。此外,除了...
    R_X阅读 1,800评论 0 7