【问题标题】:Connect to WordPress Docker Container连接到 WordPress Docker 容器
【发布时间】:2015-06-23 22:30:54
【问题描述】:

我在 Azure 上创建了一个 Docker 容器应用程序,其中包括一个 WordPress 容器和一个 MySQL 容器。当我运行以下命令时:

docker run ps

我看到了两个容器。

我可以使用这个命令连接到 MySQL 容器文件系统:

docker run -i -t mysql:latest /bin/bash

如果我尝试使用相同的命令连接到 WordPress 容器文件系统,例如...

docker run -i -t wordpress:latest /bin/bash

...它不起作用。相反,它给了我这个信息:

您是否忘记 --link some_mysql_container:mysql 或设置一个 带有 -e WORDPRESS_DB_HOST=hostname:port 的外部数据库?

有道理我猜它希望我引用 MySQL 容器。但是,我尝试了各种版本的 --link 并且无法使其正常工作。

有人可以帮助我了解 Docker 语法吗?我只是想对这个容器中的文件系统进行一些更改。

提前致谢!

【问题讨论】:

    标签: ubuntu azure docker


    【解决方案1】:

    当您执行docker run ... 时,您并没有连接到docker ps 命令显示的正在运行的容器。您实际上在做的是从 docker images mysql:latestwordpress:latest 创建和运行其他容器。

    如果你想在名为compose990242913_wordpress_1的运行容器中打开一个bash shell,那么你需要执行以下命令:

    docker exec -i -t compose990242913_wordpress_1 /bin/bash
    

    进入该 shell 后,请确保通过键入 exit 命令正确退出,否则您可能会将进程留在该容器中。

    【讨论】:

    • 感谢您的详细回复。不幸的是,这对我不起作用。我收到错误消息“提供但未定义的标志:--entrypoint”。我检查了 docker exec --help 并没有将 --entrypoint 视为有效选项。任何想法为什么?
    • 您可能使用的是过时版本的 Docker。 docker version 显示了什么?
    • 客户端/API 是 1.7.0/1.19。服务器/API 也一样。
    • 我的错,docker exec 没有--entrypoint 选项。我编辑了我的答案,它仍然存在
    【解决方案2】:

    另一方面,如果您需要在交互模式下运行 Wordpress 容器(正如您所尝试的那样),您需要像这样指定 --link:

    docker run --link compose990242913_mysql_1:mysql -i -t wordpress:latest /bin/bash

    【讨论】:

      猜你喜欢
      • 2020-12-30
      • 2020-07-29
      • 1970-01-01
      • 2016-04-17
      • 1970-01-01
      • 2021-11-10
      • 2017-10-26
      • 2021-07-18
      • 1970-01-01
      相关资源
      最近更新 更多