如何在Ubuntu 12.04 LTS上安装Postgresql v9.1和JBoss AS v7.1.1

时间:2012-12-23 16:20:11

标签: postgresql ubuntu jboss7.x

有很多很好的资源来描述如何在Ubuntu 12.04 LTS上安装Postgresql和JBoss,但信息是在其他页面上分发的。

但是,最好有一个易于安装和配置的walktrough指南。

1 个答案:

答案 0 :(得分: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

请参阅http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html获取JDK,http://www.jboss.org/jbossas/downloads/获取JBoss。

或尝试[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

线。

如果您选择绑定到所有接口而不是localhost,那么您将需要一个额外的配置来允许远程连接。 [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

现在您可以通过其网页界面

配置您的服务器
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守护进程准备一个服务器管理脚本(aka。init.d)[10]

cd /etc/init.d/
sudo pico jboss

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

#!/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