Docker学习のDocker中部署静态页网站
前言:部署一个静态页网站,我们需要
- 常见映射80端口的交互式容器
- 安装Nginx(或其他服务器)
- 安装文本编辑器vim
- 创建静态页面
- 修改Ngnix的配置文件
- 运行Ngnix
- 验证网站的防高温
一、设置容器的端口映射
访问网站需要开放端口,因此需要设置端口映射,docker的映射命令是:
run [-P][-p]
-P(大写)会对容器所有暴露的端口进行映射,-p可以指定映射的端口
命令形式:
- ContainerPort(只指定容器的端口,主机的随机映射)
docker run -p 80 -i -t ubuntu /bin/bash
- hostPort :containerport(指定宿主机和容器的端口)
docker run -p 8080:80 -i -t ubuntu /bin /bash
- ip:containerPort(容器的ip和容器的端口)
docker run -p 0.0.0.0:80 -i -t ubuntu /bin/bash
- ip:hostPort:containerPort(容器的ip 宿主机端口 容器端口)
docker run -p 0.0.0.0:8080:80 -i -t ubuntu /bin/bash
三、创建
创建docker容器 dcoker run -p 80 --name web -i-t ubuntu /bin/bash
安装nginx apt-get install -y nginx 如果提示 unale to get list 我们sudo apt-get update更新下再安装
安装vim apt-get install -y nginx
创建目录 mk dir -p var/www/html cd var/www/html 然后vim 一个index.html
查看nginx的位置 whereis nginx
查看nginx的文件的位置 ls /etc/nginx
打开default文件,修改root的位置为刚才创建网站的位置root /var/www/html;cd / 切换到根目录,输入nginx运行,ps -ef查看是否在运行
然后ctrl+p,ctrl+q退出容器,查看此容器
curl查看
以上是宿主主机访问,我们docker inspect web查看容器的ip地址为
访问成功
四、ip和端口问题
docker stop web 命令停止
docker start -i web 重新开始进入我们发现nginx没有运行(没有-i情况不会进入docker容器,而是在虚拟机)
此时可以在内部输入nginx打开nginx服务器,也可以在外部docker exec web nginx启动
查看docker top web查看容器中的进程,发现ip地址和端口都不一样了
说明:容器重新启动,IP地址和端口会改变
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧