Kungenzeka ukuthi uyazibuza - kungani i-Docker ikhona lapha? Yini inkinga ngokungena ku-interface yewebhu ye-ILO bese uhlela iseva yakho njengoba kudingeka?
Yilokho engikucabange lapho benginika amaseva ambalwa amadala angadingekile ebengidinga ukuwafaka kabusha (okuthiwa ukuphinda kwenziwe kabusha). Iseva ngokwayo itholakala phesheya kwezilwandle, okuwukuphela kwento etholakalayo isixhumi esibonakalayo sewebhu. Nokho, ngokufanele, bekufanele ngiye ku-Virtual Console ukuze ngiqhube imiyalo ethile. Kulapho kwaqala khona.
Njengoba wazi, i-Java ivamise ukusetshenziselwa izinhlobo ezahlukahlukene zama-virtual consoles, kungaba ku-HP noma ku-Dell. Okungenani kwakunjalo ngaphambili (futhi izinhlelo zindala kakhulu). Kodwa iFirefox neChrome bayeka ukusekela lawa ma-applet kudala, futhi i-IcedTea entsha ayisebenzi nalezi zinhlelo. Ngakho-ke, izinketho eziningi zavela:
1. Qala ukwakha i-zoo usebenzisa iziphequluli nezinguqulo ze-Java emshinini wakho, le nketho ibingasadingeki. Asikho isifiso sokugcona uhlelo ngenxa yemiyalo embalwa.
2. Yethula okuthile okudala impela emshinini we-virtual (kuvele ngokuhlolwa ukuthi udinga i-Java 6) futhi ulungiselele konke okudingayo ngayo.
3. Okufanayo nephuzu lesi-2, kuphela esitsheni, njengoba ozakwabo abaningana bahlangabezane nenkinga efanayo futhi kulula kakhulu ukubadlulisela isixhumanisi esitsheni ku-Dockerhub kunesithombe somshini obonakalayo, nawo wonke amaphasiwedi, njll.
(Eqinisweni, ngithole iphuzu lesi-3 kuphela ngemuva kokwenza iphuzu 2)
Sizokwenza iphuzu 3 namuhla.
Ngigqugquzelwe ikakhulukazi amaphrojekthi amabili:
1.
2.
Ngokuyisisekelo iphrojekthi yokuqala
Okokuqala, ake sifake amaphakheji adingekayo - i-Java 6 ne-IcedTea:
RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.list &&
apt-get update &&
apt-get -y upgrade &&
apt-get -y install firefox
nano curl
icedtea-6-plugin
icedtea-netx
openjdk-6-jre
openjdk-6-jre-headless
tzdata-java
Manje okumele ukwenze nje ukuya ekhasini le-interface ye-ILO bese ufaka igama lakho lomsebenzisi nephasiwedi. Yethula iFirefox ku-autostart:
RUN bash -c 'echo "exec openbox-session &" >> ~/.xinitrc' &&
bash -c 'echo "firefox ${HILO_HOST}">> ~/.xinitrc' &&
bash -c 'chmod 755 ~/.xinitrc'
I-HILO_HOST imvelo eguquguqukayo iqukethe ikheli lewebhu lesixhumi esibonakalayo se-ILO, isibonelo
Ukuze ungene ngemvume ngokuzenzakalelayo, masingeze ukugunyazwa. Ukungena ngemvume ku-ILO kwenzeka ngesicelo esivamile se-POST, njengomphumela wokuthi uthole i-JSON session_key, bese uyidlulisela esicelweni se-GET:
Masibale i-session_key nge-curl uma i-HILO_USER kanye ne-HILO_PASS eguquguqukayo yemvelo ichazwa:
export HOME=/config
export HILO_HOST=${HILO_HOST%%/}
SESSION_KEY=""
data="{"method":"login","user_login":"${HILO_USER}","password":"${HILO_PASS}"}"
if [[ -n "${HILO_USER}" && -n "${HILO_PASS}" ]]; then
SESSION_KEY=$(curl -k -X POST "${HILO_HOST}/json/login_session" -d "$data" 2>/dev/null | grep -Eo '"session_key":"[^"]+' | sed 's/"session_key":"//')
fi
echo "SESSION_KEY=$SESSION_KEY"
echo $SESSION_KEY > /session_key
Uma sesiqophe i-session_key kudocker, singakwazi ukwethula i-VNC:
exec x11vnc -forever -create
Manje simane sixhuma nge-VNC ku-port 5900 (noma enye into oyikhethayo) ku-localhost bese siya kukhonsoli ebonakalayo.
Yonke ikhodi isendaweni yokugcina
Umyalo ogcwele wokuxhuma ku-ILO:
docker run -d --rm --name ilo-client -p 5900:5900 -e HILO_HOST=https://ADDRESS_OF_YOUR_HOST -e HILO_USER=SOME_USERNAME -e HILO_PASS=SOME_PASSWORD sshnaidm/docker-ilo-client
lapho i-ADDRESS_OF_YOUR_HOST kuyigama lomsingathi we-ILO, SOME_USERNAME iwukungena ngemvume futhi, ngokufanelekile, SOME_PASSWORD iphasiwedi ye-ILO.
Ngemuva kwalokho, vele uvule noma yiliphi iklayenti le-VNC ekhelini: vnc://localhost:5900
Izicelo zokwengeza nokudonsa zamukelekile.
Iphrojekthi efanayo ikhona yokuxhuma ku-IDRAC kokusebenzelana kwemishini ye-DELL:
Source: www.habr.com