快速学习Docker-部署静态网站

mac2026-04-02  5

设置容器的端口映射
run [-P] [-p] -P , --publish-all=true|false 默认为false :将为容器所有暴露的端口进行映射. 示例:docker run -P -i -t centos /bin/bash
-p, --publish=[ ] :给指定的端口进行映射.
方式一:containerPort 示例:docker run -p 80 -i -t centos /bin/bash 方式二:hostPort:containerPort 示例:docker run -p 8080:80 -i -t centos /bin/bash 方式三:ip::containerPort 示例:docker run -p 0.0.0.0:80 -i -t centos /bin/bash 方式四:ip:hostPort:containerPort 示例:docker run -p 0.0.0.0:8080:80 -i -t centos /bin/bash
Nginx部署流程
创建映射80端口的交互式容器安装Nginx安装文本编辑器vim创建静态页面修改Nginx配置文件运行Nginx验证网站访问
步骤
1.创建一个守护式容器,并映射容器的80端口. docker run -p 80 --name=web -it centos /bin/bash 2.进入容器后,需要安装nginx和vim,执行如下命令: yum install -y wget wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum install -y epel-release yum install -y nginx 3.在容器内部,进入到/usr/share/nginx/html 目录,修改index.html文件 vim index.html 5.运行nginx命令,启动服务 /usr/sbin/nginx6.Ctrl+P和Ctrl+Q退出容器.7.在宿主机上使用curl命令查看是否能访问. curl http://127.0.0.1:32769/index.html

其他问题:
1.使用docker inspect 容器名可以查看容器的ip地址.2.使用容器的ip也是能访问到该静态页面的.

3.使用docker stop 容器名 关闭容器.4.使用docker start 容器名 启动容器.5.使用docker top 容器名,发现重新启动容器后,nginx服务并没有重新启动.6.我们可以使用docker exec 容器名 nginx 来启动容器中的nginx服务. docker exec -it web1 /usr/sbin/nginx7.我们发现使用原来的端口映射已经访问不到了,当重新启动容器会重新给我们进行端口的映射.
最新回复(0)