Wataƙila kuna mamaki - me yasa Docker ya wanzu a nan? Menene matsalar shiga ILO web interface da saita sabar ku kamar yadda ake bukata?
Abin da na yi tunani ke nan lokacin da suka ba ni wasu tsoffin sabobin da ba dole ba ne waɗanda nake buƙatar sake sakawa (abin da ake kira reprovision). Ita kanta uwar garken tana ƙetare, kawai abin da ake samu shine haɗin yanar gizo. To, saboda haka, dole ne in je Virtual Console don gudanar da wasu umarni. Daga nan aka fara.
Kamar yadda ka sani, Java yawanci ana amfani da shi don nau'ikan consoles iri-iri, ko a cikin HP ko Dell. Aƙalla wannan shine yadda ya kasance (kuma tsarin sun tsufa sosai). Amma Firefox da Chrome sun daina tallafawa waɗannan applets tuntuni, kuma sabon IcedTea baya aiki tare da waɗannan tsarin. Don haka, zaɓuɓɓuka da yawa sun fito:
1. Fara gina gidan zoo daga masu bincike da nau'ikan Java akan injin ku, ba a buƙatar wannan zaɓin. Babu sha'awar yin izgili da tsarin saboda wasu umarni biyu.
2. Kaddamar da wani abu quite tsohon a kan kama-da-wane inji (ya nuna experimentally cewa kana bukatar Java 6) da kuma saita duk abin da kuke bukata ta hanyar da shi.
3. Daidai da batu 2, kawai a cikin akwati, tun da yawancin abokan aiki sun fuskanci matsala iri ɗaya kuma yana da sauƙi don canja wurin su hanyar haɗi zuwa akwati a kan Dockerhub fiye da hoton inji mai mahimmanci, tare da duk kalmomin shiga, da dai sauransu.
(A zahiri, na sami maki 3 ne kawai bayan na yi aya ta 2)
Za mu yi aya ta 3 a yau.
Aiyuka guda biyu ne suka zaburar da ni:
1.
2.
Ainihin aikin farko
Da farko, bari mu shigar da buƙatun da suka dace - Java 6 da 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
Yanzu abin da za ku yi shi ne zuwa shafin yanar gizon ILO sannan ku shigar da sunan mai amfani da kalmar wucewa. Kaddamar da Firefox a cikin autostart:
RUN bash -c 'echo "exec openbox-session &" >> ~/.xinitrc' &&
bash -c 'echo "firefox ${HILO_HOST}">> ~/.xinitrc' &&
bash -c 'chmod 755 ~/.xinitrc'
Maɓallin yanayi na HILO_HOST ya ƙunshi adireshin gidan yanar gizon mu na ILO, misali
Don shigar da atomatik shiga, bari mu ƙara izini. Shiga zuwa ILO yana faruwa tare da buƙatun POST na yau da kullun, sakamakon haka kuna karɓar maɓalli na JSON, wanda sai ku wuce cikin buƙatun GET:
Bari mu ƙididdige maɓalli na session_key ta hanyar curl idan HILO_USER da HILO_PASS masu canjin yanayi an ayyana su:
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
Da zarar mun yi rikodin session_key a docker, za mu iya ƙaddamar da VNC:
exec x11vnc -forever -create
Yanzu muna kawai haɗi ta hanyar VNC zuwa tashar jiragen ruwa 5900 (ko duk wani zaɓinku) akan localhost kuma je zuwa na'urar wasan bidiyo mai kama-da-wane.
Duk lambar tana cikin ma'ajiyar
Cikakken umarni don haɗi zuwa 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
inda ADDRESS_OF_YOUR_HOST shine sunan mai masaukin ILO, SAME_USERNAME shine shiga kuma, saboda haka, SAME_PASSWORD kalmar sirri ta ILO.
Bayan haka, kawai kaddamar da kowane abokin ciniki na VNC zuwa adireshin: vnc://localhost:5900
Ƙari da buƙatun ja, ba shakka, maraba ne.
Akwai irin wannan aikin don haɗawa da mu'amalar IDRAC na injinan DELL:
source: www.habr.com