镜像地址:https://hub.docker.com/_/nginx
快速启动nginx容器
docker run -d --name nginx -p 80:80 nginx持久化配置
mkdir -p /etc/nginx/docker run -d --name tmp-nginx-container nginxdocker cp tmp-nginx-container:/etc/nginx/nginx.conf /etc/nginx/docker rm -f tmp-nginx-containerdocker run -d --name nginx -p 80:80 -v /etc/nginx/nginx.conf:/etc/nginx/nginx.conf:ro nginx持久化数据
mkdir -p /usr/share/nginxdocker run -d --name tmp-nginx-container nginxdocker cp tmp-nginx-container:/usr/share/nginx/html /usr/share/nginxdocker rm -f tmp-nginx-containerdocker run -d --name nginx -p 80:80 -v /usr/share/nginx/html:/usr/share/nginx/html:ro nginxdockerfile持久化配置和数据
FROM nginxCOPY static-html-directory /usr/share/nginx/htmlFROM nginxCOPY nginx.conf /etc/nginx/nginx.conf完整示例
#取出nginx容器默认配置文件mkdir -p /data/nginx/docker run -d --name tmp-nginx-container nginxdocker cp tmp-nginx-container:/etc/nginx/nginx.conf /data/nginx/docker cp tmp-nginx-container:/etc/nginx/conf.d /data/nginx/docker cp tmp-nginx-container:/usr/share/nginx/html /data/nginx/docker rm -f tmp-nginx-container#运行nginx容器docker run -d --name nginx -p 80:80 -e TZ=Asia/Shanghai -v /data/nginx/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/conf.d:/etc/nginx/conf.d -v /data/nginx/html:/usr/share/nginx/html -v /data/nginx/logs:/var/log/nginx nginx浏览器访问服务器80端口验证:
docker中/etc/nginx/nginx.conf默认配置文件
docker中/etc/nginx/conf.d/default.conf配置
# cat /etc/nginx/conf.d/default.confserver { listen 80; server_name localhost; location / { root /usr/share/nginx/html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; }} 配置示例创建自定义html文件
mkdir -p /data/nginx/html/docker/cat > /data/nginx/html/docker/index.html <<EOF<!DOCTYPE html><html><head><title>Docker Nginx</title></head><body>Hello Nginx Docker!</body></html>EOF创建对应配置文件
cat > /data/nginx/conf.d/docker.conf <<EOFserver { listen 80; server_name localhost; location / { root /usr/share/nginx/html/docker; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; }}EOF检查配置文件是否正确
docker exec -it nginx nginx -t配置热更新
docker exec -it nginx nginx -s reload或重启nginx容器
docker restart nginx浏览器访问验证