如何在docker容器中启动多个服务?

时间:2017-12-12 20:39:56

标签: docker docker-compose containers supervisord

我有一个正在运行的容器,但我手动启动了一些服务。服务是:

service httpd start
service postgresql start
service vpms start

那么,如何在不手动启动服务的情况下启动容器?截至目前我还没有任何Dockerfile。任何如何启动这些服务的例子肯定会有所帮助

1 个答案:

答案 0 :(得分:1)

具体来说,您可能希望查看docker swarm服务:

https://docs.docker.com/engine/swarm/swarm-tutorial/deploy-service/

我喜欢使用portainer管理群组服务:

https://github.com/portainer/portainer

但您也可以使用它来管理其他类型的部署,包括本地部署。

如果你只是在本地跑步,也许你很乐意单独解雇它们:

docker run --name=postgres ... postgres
docker run --link postgres:postgres --name=myapp ... myapp
docker run --link myapp:myapp ... nginx

然后在你的'myapp'容器中你可以ping postgres并将其用作你的数据库主机。在你的nginx容器中你可以ping myapp并引用它来转发http请求。