如何在 Bitnami Redmine Docker 镜像中使用自定义主题

之前的文章中我详细介绍了如何使用优秀的 Bitnami docker 镜像在 Linux 上安装 Redmine。

本文向你展示如何在使用 bitnami Docker 镜像时安装自定义主题如 A1(我成功使用了 5 年多)。我们假设你将 redmine 安装在 /var/lib/redmine 并且你的 systemd 服务名为 redmine

注意:如果你收到任何权限被拒绝错误,尝试使用 sudo 运行相同的命令。

首先,我们需要创建主题目录。

mkdir_themes.sh
sudo mkdir /var/lib/redmine/themes

我们需要做的第一件事是将当前(默认)主题复制到该目录,因为如果默认主题在正确版本中不可用,Redmine 将无法启动。

为此,我们必须首先确保你的容器正在运行:

start_redmine.sh
sudo systemctl start redmine

现在我们可以找出正在运行的 redmine 容器的容器 ID:

docker_ps_example.txt
uli:/var/lib/redmine$ docker container ps | grep redmine
ae4de10d0b41        bitnami/redmine:latest    "/app-entrypoint.sh …"   30 minutes ago      Up 30 minutes   0.0.0.0:3718->3000/tcp   redmine_redmine_1
c231d11c48e9        bitnami/mariadb:latest    "/entrypoint.sh /run…"   30 minutes ago      Up 30 minutes   3306/tcp redmine_mariadb_1

从这些行中,你需要选择末尾显示 redmine_redmine_1 的行。末尾列出 redmine_mariadb_1 的行是数据库容器,我们在此任务中不需要它。

从该行复制第一列 - 这是容器 ID - 例如本例中的 ae4de10d0b41

现在我们可以复制默认主题文件夹:

docker_cp_themes.sh
docker cp ae4de10d0b41:/opt/bitnami/redmine/public/themes /var/lib/redmine/themes

现在复制你的自定义主题(例如 a1 文件夹)到 /var/lib/redmine/themes

下一步是修复权限。bitnami 容器使用 UID 为 1001 的用户,因此我们需要将所有者更改为该用户。每次你在主题目录中更改内容时都要重复此操作:

chown_themes.sh
sudo chown -R 1001:1001 /var/lib/redmine/themes

此时我们需要编辑 docker-compose 配置(在 /var/lib/redmine/docker-compose.yml 中)以将 /var/lib/redmine/themes 挂载到正确的目录。这非常简单:只需将 - '/var/lib/redmine-szalata/themes:/opt/bitnami/redmine/public/themes' 添加到 redmine 容器的 volumes 部分。

完成的配置文件将如下所示:

docker-compose.yml
services:
  mariadb:
    image: 'bitnami/mariadb:latest'
    environment:
      - ALLOW_EMPTY_PASSWORD=yes
    volumes:
      - '/var/lib/redmine/mariadb_data:/bitnami'
  redmine:
    image: 'bitnami/redmine:latest'
    environment:
      - REDMINE_USERNAME=admin
      - REDMINE_PASSWORD=redmineadmin
      - REDMINE_EMAIL=me@gmail.com
      - SMTP_HOST=smtp.gmail.com
      - SMTP_PORT=25
      - SMTP_USER=me@gmail.com
      - SMTP_PASSWORD=yourGmailPassword
    ports:
      - '3718:3000'
    volumes:
      - '/var/lib/redmine/redmine_data:/bitnami'
      - '/var/lib/redmine/themes:/opt/bitnami/redmine/public/themes'
    depends_on:
      - mariadb

现在你可以重启 Redmine:

systemctl_restart_redmine.sh
sudo systemctl restart redmine

并通过在管理 -> 设置 -> 显示中选择来设置你的新主题。


Check out similar posts by category: Container, Docker, Linux, Project Management