Docker进入容器运行命令

1、启动容器

ubuntu 镜像为例:

docker run -d --name my_ubuntu_container ubuntu:latest sleep infinity

解释:

  • docker run:创建并启动一个新容器。
  • -d:后台运行容器(detached mode)。
  • --name my_ubuntu_container:为容器指定一个名称。
  • ubuntu:latest:使用 ubuntu 镜像的最新版本。
  • sleep infinity:让容器持续运行而不会退出。

2、进入容器

2.1、进入使用 bash 的容器

当使用`docker exec`命令进入容器后,每次退出容器时回到主机的行为是默认的行为。这是因为`docker exec`是一个临时性的进入容器的操作,并不会改变容器的配置或状态。因此,每次执行`docker exec`命令后,退出容器后会自动回到主机。 引用中提到了一个问题,即在进入容器后发现nginx配置文件找不到的情况。这可能是由于容器内的`/etc/nginx`目录为空导致的。解决这个问题的一种方法是通过挂载宿主机的nginx配置文件到容器内的`/etc/nginx`目录,确保容器内的nginx配置文件和宿主机的一致。 引用中提到了另一个问题,即容器内的目录被覆盖成空目录的原因。为了避免容器内的文件或目录被覆盖,可以使用`--mount`选项来挂载宿主机的目录到容器内。这样做可以保留容器内原有的文件,并且避免了使用`docker cp`命令补全文件带来的权限问题。 总之,无论是使用`docker exec`命令进入容器,还是使用`--mount`选项挂载宿主机的目录到容器内,退出容器后都会自动回到主机。这是Docker的默认行为,方便用户在容器和主机之间进行操作和切换。 : 容器退出,日志报错,nginx.conf配置文件找不到 : 所谓的映射其实是将宿主机的目录挂载到了容器内,容器内原来目录里的文件没有被删除。如何让容器内文件或目录不被“覆盖”像之前docker cp补全文件的方法,不是长久之计,因为这样做往往会跟着出现文件权限的问题。所以用--mount选项更合适。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Dreams°123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值