如何更新 azerothcore-wotlk docker 容器

How to update azerothcore-wotlk docker container

我是 运行 Azerothcore-WOTLK 在 docker 跟随官方 installation guide for AzerothCore using Docker containers 我想知道如何更新 Azerothcore 构建以及如何在不丢失的情况下应用数据库更新字符数据。

要更新 docker 容器,我想我应该从 Github 中提取最新代码并使用 docker-compose downdocker-compose up 重建容器,但我该如何制作确定我的角色数据在更新后仍然存在吗?

要更新数据库,我假设我应该应用找到的所有 SQL 更新 here,但是 db_assembler.sh 是否可用于 docker 容器和如果是,我该如何使用它?在任何更新之前备份数据库重要部分的过程是什么?

更新:自 2021 年 4 月 22 日起,AC 中的 Docker 系统已经过重新设计,并且有一个新的(简化的)程序来安装和更新它,可在官网.

https://www.azerothcore.org/wiki/Install-with-Docker#how-to-keep-your-azerothcore-updated-with-the-latest-changes


旧答案

  1. 使用 docker-compose stop CONTAINER_NAME 停止您的 worldserverauthserver 容器。

例如:

docker-compose stop azerothcore-wotlk_ac-worldserver_1

要查看容器的名称,请使用 docker ps

正如 FAQ 提到的那样,不要使用 docker-compose down 销毁 容器,而不仅仅是停止它们。

  1. 将您的源更新到最新版本(即 git pull

  2. 使用 ./bin/acore-docker-build 重建源代码(现在被 ./acore.sh docker build 取代)

  3. Update your DB 和平时一样。

  4. 使用 docker-compose start

    再次启动您的容器

更具体地说,关于与数据库相关的问题:

but is the db_assembler.sh usable for the docker container and if it is, how do I use it? What is the procedure for backing up important parts of the database before any update?

与传统设置没有区别。当您使用 Docker 时,您的数据库位于 运行 内的 docker 容器中,该容器包含 MySQL-server。因此,您可以访问、更新、备份等...您的数据库与直接在主机上安装 MySQL-server 的方式完全相同。

如官方指南所述,要访问它:

Use root as user and 127.0.0.1 as default host. The default password of the root DB user will be "password".