docker+nginx搭建自己的静态服务器

3,058 阅读2分钟

前言

上篇文章介绍了docker+jenkins搭建前端持续集成工具,最后把dist下面的文件通过sshServers上传值/home/www/webpre目录下。下面就是通过配置nginx,访问打包后的静态文件。

下载nginx

执行 dockers pull nginx

 dockers pull nginx

下载后查看docker安装的镜像

docker images

显示nginx 说明已经下载。

把nginx的配置文件映射到/home/docker-nginx 文件夹下

docker run --name nginx -p 80:80 -v /home/docker-nginx/nginx.conf:/etc/nginx/nginx.conf -v /home/www:/home/www -v /home/docker-nginx/log:/var/log/nginx -v /home/docker-nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf -v /home/docker-nginx/html:/usr/share/nginx/html -d nginx

--name 给你启动的容器起个名字,以后可以使用这个名字启动或者停止容器

-p 映射端口,将docker宿主机的80端口和容器的80端口进行绑定

-v 挂载文件用的,第一个-v 表示将你本地的nginx.conf覆盖你要起启动的容器的nginx.conf文件

-d 表示启动的是哪个镜像。

home/docker-nginx/下面的文件需要自行从docker:nginx 下拷贝文件

docker exec -it nginx bash  // 进入docker:nginx
exit // 退出
docker cp docker:nginx/usr/share/nginx/html  /home/docker-nginx/html  拷贝nginx中nginx/usr/share/nginx/html 文件至宿主机/home/docker-nginx/html

然后访问 http://ip:80 停止nginx,修改/home/docker-nginx/html/index.html,再启动,再访问,验证一下配置是否成功

 docker stop nginx // 停止nginx服务
 docer start nginx // 启动
 docker remove nginx // 删除容器
 docker ps // 查看运行的容器
 docker ps -a // 查看所有容器

修改nginx配置文件

需要修改/home/docker-nginx/conf.d/default.conf /home/docker-nginx/nginx.conf

 vi /home/docker-nginx/conf.d/default.conf   // 打开文件
  a // 修改 
 ESC + : + w + q  // 退出并保存文件
 ESC + : + w + ! // 退出不保存文件

server_name => localhost

root => 默认访问http:ip:80 的根目录: 宿主机的/home/www

index => 默认访问的文件

其他配置请自行百度

配置完成后重启nginx服务,访问http://ip:80/webpre 就可以看到你打包后的页面了。

结尾

以上就是简单的docker+nginx配置静态服务器。如果说你的docker 中运行了多个容器,每次启动都一个个手都启动,那么你需要docker-compose来进行编排管理。关注我!下篇文章揭晓。