文章目录
一、docker安装nginx
Docker是一个跨平台的轻量级虚拟机,可移植性非常高,一次部署,终生可用。Docker可以在Linux,Windows,MacOS等平台上安装使用。我们都知道Linux有很多不同 的版本,例如Ubuntu,AIX,CentOS,Debian,Fedora,Oracle Linux,Red Hat Enterprise Linux,openSUSE and SUSE Linux Enterprise等。尽管Linux的版本很多,但是我们的Docker都可以在他们在面运行。
1、查看可用的nginx
首先查看可用的nginx:
docker search nginx
2、安装Nginx镜像
$docker pull nginx
3、查看是否安装成功
执行命令查看是否安装成功:
docker images
4、安装成功后执行nginx
docker run --name myNginx -p 8080:80 -d nginx
5、查看容器
docker ps -a ### 所有容器,包括未运行
6、本地验证
上面我们通过将本地8080端口映射到docker容器的80端口上实现了nginx的访问。一般为了方便修改和配置,我们将配置文件挂载到本地磁盘上。
二、创建本地挂载文件
一般情况下docker启动时进行配置,只要把配置文件的目录挂载出来就可以,但是nginx却是先加载一个主配置文件nginx.conf,在nginx.conf里再加载conf.d目录下的子配置文件(一般最少一个default.conf文件)。
所以本地创建对应的目录,并将目录挂在到docker容器的nginx上。
1、第一步:宿主机创建目录
mkdir -p /Users/moon/Documents/docker/nginx/log
mkdir -p /Users/moon/Documents/docker/nginx/html
mkdir -p /Users/moon/Documents/docker/nginx/conf
mkdir -p /Users/moon/Documents/docker/nginx/conf.d(注意:这是文件夹)
2、第二步:将docker安装的nginx里面文件复制到宿主机
docker cp myNginx:/etc/nginx/nginx.conf /Users/moon/Documents/nginx/conf/nginx.conf
docker cp myNginx:/etc/nginx/conf.d/default.conf /Users/moon/Documents/docker/nginx/conf/conf.d/default.conf
3、第三步:运行镜像
docker run --name myNginx -p 8080:80 -v /Users/moon/Documents/nginx/config/nginx.conf:/etc/nginx/nginx.conf -v /Users/moon/Documents/nginx/config/conf.d:/etc/nginx/conf.d -v /Users/moon/Documents/nginx/logs:/var/log/nginx -v /Users/moon/Documents/docker/nginx/html:/usr/share/nginx/html -d nginx
4、执行命令查看挂载情况
docker inspect myNginx | grep Mounts -A 200
到这里为止我们就可以随意的修改我们的nginx了,在本地的html文件夹和conf.d中任意增加代码和配置,在docker容器中重新启动nginx就可以了。