Я пытаюсь запустить несколько команд докера на моем компьютере с Linux:
1- sudo docker load -i test.tar
2- sudo docker tag bf46cff9b182 test:v1.0
3- sudo docker run -it --network host -v /home/logs:/home/test/test/logs test:v1.0
Но я хотел бы сделать runme.sh
и выполнить все за один запуск.Проблема в том, что ImageID bf46cff9b182
динамически меняется каждый раз.Так что мне нужно как-то pipe
это из вывода команды load
, что на самом деле возможно.
Вывод load
выглядит так:
Loaded image ID: sha256:bf46cff9b1829b50e28f6485c923efff94799dd84cbf747dc86f6e5d006f2a81
В Linux это выглядит так:
4f512fb4b0ea: Loading layer 5.079MB/5.079MB
Loaded image ID: sha256:b6c3df68a9365ccb0935a835aa332b29db780cb7e81eac83acf717b2 de779073
А 12
символов после sha256
будет bf46cff9b182
, что означает мой идентификатор изображения, вставленный в команду № 2 выше.
Как мне написать команду bash, чтобы сделать это автоматически?