Задача 07 👨🏻💻Летняя программа 2021 г.
Описание задачи 📄
Интеграция Javascript с Docker
Задача 7.1
📌 В этой задаче вы должны создать веб-приложение для Docker (один из замечательных инструментов контейнеризации, который предоставляет пользователю платформу как услугу (PaaS)), продемонстрировав свое собственное творчество и навыки проектирования UI / UX, чтобы сделать веб-портал удобным для пользователей. .
Теперь мы собираемся создать приложение для Docker, который является одним из замечательных инструментов контейнеризации, который предоставляет пользователю платформу как услугу (PaaS). Приложение выглядит так, как показано на картинке ниже:
Теперь у каждого изображения по углам есть свои действия, которые выполняют поставленные задачи. Каждому из них поручено выполнять задачи, показанные на следующих изображениях.
Эти отдельные значки отображают действия в определенном поле для внесения некоторых изменений в приложение.
Приведенные выше изображения представляют собой изображения .png, используемые в приложениях для выполнения некоторых действий.
Код для создания
импорт cgi
подпроцесс импорта
print («тип-содержимого: текст / html»)
print ()
f = cgi.FieldStorage ()
img = f.getvalue ('i')
cname = f.getvalue ('n')
cmd = «sudo docker run -itd - name { } {} ”. Формат (cname, img)
op = subprocess.getoutput (cmd)
print (op)
Код для удаления
импорт cgi
подпроцесс импорта
print («тип-содержимого: текст / html»)
print ()
f = cgi.FieldStorage ()
cname = f.getvalue ('n')
cmd = «sudo docker rm -f {}». format (cname)
op = subprocess.getoutput (cmd)
печать (op)
Код изображения
импорт cgi
подпроцесс импорта
print («тип-содержимого: текст / html»)
print ()
f = cgi.FieldStorage ()
img = f.getvalue ('i')
cmd = «sudo docker pull {}». format (img)
op = subprocess.getoutput (cmd )
печать (оп)
Код для списка
импорт cgi
подпроцесс импорта
print («тип-содержимого: текст / html»)
print ()
cmd = ‘sudo docker ps -a | cut -d «« -f 1,2,5,4,10,8,17,18,19,40,31 ’
op = subprocess.getoutput (cmd)
print (op)
После всего этого, введя «Имя вашего изображения» и «Имя контейнера», будет создан контейнер. Назовем контейнер XYZ.
Введя команду «docker ps», вы можете убедиться, что контейнер успешно создан.
И нажав на «список всех контейнеров», он отобразит все контейнеры, которые вы создали.
Наконец, если вы хотите удалить контейнер, просто щелкните значок «Удалить контейнер» и введите имя контейнера, и он удалит контейнер, который был создан ранее. Появится сообщение о том, действительно ли вы хотите удалить контейнер. Нажимая «ОК», вы соглашаетесь удалить его.
feature.js
function create () {
solution = confirm (Вы уверены, что хотите« создать этот контейнер»);
if (solution == true) {
img = document.getElementById (C_i_name). Value;
cname = document.getElementById (c_c_name). Value;
xhr = new XMLHttpRequest ();
xhr.open ('GET', ' http://192.168.43.51/cgi-bin/create.py?i='+img+'&n='+cname,'true ');
xhr.send ();
xhr. onload = function () {
output = xhr.responseText;
document.getElementById (im). innerHTML = «;
output = output + «\ n \ n !!! Контейнер создан !!! ;
document.getElementById ( op ). InnerHTML = output;
}
}
}
function image () {
img = document.getElementById (p_i_name). value;
xhr = new XMLHttpRequest ();
xhr.open ('GET', 'http: / /192.168.43.51/cgi-bin/image.py?i='+img,'true ');
xhr.send ();
xhr.onload = function () {
output = xhr.responseText;
document.getElementById (im). innerHTML = output;
}
}
список функций () {
xhr = new XMLHttpRequest ();
xhr.open ('GET', 'http://192.168.43.51/cgi-bin/list.py','true' );
xhr.send ();
xhr.onload = function () {
output = xhr.responseText;
document.getElementById ( im ). InnerHTML = «;
document.getElementById («op). InnerHTML = output;
}
}
function del () {
solution = confirm (Вы уверены, что хотите« удалить этот контейнер»);
if (solution == true) {
cname = document.getElementById (D_c_name). Value;
xhr = new XMLHttpRequest ();
xhr.open ('GET', 'http://192.168.43.51/cgi-bin/del.py?n = '+ cname,' true ');
xhr.send ();
xhr.onload = function () {
output = xhr.responseText;
document.getElementById (Im). InnerHTML = «;
output = «Container + output + Deleted
document.getElementById (op). InnerHTML = output;
}
}
}
Вывод. Вот как мы создаем веб-приложение для Docker (один из замечательных инструментов контейнеризации, который предоставляет пользователю платформу как услугу (PaaS).