Как добавить разрешение на запись в версию приложения Google Cloud?

#google-app-engine #google-cloud-platform #google-cloud-storage #file-permissions #matomo

#google-app-engine #google-облачная платформа #google-облачное хранилище #файл-разрешения #matomo

Вопрос:

Должен ли я пытаться настроить проект matomo в Google App Engine?

Я закончил с успешным развертыванием приложения в Google Cloud App Engine и создаю идеальную версию приложения. Я развертываю приложение с помощью приведенной ниже команды.

 gcloud app deploy
  

После того, как я запустил приложение, но оно показывает ошибку разрешения в matomo.

Как я могу изменить права доступа к файлам в каталоге workspace, чтобы разрешить запись в него?

У меня есть прикрепленный скриншот ошибки ниже.

Скриншот ошибки Matomo

Комментарии:

1. Вы используете App Engine standard или Flex? попробуйте ‘Chmod 777 /workspace /temp /’, чтобы предоставить права на эту папку?

2. Я использую стандартный движок приложений. Я не нашел ‘/ workspace / temp /’ в облачной оболочке. Не могли бы вы, пожалуйста, дать мне инструкции или что-нибудь о том, как найти этот каталог?

3. Я запускаю команду ‘chmod’, но она приведена ниже с ошибкой. chmod: не удается получить доступ к ‘/workspace / temp /’: нет такого файла или каталога

4. Я просматриваю ТРЕБОВАНИЯ MATOMO . Для базы данных требуется суперроль для пользователей, что означает, что облачный SQL не будет соответствовать требованиям, для базы данных я рекомендую вам создать экземпляр GCE и установить MySQL DB. Также для процессора и оперативной памяти вы можете продолжать использовать App Engine, но смонтировать корзину Google Cloud Storage в качестве диска или использовать экземпляр GCE и установить Ngnix, но при этом смонтировать корзину GCS. Это может быть рекомендуемая инфраструктура GCP для MATOMO.

Ответ №1:

Вы не можете! Оно бессерверное, и вы запускаете код в изолированной среде. Доступен для записи только /tmp каталог, и это каталог в памяти. Это означает 2 вещи:

  • Если вы храните слишком много данных, ваш экземпляр выходит из строя
  • Когда ваш экземпляр выходит из строя (масштабирование до 0, обслуживание, …), все данные теряются.

Чтобы быстро устранить проблему, используйте каталог /tmp. И оцените влияние отказа от сохранения этих данных и занимаемое пространство в памяти.

Комментарии:

1. Нет, это не работает. Я изменяю каталог cache Tracker на tmp directory, но он возвращает ту же ошибку, поскольку у вас нет разрешения на запись в этот каталог.

2. Почему вы используете обратную косую черту? косая черта должна быть use /tmp . Более подробно здесь о каталоге с возможностью записи в app engine

3. Спасибо за ваш ответ, сэр, здесь /tmp используется временная папка версии приложения, но мне нужна временная папка моего проекта matomo, доступная для записи.

4. Файл /tmp доступен для чтения и записи. Но данные не являются постоянными и не распределяются между всеми экземплярами App Engine (если их много). В бессерверных продуктах (облачный запуск и облачная функция также) невозможно иметь другую папку, доступную для записи. Измените свой matomo conf на запись в нем (если возможно, я не знаю этот продукт)

5. Спасибо за ваш ответ, сэр, я меняю matomo conf на запись в каталог, но все та же проблема возвращается как недоступная для записи. снимок экрана с ошибкой