How can I pass the argument to docker-compose.yml using shell file -


i have docker-compose.yml follows:

version: '2'  services:   eureka-server:     image: some-dtr-name/some-orgname/some-reponame:some-versionname     mem_limit: somememory     environment:       spring_profiles_active: some-profile       java_opts: -xms256m -xmx512m     ports:     - "some-port:some-port"     restart:     networks:     - cloud  networks:   cloud:    driver: bridge 

i want pass some-dtr-name,some-orgname,some-reponame,some-versionname,somememory,some-profile,some-profile,some-port aurgument docker-compose file. doing task using shell file.

#!/bin/bash some-dtr-name="$1" some-orgname="$2" some-reponame="$3" some-versionname="$4" somememory="$5" some-profile="$6" some-profile="$7" some-port="$8"  docker-compose 

how can task ??

docker compose supports environment variable substitution, using ${} syntax: https://docs.docker.com/compose/compose-file/#variable-substitution

so if have environment variable some_port defined, before run docker-compose, can refer ${some_port} in docker-compose file.

ports: - "${some_port}:${some_port}" 

another thing note variable names in sample code contain dashes -, not valid in bash

name word consisting of alphanumeric characters , underscores, , beginning alphabetic character or underscore. referred identifier.

you have use underscore character _ instead.


Comments

Popular posts from this blog

Command prompt result in label. Python 2.7 -

javascript - How do I use URL parameters to change link href on page? -

amazon web services - AWS Route53 Trying To Get Site To Resolve To www -