牛腩学docker简记

目标:在linux上装docker, nginx, 然后 配置nginx让其指向docker里的某个网站, 为了让docker能运行一个网站,所以用了docker nginx的镜像, 运行该镜像即可得到一个nginx的示例页面

步骤:
1. 买服务器,装centos
2. 本地xshell连接服务器,在上面装nginx (命令位置:/usr/local/nginx/sbin/nginx 配置文件位置:/usr/local/nginx/conf/nginx.conf)
3. 按docker官网的安装步骤在服务器上装docker,运行docker run hello-world 测试(https://docs.docker.com/install/linux/docker-ce/centos/) 4. docker pull nginx 拉取nginx镜像
5. docker run -p 10000:80 -d nginx 运行docker nginx容器,把容器里的80端口映射到外面的10000端口
6. 在外面运行 curl localhost:10000 ,应该能看到docker nginx 容器里的示例页面
7. 外面的/tmp/目录建立index.html文件
8. docker cp /tmp/index.html 容器ID:/usr/share/nginx/html 把外面的index.html文件复制到容器里的那个目录下,覆盖原来的index.html文件,注:容器ID得完整名称,16位字符那个,不能只输入前4位字符
9. 重复步骤六,看看是否成功显示新的index.html
10. 外面的nginx.conf配置文件里加上

 
        server{
            listen 80;
            server_name dockerdemo.niunan.net;
            location / {
                proxy_redirect off;
                proxy_set_header Host $host;
                proxy_ser_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_pass http://localhost:10000/;
            } 
        }
    

11. 在外面运行 /usr/local/nginx/sbin/nginx -t 检查配置问题有无错误
12. 在外面运行 /usr/local/nginx/sbin/nginx -s reload 重新加载外面的nginx配置文件

13. 在自己的电脑的浏览器上浏览 http://dockerdemo.niunan.net ,成功!!!

14. 在外面运行 ln -s  /usr/local/nginx/sbin/nginx /bin/nginx  建立软链接,这样可以在任意目录下运行nginx -t命令了,而不用每次都是先 cd /usr/local/nginx/sbin 后才能运行nginx -t命令