繁体   English   中英

Jira 在 Docker on Apple Silicone (M1)

[英]Jira in Docker on Apple Silicone (M1)

我最近试图让本地 Jira 实例在 Apple Silicone M1 芯片上的 docker 容器中运行。

我将 Postgres 用于数据库(也尝试过 mariaDB)和我在 GitHub 上找到的 Jira arm 图像。但是,每当我 docker-compose 设置时,我都会遇到错误 500“写入数据库配置文件时出错。” Jira 和数据库容器似乎都启动良好。

我猜数据库可能无法访问,但我不知道如何检查。

TLDR:我如何检查我的数据库是否可以访问我的 Jira 容器,或者如何修复 Jira 的错误 500“写入数据库配置文件时出错”。

以下是我正在使用的撰写文件:

services:
  jira:
    dchevell/jira-software-arm64
    #image: ghcr.io/eugenmayer/jira:${JIRA_VERSION}
    depends_on:
      - db
    container_name: jirasoftwarevomeugen
    volumes:
      - jiradata:/var/atlassian/jira
    ports:
      - '80:8080'
    environment:
      - 'JIRA_DATABASE_URL=postgresql://jira@db/jiradb'
      - 'JIRA_DB_PASSWORD=jellyfish'
      - 'CATALINA_OPTS= -Xms256m -Xmx1g'
      - 'JIRA_PROXY_NAME='
      - 'JIRA_PROXY_PORT='
      - 'JIRA_PROXY_SCHEME='
      # need for the wait-for-db statement
      - 'JIRA_DB_HOST=db'
      - 'JIRA_DB_PORT=5432'

  db:
    image: postgres
    hostname: postgresql
    volumes:
      - postgresqldata:/var/lib/postgresql/data
    environment:
      - 'POSTGRES_USER=jira'
      - 'POSTGRES_PASSWORD=jellyfish'
      - 'POSTGRES_DB=jiradb'
      - 'POSTGRES_ENCODING=UTF8'
      - 'POSTGRES_COLLATE=C'
      - 'POSTGRES_COLLATE_TYPE=C'
# uncomment this to run against mysql
#  db:
#    image: mariadb:10.3
#    hostname: mysql
#    volumes:
#      - mysqldata:/var/lib/mysql
#    environment:
#      - 'MYSQL_ROOT_PASSWORD=verybigsecretrootpassword'
#      - 'MYSQL_DATABASE=jiradb'
#      - 'MYSQL_USER=jira'
#      - 'MYSQL_PASSWORD=jellyfish'
volumes:
  jiradata:
    external: false
  postgresqldata:
    external: false
  mysqldata:
    external: false
  newdb:
    external: false

当 Jira 启动时,它会尝试将配置文件写入 Jira 数据目录。 如果 Jira 用户无法写入您挂载的目录,则可能会出现此类问题。

您可能需要调查您选择的映像中 Jira 用户的 UID:GID,然后启动一个独立容器以运行 shell(它也安装 jiradata 容器),将安装目录chown -R安装到正确的用户:组(如果它不是您所期望的),然后尝试重新启动 Jira。

我在 arm 架构中进行了构建并将其上传到集线器。 您可以在此处访问它。 您可以使用以下 docker 撰写作为示例。

version: "3.1" 
    
 volumes:

   jira_volume:
   postgres_volume:

services:

  postgres:
    image: postgres:10
    ports:
      - 5435:5432
    volumes:
      - postgres_volume:/var/lib/postgresql/data
    environment:
      POSTGRES_PASSWORD: admin

  jira:
    image: yasinmert/atlassian-jira-software-arm64
    ports:
      - 7030:8080
    volumes:
      - jira_volume:/var/atlassian/application-data/jira
    environment:
      ATL_TOMCAT_CONTEXTPATH: /jira
      ATL_JDBC_URL: jdbc:postgresql://postgres:5432/jira
      ATL_JDBC_USER: postgres
      ATL_JDBC_PASSWORD: admin
      ATL_DB_DRIVER: org.postgresql.Driver
    depends_on:
      - postgres  

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM