Vă rugăm să rețineți că încă învăț Docker. Sunt la el doar de câteva zile. Cu toate acestea, încerc să lucrez cu un container Ubuntu:Latest Docker. În linia CMD am un script shell care rulează unele comenzi apoi un fișier aștept.
Fișier Shell:
#!/bin/bash
/mnt/scprime/spd /data -M gctwh &
dormi 45
așteptați /mnt/scprime/wallet.exp
Așteptați fișierul:
#!/usr/bin/expect
setați parola_mea mypass
spawn /mnt/scprime/spc deblocare portofel
așteptați „Parola portofel:” {trimiteți -- „$my_parola\r”}
interacționa
Pot rula acest script fără probleme prin bash în container. Dar când îl rulez într-un script shell în CMD, blochează containerul după ce rulează fișierul aștept. Se pare că se întâmplă după „interacționează”, deoarece executabilul spc este interactiv deoarece solicită o parolă.
Am încercat asta și încă se blochează.
#!/bin/bash
SCPRIME_WALLET_PASSWORD=pasul meu
exportați SCPRIME_WALLET_PASSWORD
/mnt/scprime/spc deblocare portofel
Am creat un script shell și se blochează pentru că este și interactiv.
#!/bin/bash
apt-get -y instalează o aplicație
Încerc să fac acest proces cât mai ușor și posibil fără a crea mai multe imagini din containerele existente după ce instalez ceva. Totuși, cu ce greșesc?