背景:

之前博文DICOM:开源DICOM服务框架DCM4CHEE安装中曾介绍过在Windows7环境下安装部署dcm4chee。近期公司项目需要与部署到Linux系统的远端基于dcm4chee框架的DICOM服务器进行交互。由于网络问题,为了提高调试效率,就在本地Ubuntu14虚拟机中尝试安装部署了一套dcm4chee服务以及oviyam2客户端。
虽然官网对dcm4chee在Linux环境的安装介绍比较详细,但是在安装过程中还是遇到了许多问题,遂决定记录下来以备以后所用。

官方说明:

官方说明中对于Linux环境下的安装步骤与Windows系统相似,包括:
1、下载dcm4chee二进制包
我这里下载的是最新的dcm4chee-2.18.1-mysql.zip包,本地下载路径为/home/zssure/Downloads/dcm4chee-2.18.1-mysql.zip
在Ubuntu的Terminal终端中输入:sudo unzip dcm4chee-2.18.1-mysql.zip即可完成解压。
2、下载JBoss
因为dcm4chee是托管在JBoss AS服务器的应用,因此需要下载相应的JBoss服务端。
这里为了省去麻烦,直接在官网下载JBoss 4.2.3.GA版本。本地路径依然是/home/zssure/Downloads/,随后输入sudo unzip jboss-4.2.3.GA-jdk6.zip进行解压。
3、拷贝JBoss启动必备文件到dcm4chee目录下
这一步的主要目的是方便后续直接在dcm4chee-XXX目录下直接启动dcm4chee,而不需要将其部署到单独的JBoss目录下。
进入dcm4chee-2.18.1-mysql/bin目录,输入sudo ./install_jboss.sh /home/zssure/Downloads/jboss-4.2.3.GA即可完成拷贝。
4、安装数据库
与dcm4chee-2.18.1-mysql对应安装mysql数据库。输入sudo apt-get install mysql-server可完成mysql安装,随后按照官网指示创建pacsdb数据库即可。

Ubuntu14.01版本安装问题及解决方案:

安装JDK问题:

linux下安装jdk比较简单,但是需要注意与下载的dcm4chee版本对应,这里我需要安装JDK6版本。下载对应的JDK版本,即jdk-6u45-linux-i586.bin。对于.bin文件在安装前需要修改文件权限为可执行,输入sudo chmod 755 jdk-6u45-linux-i586.bin,随后输入sudo ./jdk-6u45-linux-i586.bin才能完成安装。

安装mysql问题:

在Ubuntu14.01本地无论是利用sudo apt-get install mysql-server还是使用软件中心安装搜索mysql进行安装,都出现如下错误提示:
 
最终在CSDN帖子找到了解决方案。

aptitude:该工具当检测到依赖的库与当前版本不一致时,aptitude 会尝试降级当前这个库的版本,同时解决降级这个库对其它软件的依赖性的影响, 最终成功安装apt-get 没法安装的软件。
终端输入sudo aptitude install mysql-server可顺利完成安装。

安装JBoss问题:

可能是由于虚拟机的问题,在本地启动dcm4chee进行测试时,一直出现8080端口被占用的情况,导致无法顺利启动dcm4chee服务。经过排查也没有找到具体原因,最终按照官方论坛的说明,修改dcm4chee默认的服务端口为8088后可以顺利启动。修改方式如下:

修改/home/zssure/Downloads/dcm4chee-2.18.1-mysql/server/default/deploy/jboss-web.deployer目录下的server.xml文件.

修改后可顺利启动dcm4chee服务。

部署Oviyam2:

官网下载Oviyam最新安装包Oviyam2.1。利用sudo unzip oviyam-2.1-bin.zip解压后,将/Oviyam-2.1-bin下的oviyam2.war文件拷贝到/home/zssure/Downloads/dcm4chee-2.18.1-mysql/server/default/deploy/目录下即可。因为JBoss支持热部署,拷贝完成后,打开浏览器输入localhost:8088/oviyam2/即可打开Oviyam2登陆界面。

配置Oviyam2的DICOM服务

Oviyam2可以方便的与dcm4chee配合,进行相关数据可视化。登陆后单击界面右上角的“settings”即可打开DICOM节点配置页面,如下图所示,我这里的设置都是采用官方默认参数,也可以根据自己实际情况进行适当修改。

配置Oviyam2的查询参数

最后即可利用Oviyam2来检索(即C-FIND)dcm4chee服务中的数据,如下图所示:
 
双击即可打开图像进行浏览

总结:

虽然Linux环境下比不上Windows可视化程度高,但是通过整个安装过程下来你会发现Linux环境下安装反而更快捷、更方便,也更容易通过脚本(诸如python)来实现自动化安装。后面博文中如果遇到跟dcm4chee相关的问题就会放到Linux(具体地说是Ubuntu14.01版本)来介绍,敬请期待。

DICOM:Ubuntu14环境下安装dcm4chee+oviyam2.1的更多相关文章

  1. ubuntu14.04英文环境下安装中文输入法

    ubuntu14.04英文环境下安装中文输入法 发表于1年前(2014-07-12 20:12)   阅读(4478) | 评论(0) 3人收藏此文章, 我要收藏 赞1 9月19日成都 OSC 源创会 ...

  2. Ubuntu14.04下安装Hadoop2.5.1 (单机模式)

    本文地址:http://www.cnblogs.com/archimedes/p/hadoop-standalone-mode.html,转载请注明源地址. 欢迎关注我的个人博客:www.wuyudo ...

  3. 在Ubuntu14.04下安装Docker CE(1) - repository篇

    从2017年3月开始,Docker开始分为社区版本和企业版,也就是Docker CE和Docker EE, 原来Ubuntu14.04下,通过sudo apt-get install docker.i ...

  4. 【转】windows环境下安装win8.1+Mac OS X 10.10双系统教程

    先要感谢远景论坛里的各位大神们的帖子  没有他们的分享我也不能顺利的装上Mac OS X 10.10! 写这篇随笔主要是为了防止自己遗忘,同时给大家分享下我的经验. 本教程适用于BIOS+MBR分区的 ...

  5. Ubuntu14.0下安装Zend Framework 2

    Ubuntu14.0下安装Zend Framework 2为了安装这个东西,忙活了快一天了,参考中文博客一直没有安装成功,有些博客的时间也是已经很早了,后来google看英文版的才安装成功,这里记录一 ...

  6. 在 windows 环境下安装 redislive

    这是一篇在 windows 环境下安装 redislive 的教程! 项目地址:https://github.com/nkrode/RedisLive 配置文档:http://www.nkrode.c ...

  7. windows环境下安装win8.1+Mac OS X 10.10双系统教程

    首先要感谢远景论坛里的各位大神们的帖子  没有他们的分享我也不能顺利的装上Mac OS X 10.10! 写这篇随笔主要是为了防止自己遗忘,同时给大家分享下我的经验. 本教程适用于BIOS+MBR分区 ...

  8. 在 xampp 环境下安装 laravel

    网上搜了很多教程,很多都是采用命令行安装的.但是对于web前端来说,根本就不知道在干吗! 于是,打算写一篇文章,来教后面的人如何在 XAMPP 环境下安装 laravel. 初步认识 XAMPP(Ap ...

  9. Linux环境下安装Tigase XMPP Server

    Tigase是一种XMPP服务器,可以作为采用XMPP协议的各种IM(Instant Messeging)工具(如Pandion.Spark等)的服务器. 在Linux环境下安装Tigase的步骤如下 ...

随机推荐

  1. 小记:事务(进程 ID 56)与另一个进程被死锁在 锁 | 通信缓冲区 资源上,并且已被选作死锁牺牲品。

    今天在做SQL并发UPDATE时遇到一个异常:(代码如下) //Parallel 类可产生并发操作(即多线程) Parallel.ForEach(topics, topic => { //DBH ...

  2. Easyui使用记录

    一天就这搞了这几行. 1. if else 可以嵌套: 2. 子页面调用父页面js,需要使用top.父页面js的方法. <script type="text/javascript&qu ...

  3. SSH框架总结(框架分析+环境搭建+实例源码下载)

    来源于: http://blog.csdn.net/shan9liang/article/details/8803989 首先,SSH不是一个框架,而是多个框架(struts+spring+hiber ...

  4. Java基础-jdk动态代理与cglib动态代理区别

    JDK动态代理 此时代理对象和目标对象实现了相同的接口,目标对象作为代理对象的一个属性,具体接口实现中,可以在调用目标对象相应方法前后加上其他业务处理逻辑. 代理模式在实际使用时需要指定具体的目标对象 ...

  5. Java基础-四要素之一《抽象》(接口)

    抽象的概念就是抽象出共同属性:成员变量和方法 定义抽象使用abstract关键字定义抽象类和方法 抽象类 abstract class 包含抽象方法的类,叫抽象类. 所以抽象类可以有private等多 ...

  6. 【CodeForces 626C】Block Towers

    题意 给你n,m,如果 n个2的倍数和m个3的倍数,这n+m个数各不相同,那么求最大的数的最小值. 分析 方法1:枚举最大值为i,直到 i/2+i/3-i/6(不重复的2或3的倍数)≥n+m,并且要i ...

  7. 【poj1009】 Edge Detection

    http://poj.org/problem?id=1009 (题目链接) 不得不说,poj上的水题还是质量非常高的= =,竟然让本大爷写了一下午. 转自:http://blog.sina.com.c ...

  8. ISO 基础之 (十三) protocol 协议

    一 简绍 protocol,简单来说就是一系列不属于任何类的方法列表,其中声明的方法可以被任何类实现.这种模式一般称为代理(delegation)模式.通过Protocol定义各种行为,在不同的场景采 ...

  9. Request.InputStream 接收Post Data

    今天 用 Request.Form /Request.Params 等怎么也获取不到客户发过来的Post 数据 后来试着用了 Request.InputStream 竟然可以 using (Syste ...

  10. Java初学(四)

    一.图解二维数组 二.图解动态创建二维数组 三.杨辉三角练习: import java.util.Scanner; class Array2Demo{ //实现杨辉三角 public static v ...