4

确实有很好的资源描述了如何在 Ubuntu 12.04 LTS 上安装 Postgresql 和 JBoss,但信息分布在其他页面上。

但是,最好有一个步行指南来轻松安装和配置这些。

4

1 回答 1

9

准备安装

sudo apt-get install postgresql postgresql-contrib postgresql-common pgadmin3 openssh-server openssh-client

此命令将安装最新的 Postgresql、PgAdmin3、Postgresql-contrib 和 SSH 服务器包。SSH 服务器不是必需的,但最好远程管理服务器。所以我已经将它添加到安装列表中。[ 1 ]

Oracle Java JDK 和 JBoss AS 安装不是自动的。所以我们应该从他们的网站下载它们。我们将使用jdk-7u10-linux-i586.tar.gz(或更高版本)和jboss-as-7.1.1.Final.tar.gz

JDK见http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html,JBoss见http://www.jboss.org/jbossas/downloads/

或尝试 [ 2 ]下面的命令行链接。(这些链接将来可能会失效,对此感到抱歉......)

wget --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F" "http://download.oracle.com/otn-pub/java/jdk/7u10-b18/jdk-7u10-linux-i586.tar.gz"
wget "http://download.jboss.org/jbossas/7.1/jboss-as-7.1.1.Final/jboss-as-7.1.1.Final.tar.gz"

请注意,您可能想安装 OpenJDK,它在 apt-get 存储库中可用,并且是 Ubuntu 的首选。不过这是一个偏好,我想使用 Oracle 的 JDK。

可选:为 Postgresql 添加额外的语言环境支持:根据我的经验,我需要在 Postgresql 上支持土耳其语语言环境,但默认情况下它没有安装在 Ubuntu 上。以下是将土耳其语排序规则支持添加到 Ubuntu 的示例命令,从而添加到 Postgresql。[ 3 ]

sudo locale-gen tr_TR
sudo locale-gen tr_TR.UTF-8

配置 Postgresql

我们已经通过 apt-get 安装了 postgresql。现在最好对配置进行一些更改。[ 4 ]

默认情况下 Postgresql 不允许 TCP 连接。编辑 postgresql.conf(我最喜欢的编辑器是 pico)

sudo pico /etc/postgresql/9.1/main/postgresql.conf

添加

listen_addresses = '*' #Listens on all interfaces!!

或取消注释

listen_addresses = 'localhost' #More secure way to configure the server. Prefer this one if you won't connect to the server remotely

线。

如果您选择绑定到所有接口而不是本地主机,那么您将需要一个额外的配置来允许远程连接。[ 5 ] 打开 pg_hba.conf

sudo pico /etc/postgresql/9.1/main/pg_hba.conf

添加行:

host    all             all             0.0.0.0/0               md5

重新启动 Postgresql 以应用新配置。

sudo /etc/init.d/postgresql restart

现在我们将设置默认postgres用户 [ 6 ] 的密码。首先启动 postgresql 命令行。

sudo -u postgres psql

执行以下命令。[ 7 ]

postgres=# ALTER USER postgres WITH ENCRYPTED PASSWORD '<your new password>'; 

现在您可以通过 PgAdmin3 或您最喜欢的 SQL 客户端或命令行连接到您的服务器...

安装和配置 Java 和 JBoss AS 7.1.1

我选择了 /opt 目录作为我们的安装目录。只要您相应地配置脚本,您就可以自由选择自己的。首先解压JDK。

sudo tar -zxvf <Full Path to jdk-7u10-linux-i586.tar.gz> -C /opt

这会将 JDK 解压缩到 **/opt/jdk1.7.0_10* 目录。现在我们将提取和配置 JBoss AS。[ 8 ] [ 9 ]

首先为 JBoss 创建一个用户(jboss-as),模拟用户而不是直接以 root 身份运行服务器是一个好习惯。这将加强安全性。

sudo useradd -s /bin/sh jboss-as

将 jboss-as-7.1.1.Final.tar.gz解压到/opt/jboss-as-7.1.1.Final

sudo tar -zxvf <Full Path to jboss-as-7.1.1.Final.tar.gz> -C /opt

我假设您将以独立模式运行 JBoss。打开standalone.conf 添加以下行。

JAVA_HOME="/opt/jdk1.7.0_10" #show your JAVA_HOME directory to JBoss
JAVA_OPTS="$JAVA_OPTS -Djboss.bind.address=0.0.0.0" #Bind to 0.0.0.0 so that remote clients can connect to your server.

通过执行冒充jboss-as用户

sudo -su jboss-as

首先通过执行测试服务器

cd /opt/jboss-as-7.1.1.Final
./standalone.sh

它应该毫无问题地启动。使用 CTRL+C 关闭服务器。您可以在浏览器上的 8080 端口连接到服务器。

http://<your server address>:8080

现在我们将为 JBoss 创建一个管理用户。需要使用在端口 9990 上运行的管理控制台。

export JAVA_HOME=/opt/jdk1.7.0_10/
./add-user.sh
   Management User -> Select (a)
   Realm (Management Realm) -> Accept the default and press enter
   Username : -> Enter <your admin user name>
   Password : -> Enter <your password>
   Is this correct yes/no? -> Type 'yes' and press Enter
       Added user '<your admin user name>' to file '/opt/jboss-as-7.1.1.Final/standalone/configuration/mgmt-users.properties'
       Added user '<your admin user name>' to file '/opt/jboss-as-7.1.1.Final/domain/configuration/mgmt-users.properties'

从模拟的 jboss-as用户退出。

exit

现在您可以通过其 Web 界面配置您的服务器

http://<your server address>:9990

此地址仅在您位于localhost时接受您的地址每当您需要远程配置服务器时,请使用以下命令启动服务器。

sudo -u jboss-as ./standalone.sh -Djboss.bind.address.management=0.0.0.0

再次出于安全原因,如果您不需要它,请不要绑定到 0.0.0.0。

将 JBoss 安装为系统服务

我们将为 init 守护进程(又名 init.d)准备一个服务器管理脚本 [ 10 ]

cd /etc/init.d/
sudo pico jboss

复制并粘贴以下内容。不要忘记相应地修改JAVA_HOME、 JBOSS_HOME目录和--chuid jboss-as(运行服务器时模拟为 jboss-as 用户)参数。

#!/bin/sh
### BEGIN INIT INFO
# Provides:          jboss
# Required-Start:    $local_fs $remote_fs $network $syslog
# Required-Stop:     $local_fs $remote_fs $network $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start/Stop JBoss AS v7.1.1 Final
### END INIT INFO
#
#source some script files in order to set and export environmental variables
#as well as add the appropriate executables to $PATH

export JAVA_HOME=/opt/jdk1.7.0_10
export PATH=$JAVA_HOME/bin:$PATH

export JBOSS_HOME=/opt/jboss-as-7.1.1.Final
export PATH=$JBOSS_HOME/bin:$PATH

case "$1" in
    start)
        echo "Starting JBoss AS 7.1.1 Final"
        start-stop-daemon --start --quiet --background --chuid jboss-as --exec ${JBOSS_HOME}/bin/standalone.sh
    ;;
    stop)
        echo "Stopping JBoss AS 7.1.1 Final"
        start-stop-daemon --start --quiet --background --chuid jboss-as --exec ${JBOSS_HOME}/bin/jboss-cli.sh -- --connect command=:shutdown
    ;;
    *)
        echo "Usage: /etc/init.d/jboss {start|stop}"
        exit 1
    ;;
esac

exit 0

将脚本设置为可执行文件并更新 rc.d

sudo chmod +x jboss
sudo update-rc.d jboss defaults

现在 JBoss 将从您的服务器开始。您可以使用以下命令来启动和停止服务器

sudo service jboss start
sudo service jboss stop
于 2012-12-23T16:20:11.417 回答