docker run与docker exec命令细节(以简单修改默认界面为例子)

docker run 命令细节

docker run [参数] 镜像名/唯一id
-d代表后台启动,使用docker ps 会打印容器的完整id
–name 给容器起个名字,如果不使用–name则系统给出一个随机名字,

浏览器如何访问容器

原因:我们启动的容器是运行在我们自己的环境中的,每一个容器互相隔离且在主机中运行,每一个容器都拥有自己完整的文件系统,run启动就相当于将镜像安装到容器里边,采用80端口,想要访问这个镜像的话要访问主机中的相应容器,直接从浏览器访问是不现实的。
解决方法:
-p 外部端口:内部端口
访问指定外部端口就等同与访问指定内部端口------端口映射
例如:docker run -d --name myj -p 80:80 nginx
输出:全部id,
docker ps
输出的ports中显示0.0.0.0:80->80/tpc表示任何IP访问80端口就是容器内部的命令

如果再启动一个容器,内部能否再次使用80端口,外部继续使用80端口?

外部端口80可以重复,因为外部端口是占用主机的同一个机器只能拥有一个端口
内部端口也是可以重复的,因为主机内部的容器是相互隔离的,我有我的80端口,他有他的80端口,启动一个容器类似于构建一个虚拟机

docker exec 命令细节

如果要修改页面,就需要使用docker exec进入容器里,在容器中有一个文件路径存放默认页,那如何寻找默认页呢?此镜像的官方文档/hub.docker.com,介绍页面中有static content
docker exec -it 容器名或唯一id /bin/bash
-it参数表示以交互模式
/bin/bash表示使用交互模式使用bash控制台
此时就会进入容器当中,容器相当于一个极简的Linux,可以使用ls查看目录结构,
在其中修改页面时使用输出excho “内容” >index
cat 页面文件路径,查看结果
使用exit推出容器进入主机

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值