docker 启动 nginx 服务

docker run -d -p 80:80 --restart=always  nginx:latest

参数说明:

run 启动某个镜像

-d 让容器在后台运行

-p 指定端口映射,宿主机的80端口映射到容器的80端口

--restart 重启模式,设置 always,每次启动 docker 都会启动 nginx 容器。

由于我本地没有 nginx:latest 的镜像,同样会先去镜像市场下载。启动完成打开 http://localhost:80 就能立马看到 nginx 的欢迎页面。

如果想修改欢迎页面,可以进入到容器内修改页面。

首先查看docker容器的状态

docker ps -a

docker exec -it 98a658d89b13 bash

参数说明:
exec 对容器执行某些操作

-it 让容器可以接受标准输入并分配一个伪tty

98a658d89b13 是刚刚启动的 nginx 容器唯一标记

bash 指定交互的程序为 bash

nginx 默认文件路径是 /usr/share/nginx/html/index.html ,直接用 echo 写入内容即可。

echo '<h1>Hello Docker<h1/>' > /usr/share/nginx/html/index.html

ctrl + D 退出容器,重新访问 localhost:80 即可看到 Hello Docker。

每次修改内容都需要手动进入容器,太过繁琐,并且上面提到了,对容器的直接修改不会持久保存,如果容器被删,数据也会跟着丢失。

(由于之前的 demo 已经占用了 80 端口,咱们先 kill 掉它。)

docker kill 98a658d89b13

Docker 提供数据挂载的功能,即可以指定容器内的某些路径映射到宿主机器上,修改命令,添加 -v 参数,启动新的容器。

docker run -d -p 80:80  -v ~/docker-demo/nginx-htmls:/usr/share/nginx/html/ --restart=always  nginx:latest

启动成功之后,docker 会帮你生成目录 ~/docker-demo/nginx-htmls,现在里面什么都没有,添加个 index.html。

再次打开 http://localhost:80, 同样能看到 Hello Docker。

 

 

参考:https://juejin.im/post/5c2c69cee51d450d9707236e#comment

转载于:https://www.cnblogs.com/zyl-Tara/p/10330740.html

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值