拉取一个nginx的容器
通过dockerhub上的镜像我们可以拉去一个Nginx,并启动
docker pull nginx
docker run --name runoob-nginx-test -p 8081:80 -d nginx
runoob-nginx-test 容器名称。
the -d设置容器在在后台一直运行。
the -p 端口进行映射,将本地 8081 端口映射到容器内部的 80 端口。
运行容器:
docker run --name runoob-nginx-test -p 8081:80 -d nginx
runoob-nginx-test 容器名称。
the -d设置容器在在后台一直运行。
the -p 端口进行映射,将本地 8081 端口映射到容器内部的 80 端口。
执行以上命令会生成一串字符串,类似 6dd4380ba70820bd2acc55ed2b326dd8c0ac7c93f68f0067daecad82aef5f938,这个表示容器的 ID,一般可作为日志的文件名。
应用部署
有两种方法可以讲你自己的静态文件放到容器上行的Nginx上:
-
可以通过在还未登录nignx容器前,把需要的文件写好,然后复制到指定目录下:
docker cp hello.html c0462d5e1878://usr/share/nginx/html
-
通过主机目录映射到容器:
docker run -p 8081:80 -d -v $PWD/html:usr/share/nginx/html docker.io/nginx
参数解释
-v $PWD/html:usr/share/nginx/html 表示把当前路径下html目录映射为usr/share/nginx/html也就是说主机下的html就是容器下的usr/share/nginx/html,html内的文件修改和添加就等同于容器usr/share/nginx/html文件操作,外网访问就可以访问得到,就不用再登录容器操作文件了
PS:docker exec -it containerID /bin/bash
进入容器