当前位置: 首页 > 知识库问答 >
问题:

如何在Docker内运行Redis服务器和另一个应用程序?

终逸仙
2023-03-14
RUN apt-get update && apt-get -y install redis-server
RUN pip install redis
RUN redis-server
RUN nohup redis-server &

Docker“最后一个命令”已经用于:

CMD uwsgi --http 0.0.0.0:8000 --module mymodule.wsgi

共有1个答案

解飞语
2023-03-14

run命令只添加新的图像层。它们不会在运行时执行。仅在映像的生成期间。

改为使用cmd。您可以通过将多个命令外化为一个shell脚本来组合它们,该脚本由cmd调用:

CMD start.sh

start.sh脚本中,您可以编写以下内容:

#!/bin/bash
nohup redis-server &
uwsgi --http 0.0.0.0:8000 --module mymodule.wsgi
 类似资料:
  • 问题内容: 我创建了一个在Docker容器中运行的Django应用程序。我需要在Django应用程序中创建一个线程,因此我将Celery和Redis用作Celery数据库。如果我在docker映像(Ubuntu 14.04)中安装Redis: Redis服务器未启动:Django应用程序引发异常,因为端口6379上的连接被拒绝。如果我手动启动Redis,它将正常工作。 如果我使用以下命令启动Red

  • 问题内容: 目前,我在需要连接到camunda的docker容器内运行一个node.js应用程序,该容器在另一个容器中运行。 我使用以下命令启动容器 这两个应用程序现在都在运行,我可以通过在端口8000上导航到主机的IP来访问camunda,运行wget 还会返回camunda页面。使用和键入我的应用程序容器时,我无法访问camunda。相反,我得到以下错误: 当我使用将我的应用程序容器链接到ca

  • 非常简单,没有任何修饰,redis是使用一个连接附加到一个web应用程序。 创建一个redis docker容器 首先,我们先为redis创建一个Dockerfile FROM ubuntu:12.10 RUN apt-get update RUN apt-get -y install redis-server EXPOSE 6379 ENT

  • Grpc服务器似乎是使用Netty实现的。是否有使用其他实现的方法?

  • 问题内容: 如果我有另一个正在运行的apache / web-server实例,我用所有这些命令痛苦地分析了昨天的全部内容 我没有在端口8080上运行的Apache或任何其他服务器的另一个实例。 但是,XAMPP给了我这个: 我该怎么办? 我也将httpd.conf编辑为LISTEN到端口9876,并且仍然相同。 问题答案: 如果: 然后,也许有一个锁定文件位于启动要检查的地方?这些通常在/ va

  • 如果我有另一个apache/web服务器实例在运行,我已经痛苦地分析了昨天的所有内容,包括所有这些命令 我没有在端口8080上运行的Apache或任何其他服务器的另一个实例。 然而,XAMPP给了我这样的信息: 我该怎么办? 我还编辑了httpd.conf监听端口9876,仍然是一样的。