multi-line command line in bash fails while equal one line command line succeeds

Advertisements

I try to figure out why the following command fails

docker run \
  --rm \
  --name somedb \
  -v "$(pwd)/database:/var/lib/mysql/" \
  -p "3306:3306" \
  -e MARIADB_USER=dbuser \ 
  -e MARIADB_PASSWORD=dbuserpwd \
  -e MARIADB_ROOT_PASSWORD=rootpwd \
  -d \
  mariadb:10.10-jammy

with the message:

docker: invalid reference format.
See 'docker run --help'.
-e : commande introuvable    ## command could not be found in french

while the equivalent one line command line

docker run --rm --name somedb -v "$(pwd)/database:/var/lib/mysql/" -p "3306:3306" -e MARIADB_USER=dbuser -e MARIADB_PASSWORD=dbuserpwd -e MARIADB_ROOT_PASSWORD=rootpwd -d mariadb:10.10-jammy

succeeds.

>Solution :

There’s a space after your -e MARIADB_USER=dbuser \

This worked

docker run \
  --rm \
  --name somedb \
  -v "$(pwd)/database:/var/lib/mysql/" \
  -p "3306:3306" \
  -e MARIADB_USER=dbuser \
  -e MARIADB_PASSWORD=dbuserpwd \
  -e MARIADB_ROOT_PASSWORD=rootpwd \
  -d \
  mariadb:10.10-jammy

Leave a ReplyCancel reply