Docker 搭建 Nginx 服务器

使用 Docker 部署应用,一般遵循“数据在宿主机,程序在容器”的原则。通过数据卷把有用的数据保存在本机(宿主机),避免因容器挂掉或者误删导致数据丢失。

下面我们通过 Docker 来搭建 Nginx 服务器。

首先在宿主机创建一个目录(如 /root/container/nginx),集中保存 Nginx 的配置文件、日志、应用程序代码:

mkdir -p /root/container/nginx/log
mkdir /root/container/nginx/conf
mkdir /root/container/nginx/www

下一步,复制初始的 Nginx 配置文件。原理是创建一个临时的 Nginx 容器,从中复制配置文件到宿主机。最后删除临时

docker run --name tmp-nginx-container -d nginx
docker cp tmp-nginx-container:/etc/nginx/nginx.conf /root/container/nginx/conf/nginx.conf
docker cp tmp-nginx-container:/etc/nginx/conf.d /root/container/nginx/conf/conf.d
docker cp tmp-nginx-container:/usr/share/nginx/html /root/container/nginx/www
docker rm -f tmp-nginx-container

最后运行镜像:

docker run --name nginx \
    -v /root/container/nginx/conf/conf.d:/etc/nginx/conf.d:ro \
    -v /root/container/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro \
    -v /root/container/nginx/www:/usr/share/nginx/:ro \
    -v /root/container/nginx/log:/var/log/nginx \
    -p 80:80 \
    -d nginx

上面的容器,映射了宿主机的 80 端口。可以在浏览器中打开如下载址,查看是否部署成功:

http://<;host_ip>:80

看到熟悉的欢迎语,就表示搭建成功:

Welcome to nginx!

标签: nginx

添加新评论