Docker mudziyo wekutonga HP maseva kuburikidza neILO

Iwe unogona kunge uchinetseka - nei Docker iripo pano? Dambudziko nderei nekupinda muILO web interface uye kuseta server yako sezvinodiwa?
Ndozvandaifunga pavakandipa akati wandei ekare asina basa maseva andaida kudzosera (izvo zvinonzi reprovision). Iyo sevha pachayo iri mhiri kwemakungwa, chinhu chega chiripo iwebhu interface. Zvakanaka, saizvozvo, ndaifanira kuenda kuVirtual Console kuti ndimhanye mimwe mirairo. Ndipo pazvakatangira.
Sezvaunoziva, Java inowanzo shandiswa kune akasiyana siyana emhando consoles, ingave muHP kana Dell. Zvirinani ndizvo zvazvaimboita (uye masisitimu acho akasakara). Asi Firefox neChrome zvakamira kutsigira maapuro aya kare kare, uye IcedTea itsva haishande neaya masisitimu. Naizvozvo, sarudzo dzinoverengeka dzakabuda:

1. Tanga kugadzira nzvimbo inochengeterwa mhuka kubva kumabhurawuza uye neshanduro dzeJava pamushini wako, iyi sarudzo yanga isingachadiwi. Iko hakuna chishuwo chekuseka sisitimu nekuda kwemimwe mirairo.
2. Tanga chimwe chinhu chekare pamushini chaiwo (zvakazoitika kuedza kuti unoda Java 6) uye gadzirisa zvose zvaunoda kuburikidza nayo.
3. Zvakafanana nepoint 2, mumudziyo chete, sezvo vashandi vakati wandei vakasangana nedambudziko rimwe chete uye zviri nyore kwazvo kuvaendesa chinongedzo kumudziyo paDockerhub pane mufananidzo wemashini chaiwo, nemapassword ese, nezvimwe.
(Muchokwadi, ini ndakangosvika pakunongedza 3 mushure mekunge ndaita point 2)
Tichaita point 3 nhasi.

Ndakafemerwa zvakanyanya nemapurojekiti maviri:
1. docker-baseimage-gui
2. docker-firefox-java
Chaizvoizvo chirongwa chekutanga docker-baseimage-gui yatova nezvishandiso uye zvigadziriso zvekushandisa desktop desktop muDocker. Kazhinji iwe unofanirwa kutsanangura zvakajairwa zvinosiyana uye application yako ichave inowanikwa kuburikidza nebrowser (websocket) kana VNC. Mune yedu, isu tichavhura kuburikidza neFirefox neVNC; haina kushanda kuburikidza newebhu.
Kutanga, ngatiise mapakeji anodiwa - Java 6 uye 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

Iye zvino zvese zvaunofanirwa kuita kuenda kune iyo ILO interface peji uye isa zita rako rekushandisa uye password. Vhura Firefox mu autostart:

RUN bash -c 'echo "exec openbox-session &" >> ~/.xinitrc' &&
bash -c 'echo "firefox ${HILO_HOST}">> ~/.xinitrc' &&
bash -c 'chmod 755 ~/.xinitrc'

HILO_HOST nharaunda inosiyana ine kero yewebhu yeILO interface yedu, semuenzaniso myhp.example.com
Kuti tiite otomatiki kupinda, ngatiwedzerei mvumo. Kupinda kuILO kunoitika nechikumbiro chePOST chenguva dzose, semhedzisiro yaunogamuchira JSON session_key, iyo yaunozopasa muchikumbiro cheGET:
Ngativerengei session_kiyi kuburikidza ne curl kana HILO_USER uye HILO_PASS nharaunda zvinosiyana zvichitsanangurwa:

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

Kana tangonyora iyo session_kiyi mu docker, tinogona kuvhura VNC:

exec x11vnc -forever -create

Iye zvino isu tinongobatanidza kuburikidza neVNC kune port 5900 (kana chero imwe yesarudzo yako) pane localhost uye enda kune chaiyo console.
Yese kodhi iri mune repository docker-iro-client.
Murairo wakazara wekubatanidza kuILO:

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

apo ADDRESS_OF_YOUR_HOST ndiro zita rezita reILO, SOME_USERNAME ndiro rekupinda uye, saizvozvo, SOME_PASSWORD password yeILO.
Mushure meizvozvo, ingo tanga chero mutengi weVNC kukero: vnc://localhost:5900
Kuwedzera uye kudhonza zvikumbiro ndezvechokwadi, zvinogamuchirwa.

Iro purojekiti yakafanana iripo yekubatanidza kuIDRAC nzvimbo dzeDELL michina: docker-idrac6.

Source: www.habr.com

Voeg