写点什么

Dcm4chee--MySql 版 Docker 镜像制作

作者:鸟哥
  • 2022 年 3 月 31 日
  • 本文字数:2323 字

    阅读完需:约 8 分钟

Dcm4chee--MySql版Docker镜像制作

Dcm4chee 官方给的镜像是 pgsql,但在实际业务中需要使用 Mysql 数据库,这里就需要使用源码或直接下载 github 上提供的 mysql 版本二进制分发包,制作 docker 镜像。

1.下载

mysql 版二进制分发包:

https://sourceforge.net/projects/dcm4che/files/dcm4chee-arc-light5/5.26.0/

dcm4che-dockerfiles:

https://github.com/dcm4che-dockerfiles/dcm4chee-arc-psql

2、准备文件

解压 dcm4che-dockerfiles/dcm4chee-arc-psql,并将二进制分发包中 deploy 文件夹 复制到 dcm4che-dockerfiles 中,将二进制分发包里 jboss-modules 中 zip 文件解压到 jboss-modules。





3.修改数据库配置

官方镜像里默认使用的是 postgresql,这里需要将数据库配置改成 mysql。

修改 dcm4che-dockerfiles/dcm4chee-arc-psql 中 configuration 里dcm4chee-arc.xmldcm4chee-arc-logstash.xml文件,将 pgsql 驱动改为 mysql。

4.LDAP

version: "3"services:  ldap:    image: dcm4che/slapd-dcm4chee:2.6.0-26.0    #端口映射    ports:        - "389:389"        - "636:636"    #卷挂载    volumes:        - /opt/openldap/ldap:/var/lib/openldap/openldap-data        - /opt/openldap/slapd.d:/etc/openldap/slapd.d    # 环境变量设置    environment:        LDAP_BASE_DN:dc=dcm4che,dc=org        LDAP_ROOTPASS:secret        ARCHIVE_DEVICE_NAME:dcm4chee-arc        AE_TITLE:DCM4CHEE        DICOM_PORT:11112        HL7_PORT:2575        STORAGE_DIR:/storage/fs1
复制代码

进入容器: docker exec -it 【CONTAINER ID】sh

验证:

1、安装 Apache Directory Studio

2、输入 IP 和 Port



3、输入 user 和 password



5.MySQL

执行 dcm4chee-arc 二进制分发包中 sql 文件夹里 sql 脚本。

  • create-mysql.sql

  • create-fk-index.sql

6.dockerfile

修改dcm4che-dockerfiles/dcm4chee-arc-psql 中 Dockerfile 文件

FROM dcm4che/wildfly:ffmpeg-24.0.1-15.1.0MAINTAINER bird/20220209ENV DCM4CHEE_ARC_VERSION 5.26.0ENV DCM4CHE_VERSION ${DCM4CHEE_ARC_VERSION}
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezoneRUN cd $JBOSS_HOME \&& chown -R wildfly:wildfly $JBOSS_HOME/modules \&& chown wildfly:wildfly *
COPY jboss-modules/dcm4che-jboss-modules-5.26.0/modules $JBOSS_HOME/modulesCOPY jboss-modules/ecs-object-client-jboss-modules-3.0.0/modules $JBOSS_HOME/modulesCOPY jboss-modules/jai_imageio-jboss-modules-1.2-pre-dr-b04/modules $JBOSS_HOME/modulesCOPY jboss-modules/jclouds-jboss-modules-2.4.0-noguava/modules $JBOSS_HOME/modulesCOPY jboss-modules/jdbc-jboss-modules-mysql-8.0.25/modules $JBOSS_HOME/modulesCOPY deploy /docker-entrypoint.d/deployments/COPY setenv.sh /COPY --chown=wildfly:wildfly configuration /docker-entrypoint.d/configuration
# Default configuration: can be overridden at the docker command lineENV LDAP_URL=ldap://ldap:389 \LDAP_BASE_DN=dc=dcm4che,dc=org \KEYSTORE=/opt/wildfly/standalone/configuration/keystores/key.p12 \KEYSTORE_TYPE=PKCS12 \TRUSTSTORE=/opt/java/openjdk/lib/security/cacerts \TRUSTSTORE_TYPE=JKS \ EXTRA_CACERTS=/opt/wildfly/standalone/configuration/keystores/cacerts.p12
复制代码

7.build

#进入目录cd  /opt/dcm4chee-arcll#执行Dockerfiledocker build -t 【镜像名】:【版本号】 .
复制代码




8、push

docker login --username=jsa****@163.com registry.cn-zhangjiakou.aliyuncs.com#重命名docker tag [ImageId] registry.cn-zhangjiakou.aliyuncs.com/i-pixel/dcm4chee-arc:[镜像版本号]#推镜像docker pull registry.cn-zhangjiakou.aliyuncs.com/i-pixel/dcm4chee-arc:[镜像版本号]
复制代码




9.run

STORAGE_DIR=/storage/fs1#这里用的DB是阿里云的RDSMYSQL_HOST=XXXXXXXXXX.mysql.xxx.rds.aliyuncs.comMYSQL_PORT=3306MYSQL_DB=pacsdbMYSQL_USER=【DB用户名】MYSQL_PASSWORD=【DB密码】ARCHIVE_HOST=gunter-dell.lan.j4care.comLDAP_URL=ldap://【IP】:【port】WILDFLY_WAIT_FOR=【IP】:【port】 XXXXXXXXXX.mysql.xxx.rds.aliyuncs.com:【port】
复制代码


version: "3"services:  arc:    image: registry.cn-zhangjiakou.aliyuncs.com/i-pixel/dcm4chee-arc:5.26.0.1    ports:      - "8080:8080"      - "8443:8443"      - "9990:9990"      - "9993:9993"      - "8787:8787"      - "11112:11112"      - "2762:2762"      - "2575:2575"      - "12575:12575"    env_file: docker-compose.env    environment:      WILDFLY_ADMIN_USER: admin      WILDFLY_ADMIN_PASSWORD: admin      WILDFLY_CHOWN: /opt/wildfly/standalone /storage      JAVA_OPTS: -Xms64m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -agentlib:jdwp=transport=dt_socket,address=*:8787,server=y,suspend=n    volumes:      - /opt/dcm4chee-arc/wildfly:/opt/wildfly/standalone      - /mnt/dicom:/storage
复制代码

执行:docker-compose up -d

进入系统:http://【IP】:8080/dcm4chee-arc/ui2/#/

导入 LDAP 配置项:sample-config.ldif:https://gitee.com/jsaltar/dcm4chee-arc-docker-image/blob/master/config/sample-config.ldif



发布于: 22 小时前阅读数: 16
用户头像

鸟哥

关注

还未添加个人签名 2021.04.25 加入

还未添加个人简介

评论 (1 条评论)

发布
用户头像
请添加个人简介哦!
4 小时前
回复
没有更多了
Dcm4chee--MySql版Docker镜像制作_Docker_鸟哥_InfoQ写作平台