Docker部署Nginx并配置反向代理

准备工作

在docker内部署任何应用,都需要先下载对应的镜像;下载镜像之前,需要先搜索镜像来确认该镜像是否存在:

docker search nginx

从列表可以看到,docker已经有了nginx的镜像,名称是“nginx”,接下来下载镜像:

docker pull nginx

下载完成后,查看一下本地镜像:

如果在列表中看到nginx,镜像下载就已经成功了。

容器设置

在docker中,真正运行的是容器,镜像在我理解中是一种环境。我们在指定的镜像中运行某个容器,然后编辑和配置这个容器,从而达到想要的效果。使用以下命令运行一个nginx容器:

docker run -d -it -p 80:80 --name nginx01 nginx

解释一下

  • -d:代表后台运行,并返回容器的ID;
  • -it:是一个组合命令,可以使容器在运行时不会阻塞当前操作界面。(另一种写法是 -i -t );
  • -p 80:80:将宿主机上的端口映射到容器端口;
  • --name nginx01:自定义容器名称为nginx01;

最后的nginx:镜像的名称。

这行命令的结果是在nginx镜像中运行了一个名为nginx01的容器。接下来看一下容器有没有正常运行:

看到STATUS那一栏是Up开头就代表启动成功了。因为上一步操作已经做好了端口映射,所以我们可以本地访问nginx。访问127.0.0.1:

看到了nginx的默认页面,表示docker下的nginx已经成功跑起来了。

Docker下Nginx的反向代理

如果想让网站通过域名访问,那就需要nginx反向代理。设置的方法很简单,首先进入刚才的nginx01容器:

docker exec -it nginx01 bash

nginx反向代理通过修改配置文件即可完成,目录是etc/nginx/conf.d:

目录下的default.conf是一个默认的配置模板,按照里面的规则进行自己的配置即可:

修改完成后重启容器生效。如果是linux系统,可以直接vi来修改文件内容以完成配置,如果想在win系统完成nginx的反向代理,可以下载cmd可用的vim编辑器,也可以设置资料卷来解决,后面几篇文章会详述资料卷。

到此这篇关于Docker部署Nginx并配置反向代理的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 尝试Docker+Nginx部署单页应用方法

    开发到部署,亲力亲为 当我们开发一个单页面应用时,执行完构建后 npm run build 会生成一个 index.html 在 dist 目录,那怎么把这个 index.html 部署到服务器上呢? 目录结构 dist/:前端构建完的静态文件 docker/:镜像所需的配置文件 配置 Nginx 挑几点配置讲讲,先是 Gzip 压缩资源,以节省带宽和提高浏览器加载速度 虽然 Webpack 已经支持在构建时就生成 .gz 压缩包,但也可以通过 Nginx 来启用 gzip on; gzip_d

  • Docker搭建Nginx图片服务器的方法

    前言 一般开发中,都会把图片上传到一个目录,然后将目录和文件名拼接存储在数据库中,但是,这种方法如果没弄好的话可能有一定的缺陷. 若项目搬迁,即时这台服务器本身还在用,存放在服务器的跟项目相关的图片也要跟着搬迁,同时还要修改代码,会造成较多麻烦.如果搭建一个专门存放图片的服务器,而且通过ftp传输,那么你的代码就不用改了. 关于Docker和Nginx的介绍和优点在这里就不展开了,网上博客和教程也有很多. 环境搭建 环境搭建有些模块可能不够详细,如果想知道更多的话可以查看其他资料,这里只是简单操

  • Docker安装Nginx问题及错误分析

    问题: 在Docker中装Nginx时遇到了如下错误: docker: Error response from daemon: OCI runtime create failed: container_linux.go:345: starting container process caused "process_linux.go:424: container init caused "rootfs_linux.go:58: mounting \"/docker/nginx/

  • Docker安装Nginx教程实现图例讲解

    这里来安装下Nginx试下. 注意要明确一点,镜像是类,容器是对象. 查看当前的镜像 看到只有一个测试的镜像. 拉取镜像: 下载成功后查看,镜像已经被下载下来了: 使用 nginx 镜像 运行容器: 查看容器运行情况: 然后在浏览器输入网址: 修改文件: [root@VM_0_4_centos bin]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 8bf811453641 nginx "nginx -g 'da

  • Docker 安装 PHP并与Nginx的部署实例讲解

    安装 PHP 镜像 查找 Docker Hub 上的 php 镜像: 此外,我们还可以用 docker search php 命令来查看可用版本: 这里我们拉取官方的镜像,标签为7.3.24-fpm-stretch docker pull php:7.3.24-fpm-stretch 等待下载完成后,我们就可以在本地镜像列表里查到REPOSITORY为php,标签为7.3.24-fpm-stretch的镜像. Nginx + PHP 部署 Nginx 部署可以查看本人博客中:Docker 安装

  • Docker部署nginx实现过程图文详解

    1.下载nginx [root@localhost my.Shells]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/redis latest 1e70071f4af4 6 weeks ago 106.7 MB [root@localhost my.Shells]# docker pull nginx //下载nginx Using default tag: latest Trying to pull reposit

  • Docker容器简单部署nginx过程解析

    1.容器中部署nginx服务 centos:7镜像运行一个容器,并且,在这个容器内部署Nginx服务. [root@Docker ~]# docker pull centos:7 //下载镜像 [root@Docker ~]# docker run -itd --name webapp --restart=always centos:7 //运行一个容器名为:webapp [root@Docker ~]# docker cp nginx-1.16.0.tar.gz webapp:/root //

  • Docker部署nginx并修改配置文件的实现方法

    docker 部署个nginx,简直太简单了好吧 直接一行命令搞定: docker run \ --name nginx-health-web-pc \ -d -p 6800:80 \ -v /usr/docker/nginx/html:/usr/share/nginx/html \ nginx 运行启动不亦乐乎~~~~~这时候忽然前端过来说:"你的nginx里得加一个配置",顺带还告诉你:"某某某以前就是这样配的", 此时好胜的你当然不能拒绝,但是真正配置起来还是

  • Docker Nginx容器制作部署实现方法

    快速开始 1.查找 Docker Hub 上的 nginx 镜像 docker search nginx 2.拉取官方的Nginx镜像 docker pull nginx 3.在本地镜像列表里查到 REPOSITORY 为 nginx 的镜像 docker images nginx REPOSITORY TAG IMAGE ID CREATED SIZE nginx latest 4bb46517cac3 4 weeks ago 133MB 4.以下命令使用 NGINX 容器内的默认的配置来启动

  • Docker 如何安装 Nginx

    Docker 安装 Nginx Nginx 是一个高性能的 HTTP 和反向代理 web 服务器,同时也提供了 IMAP/POP3/SMTP 服务 . 1.查看可用的 Nginx 版本 访问 Nginx 镜像库地址: https://hub.docker.com/_/nginx?tab=tags. 可以通过 Sort by 查看其他版本的 Nginx,默认是最新版本 nginx:latest. 你也可以在下拉列表中找到其他你想要的版本: 此外,我们还可以用 docker search nginx

随机推荐