nginx-docker在搭建静态页面方面的使用
背景
一直以来都想使用docker做点什么,
此次以使用nginx的docker来搭建静态网页博客一事练手.
背景
假设已经存在一个临时的文件夹,
结构是
1 | blog-nginx-docker-test |
方法一
直接运行nginx的docker,通过指定卷映射的方式让里面的nginx得到文件.
1 | docker run --name some-nginx --rm |
此方法相当于将nginx的docker当作一个nginx的软件来用,没有太多现实意义.
能装上docker环境的系统应该都能装上nginx吧.
(马上打脸,mac上通过brew安装的nginx连用都不想用,直接换了docker来跑)
等效的 docker-compose
文件
1 | web: |
方法二
docker hub上nginx的官方使用说明很全面,
可以将待发布的页面打包在docker镜像中使用.
相比使用卷,该方法更加’干净’,使用者也不用准备网页文件了.
在 Dockerfile
中写:
1 | FROM nginx |
然后使用
1 | docker image build -t some-nginx . # 打包 |
方法三
可以在nginx的docker运行时将文件拷贝进去,
然后中途用commit制作一个镜像
1 | docker cp public/. nginx:/usr/share/nginx/html # 拷贝文件 |
注意此处如果只写了 public
, 就会造成 /usr/share/nginx/html/public/
的效果,
docker的官方文档有说明