linux - docker 容器第一次执行完成后如何自定义其卷和端口?

标签 linux docker google-cloud-platform dockerfile centos7

我是 docker 的新手(容器化的东西)。我正在尝试在 GCP(CentOS 7 实例)中学习 docker,并将我的简单交互式 python 程序容器化。我成功地为我的 python 程序创建了一个 docker 镜像。

我的疑问是当我运行时

docker run -it my image name



一个容器以一个名为“classy-brown”的随机名称旋转起来
我的程序成功执行......这没有问题。

问题是,有没有办法为我现有的容器添加端口和容量,即(“classy-brown”)

每次我运行这个命令时

docker run -it my image name



创建了一个新容器?为什么它要我这样做?

这个你能帮我吗。

最佳答案

不,您不能在已创建的容器上设置卷或端口。您可以使用 docker start -it <container_id> or <conatiner_name>以交互方式多次使用容器。

如果你想在容器上设置一个卷或端口,你应该在容器创建过程中使用 docker run像这样的命令;

docker run -p 80:80 -v /home/somedir:/foo --name my_container

如果您想反复使用同一个容器,只需使用 docker start命令。
docker start -it my_container

请注意,-itdocker start 上进行交互式访问或 docker run .如果您不想使用 tty 访问容器只需省略 -it标志。

如果要访问已经运行的容器,可以使用 docker exec命令。有关它的更多信息,您可以找到 here .

关于linux - docker 容器第一次执行完成后如何自定义其卷和端口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59418876/

相关文章:

google-app-engine - 使用 Google App Engine 设置登台环境

ssh - 在 Google Compute 上设置外部授权 key

具有构建输出且无源的 Docker 容器

google-app-engine - 如何防止谷歌云平台 2021 中的超额计费

linux - 在 openstack 上安装多个实例时没有免费的 nbd 设备

node.js - NodeJS 包管理

c++ - 如何在 Linux 上使用 QProcessEnvironment 设置代理地址?

linux - 如何在 Linux 中获取网络掩码

Windows 的 docker --volume 格式

docker - 没有为监听器 PLAINTEXT ://:TCP 定义安全协议(protocol)