在Alpine上运行Apache后出现SSH docker容器问题

问题描述 投票:0回答:1

我在与Docker容器的SSH会话中遇到问题。实际上,由于正在运行的进程永远无法在终端上提供帮助,因此无法执行任何命令,请参见输出:

[Thu Apr 02 19:39:46.056749 2020] [mpm_prefork:notice] [pid 7] AH00163: Apache/2.4.43 (Unix) PHP/7.3.16 configured -- resuming normal operations
[Thu Apr 02 19:39:46.057465 2020] [core:notice] [pid 7] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'

Dockerfile在Alpine上安装Apache并结束:

ENTRYPOINT [ "/opt/entrypoint.sh" ]

entrypoint.sh:

/usr/sbin/httpd -D FOREGROUND

任何提示如何使我的SSH会话正常工作并帮助我执行其他命令?谢谢。

apache docker ssh alpine
1个回答
0
投票

容器范例不促进使用链接ssh服务器的事物。核心概念是您只在容器内部托管一个隔离的进程,在本例中为“ httpd”。

您可以使用类似docker exec <container_name> <command>的命令在同一容器中执行另一个进程。例如:

docker exec myhttpd ls -la

这会将当前终端会话中的stdout和stderr连接到容器的stdout和stderr,并在容器的环境中执行命令。

这是解决问题和尝试解决问题的好方法。但是,如果您要永久更改所包含应用程序的环境,请寻找替代方法。例如使用Dockerfile。

如果您提供有关用例的更多信息,我很乐意提出建议。

© www.soinside.com 2019 - 2024. All rights reserved.