docker 安装nginx

  1. # 下载nginx最新稳定版镜像 ( 版本信息可查看 https://hub.docker.com/ )
  2. docker pull nginx:stable-perl
  3. # 创建并运行容器 ( 容器起名nginx_001,本地6789映射到容器内80,-d后台运行 )
  4. docker run --name nginx_001 -p 6789:80 -d nginx:stable-perl
  5. # 如果要修改nginx配置文件需要进入到容器内部进行修改
  6. # 容器内路径为: /etc/nginx/nginx.conf
  7. # 每次修改都进入到容器内部非常麻烦,可以做个文件映射(将用的文件和目录映射到宿主机上)
  8. # 本地创建nginx目录
  9. mkdir -p /docker/nginx
  10. # nginx目录下分别创建: html目录,vhost目录,log目录
  11. mkdir -p /docker/nginx/html
  12. mkdir -p /docker/nginx/vhost
  13. mkdir -p /docker/nginx/log
  14. # 将容器内nginx配置文件复制到宿主机上
  15. docker cp nginx_001:/etc/nginx/nginx.conf /docker/nginx/nginx.conf
  16. docker cp nginx_001:/etc/nginx/conf.d/default.conf /docker/nginx/vhost/default.conf
  17. # 然后重新创建容器,删除之前已经创建的容器
  18. # 停止容器
  19. docker stop nginx_001
  20. # 删除容器
  21. docker rm nginx_001
  22. # 文件映射并创建运行新容器
  23. docker run --name nginx_001 -d \
  24. --restart=always \
  25. --privileged=true \
  26. -v /docker/nginx/html:/usr/share/nginx/html \
  27. -v /docker/nginx/nginx.conf:/etc/nginx/nginx.conf \
  28. -v /docker/nginx/vhost/default.conf:/etc/nginx/conf.d/default.conf \
  29. -v /docker/nginx/log:/var/log/nginx \
  30. -p 6789:80 \
  31. nginx:stable-perl
  32. # nginx_001
  33. 给容器起的名字
  34. # -d
  35. 后台运行
  36. # --restart=always
  37. 每次docker启动后都自动运行此容器
  38. # --privileged=true
  39. 特权容器,会多一些权限
  40. # -v /docker/nginx/html:/usr/share/nginx/html
  41. 文件映射: -v 宿主机文件:容器内文件
  42. # -p 6789:80
  43. 宿主机6789端口映射到容器内80端口
  44. # 查看运行的容器
  45. docker ps