Hey, of course this works with docker compose. You just have to use the “command” option in the docker-compose yaml file (you can state that for each separate service).
See e.g. here: https://stackoverflow.com/questions/40210067/how-to-use-command-in-docker-compose-yml Best J Von: Xiangdong Huang <[email protected]> Datum: Mittwoch, 20. Oktober 2021 um 15:47 An: dev <[email protected]> Betreff: Re: [DISCUSS] use different docker image name for iotdb modules > Downside is that the image would be a bit bigger. Well, I think it is fine, as current image is huge because of JRE... and the 3 modules have many same files.. I think `docker run image command` is also a good solution and maybe better than my proposal :D But can docker-compose also use different command using the same docker image? Best, ----------------------------------- Xiangdong Huang School of Software, Tsinghua University 黄向东 清华大学 软件学院 Julian Feinauer <[email protected]> 于2021年10月20日周三 下午9:25写道: > > Hey, > > I agree with it (and already stumbled upon it). > > Another alternative would be to have only one image containing data for all > three modules and an entrypoint script which distinguishes what process would > really start. > > So you would just do > > ``` > docker run iotdb <-- regular > docker run iotdb cluster <-- cluster mode > docker run iotdb Grafana <-- grafana bridge > ``` > > Downside is that the image would be a bit bigger. > Advantage is that we cannot miss once but simply ship one image and that’s it. > > WDYT? > > Julian > > Von: Xiangdong Huang <[email protected]> > Datum: Mittwoch, 20. Oktober 2021 um 15:13 > An: dev <[email protected]> > Betreff: [DISCUSS] use different docker image name for iotdb modules > Hi, > > Now all iotdb's docker images are under apache/iotdb, e.g., > > - apache/iotdb:0.12.2-node for the single node module > - apache/iotdb:0.12.2-cluster for the cluster module > > and > - apache/iotdb:0.12.2-grafana for the grafana connector module > > In this way, we actually use the version of the images to distinguish > different modules. > > The advantage is that users can find all images in one webpage [1] > > The disadvantage is that it is hard to define the tag of "latest". > > The problem will be more serious when using docker-compose, for example, > we may write a docker-compose file for starting iotdb server, grafana, > iotdb-grafana-connector: > > ``` > services: > iotdb: > image: apache/iotdb:0.12.2-node > grafana-connector: > image: apache/iotdb:0.12.2-grafana > ``` > > Then we can not use "latest" and we have to maintain docker-compose > file for each version. > If we separate the docker repo into individuals, then we never do not > need to maintain the docker compose file: > > ``` > services: > iotdb: > image: apache/iotdb > grafana-connector: > image: apache/iotdb-grafana > ``` > and the docker compose file will use the "latest" version directly. > > > So, my idea is, apply 3 repos for iotdb docker images: > - iotdb, for iotdb-node > - iotdb-cluster, for the cluster module > - iotdb-grafana, for iotdb-grafana-connecotr module. > > How do you think? > > > [1] https://hub.docker.com/r/apache/iotdb > > Best, > ----------------------------------- > Xiangdong Huang > School of Software, Tsinghua University > > 黄向东 > 清华大学 软件学院
