Задать вопрос
@RELT1N
Системный администратор идущий к DevOps

Есть ли способ безопасно обновить nextcloud в docker?

Добрый день, на новом месте работы в наследство достался nextcloud который без обновления уже 4 года
665edd1f3b66f720182441.png
хотел бы узнать, возможно у кого то был подобный опыт, как можно безопасно сделать обновление, вот такая структура файлов:

/home/robodocker/nextcloud
├── app
| └── Dockerfile
| └── redis.config.php
├── db.env
└── docker-compose.yml

docker-compose.yml
version: '3'

services:
  db:
    image: mariadb
    command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
    restart: always
    volumes:
      - db:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=SuperMySQLSCS-aeropass
    env_file:
      - db.env

  redis:
    image: redis
    restart: always

  app:
    build: ./app
    restart: always
    ports:
      - 5678:80
    volumes:
      - nextcloud:/var/www/html
    environment:
      - MYSQL_HOST=db
    env_file:
      - db.env
    depends_on:
      - db
      - redis

  cron:
    build: ./app
    restart: always
    volumes:
      - nextcloud:/var/www/html
    entrypoint: /cron.sh
    depends_on:
      - db
      - redis

volumes:
  db:
  nextcloud:


db.env
MYSQL_PASSWORD=PASSWORD
MYSQL_DATABASE=DATABASE
MYSQL_USER=USER


Dockerfile
FROM nextcloud:apache
COPY redis.config.php /usr/src/nextcloud/config/redis.config.php


redis.config.php
<?php
$CONFIG = array (
  'overwrite.cli.url' => 'https://home.secret-domain.com',
  'overwriteprotocol' => 'https',
  'memcache.locking' => '\OC\Memcache\Redis',
  'redis' => array(
    'host' => 'redis',
    'port' => 6379,
  ),
);
  • Вопрос задан
  • 372 просмотра
Подписаться 1 Средний 7 комментариев
Пригласить эксперта
Ответы на вопрос 1
akelsey
@akelsey
- сделать бэкап БД
- развернуть тестовую VM (лучше с Desktop - выбор дистрибутива на ваш вкус )
- подделать через hosts файл домены на данной машине
- развернуть докер
- далее добится что всё взлетело, понимание пришло, к миграции готов
- предупредить пользователей, сделать новый бэкап, потушить, обновить.
- если вдруг не взлетело, вернуть как было - понять что не так, обновить план, начать всё с начала.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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