Прогресс загрузки с помощью чистого PHP/AJAX?

Похоже, это стандартное поведение docker-workflow-plugin в jenkins. [FIXED JENKINS-41316] Переключите «изнутри» обратно в CMD, определите, была ли точка входа плохо спроектирована # 116 https://github.com/jenkinsci/docker-workflow-plugin/pull/116

мы запускаем любой процесс, указанный в изображении (даже sh -c). Их целью является That will break in most images, since for this purpose we need to start a container, pause it while we exec some stuff, and then stop it, without having to guess what its “main command” might run and when it might exit on its own. That is why we cat (I also have considered sleep infinity or some POSIX-compliant variant).

blockquote>

https://issues.jenkins-ci.org / browse / JENKINS-39748

код здесь: https://github.com/jenkinsci/docker-workflow-plugin/blob/50ad50bad2ee14eb73d1ae3ef1058b8ad76c9e5d/src/main/java/org/ jenkinsci / plugins / docker / workflow / WithContainerStep.java # L184

Они хотят, чтобы контейнер / / зависал до тех пор, пока не будет убит * /.


Исходный ответ:

Вы попытаетесь запустить без опции -d (что означает запуск в фоновом режиме)

docker run -it --entrypoint=/bin/bash hashicorp/terraform:full

Затем вы можете войти в контейнер, чтобы запустить все, что вы хочет.

Возьмем nginx в качестве примера:

docker run -it --entrypoint=/bin/bash nginx
root@e4dc1d08de1d:/# ls
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
root@e4dc1d08de1d:/# cat /var/log/
apt/      btmp      dpkg.log  faillog   lastlog   nginx/    wtmp
root@e4dc1d08de1d:/# cat /var/log/faillog
root@e4dc1d08de1d:/#

8
задан Abraham Vegh 17 March 2009 в 05:13
поделиться

6 ответов

Если Вы можете добавить пакеты PECL в свой PHP, существует uploadprogress пакет.

Самый простой путь состоял бы в том, чтобы просто использовать swfupload, все же.

1
ответ дан 5 December 2019 в 20:20
поделиться

Контроль Ваших загрузок файла с PHP/Javascript требует расширения PECL:

uploadprogress

Хороший пример кода должен был отобразиться, продвижение к Вашим пользователям:

Загрузчик Uber

Если я не ошибаюсь, это использует JQuery для общения с PHP.


Вы могли также записать это сами, It не тот комплекс.

Добавьте скрытый элемент как первый элемент формы загрузки, названной UPLOAD_IDENTIFIER.

Опросите Сценарий PHP, который звонит uploadprogress_get_info( UPLOAD_IDENTIFIER ) Это возвращает массив, содержащий следующее:

time_start     - The time that the upload began (unix timestamp),
time_last      - The time that the progress info was last updated,
speed_average  - Average speed in bytes per second,
speed_last     - Last measured speed in bytes per second,
bytes_uploaded - Number of bytes uploaded so far,
bytes_total    - The value of the Content-Length header sent by the browser,
files_uploaded - Number of files uploaded so far,
est_sec        - Estimated number of seconds remaining.

Позвольте PHP возвратить информацию JavaScript, и у Вас должно быть много информации. В зависимости от аудитории Вы не будете, вероятно, использовать всю доступную информацию.

5
ответ дан 5 December 2019 в 20:20
поделиться

Если у Вас есть установленный APC (и этой точкой, Вы действительно должны; это будет стандартно в PHP6), это имеет опцию включить отслеживание загрузки. Существует некоторая документация, и Rasmus записали пример кода, который использует YUI.

2
ответ дан 5 December 2019 в 20:20
поделиться

Есть ли какой-либо путь, только с помощью смеси HTML, JavaScript/AJAX, и PHP, для создания отчетов о фактическом прогрессе загрузки файла?

Я не знаю ни о каком способе контролировать плоскость HTML (multipart/form-data) загрузки файла в загруженном веб-сервером PHP.

У Вас должен быть доступ к прогрессу multipart/form-data синтаксического анализатора, поскольку данные входят, но это выглядит невозможным, потому что способы получить доступ к телу Запроса HTTP от PHP ($HTTP_RAW_POST_DATA и php://вход) документируются как являющийся “не доступный с enctype = "multipart/form-data"”.

Вы могли сделать помогшую со сценарием загрузку файла в Firefox с помощью поля загрузки FileList для захвата содержания файла для представления сегментированным или немногослойным способом. Все еще набор работы для парсинга все же.

(Вы могли даже выполнить Сценарий PHP как автономный сервер на другом порте только для получения загрузок файла, с помощью собственного обрабатывающего HTTP кода. Но это - огромный объем работы для относительно небольшого усиления.)

1
ответ дан 5 December 2019 в 20:20
поделиться

Я рекомендовал бы Вам пяти FancyUpload попытку, это - действительно прохладное решение для индикатора выполнения, и это не necesarely, присоединенный к php. Контроль также другие инструменты по digitarald.de

удачи

0
ответ дан 5 December 2019 в 20:20
поделиться

По моему скромному мнению, это - проблема, которую должны решить веб-браузеры. У нас есть метр прогресса для загрузок, итак, почему не для загрузок также?

Смотрите на это, например:

http://www.fireuploader.com/

-1
ответ дан 5 December 2019 в 20:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: