启动X个相同Docker容器的最佳方法

时间:2019-02-14 15:18:37

标签: docker containers

我有一个包含服务器的docker容器。

我想启动该容器的多个实例,这些实例都在不同的端口上进行侦听。我知道我可以发出多个docker run命令,这些命令适用于小数字,但是我想知道是否有更简单的方法?

2 个答案:

答案 0 :(得分:0)

您可以使用while循环来实现这一点。

i=0; while [ $i -lt no_of_times ]; do docker run -d -p 80 <image_id>; sleep 1; ((i++)); done

期待更好的解决方案。

here那里得到了这一单线

答案 1 :(得分:0)

我已经使用docker-compose scale缩放功能完成了此操作。

基本上定义了一个service并对其进行缩放。

例如,定义 docker-compose.yml

version: '3.7'

services:
  your-service:
    image: "your-image"
  ports:
    - "<port to expose>"

然后,当您要启动多个实例时执行:

docker-compose up --scale your-service=X

您还可以查看docker swarm模式,该模式允许您使用命令行定义服务