Меню Рубрики

Установка и настройка alfresco freebsd

Система электронного документооборота Alfresco на базе FreeBSD

Система электронного документооборота Alfresco на базе FreeBSD

Мне была поставлена задача внедрить систему электронного документооборота для территориально распределенной организации. Программное обеспечение для СЭД должно быть бесплатным, с открытым исходным кодом, кроссплатформенным и предназначенным для крупных предприятий.

На первый взгляд все здорово — автоматизация корпоративного контента, однако это затрагивает всех сотрудников и, как показывает практика внедрения системы учета заявок, волны недовольств и сопротивления учиться новому с их стороны не избежать.

Хочу отметить, что успешность электронного документооборота во многом зависит от налаженности процессов, которые протекают в организации. Другими словами, что имеем на входе, то и получим на выходе, а СЭД позволяет только ускорит этот процесс.

Первым кандидатом на роль системы электронного документооборота стала СЭД Alfresco.

Alfresco (в переводе с итал. Под открытым небом) — open source интегрированная система электронного документооборота и система управления корпоративным контентом (Enterprise Content Management, ECM).
Поддерживается на всех основных платформах: FreeBSD, Microsoft Windows, Linux, Mac OS X и Solaris. Написана на Java.
В октябре 2009 года специализированное издание CMSWire назвало Alfresco лидером среди open source Java/WCMS. В августе 2010 года Infoworld назвал Alfresco одним из 11 победителей в номинации Bossie 2010 Award (Лучшие open source приложения.
Alfresco – открытая платформа ECM
Всю платформу Alfresco можно разделить на несколько основных компонентов:

  • Document Management – система управления документами (унифицированное хранилище данных, поддержка бизнес-процессов).
  • Records Management – архив данных, построенный на основе репозитория данных Alfresco.
  • Web Content Management – система управления веб-контентом (совместная работа над материалами, веб-публикации).
  • Share – система совместной работы, позволяющая создать подобие социальной сети внутри организации.
  • Alfresco Community — распространяются свободно без поддержки.
  • Alfresco Enterprise — распространяются с поддержкой от разработчиков.

Для работы Alfresсo необходимо установить:

  • /usr/ports/java/jdk16
  • /usr/ports/databases/mysql55-server
  • /usr/ports/www/tomcat7
  • /usr/ports/graphics/ImageMagick
  • /usr/ports/print/acroread9
  • /usr/ports/editors/openoffice.org-3
  • Flash Player
  • /usr/ports/graphics/swftools

Java JDK1.6

Установка Java JDK занимает длительное время. На системе с 1,5Гб оперативной памяти и 1,8MHz CPU сборка займет порядка 6 часов. По лицензионным ограничениям каждый компонент для установки придется выкачивать вручную и размещать в папке /usr/ports/distfiles/:
bsd-jdk16-patches-4.tar.bz2
diablo-caffe-freebsd7-i386-1.6.0_07-b02.tar.bz2
jdk-6u3-fcs-bin-b05-jrl-24_sep_2007
jdk-6u3-fcs-mozilla_headers-b05-unix-24_sep_2007
jdk-6u3-fcs-src-b05-jrl-24_sep_2007
tzupdater-1_3_38-2011e
После размещения необходимых пакетов можно приступать с сборке и инсталляции:

Apache Tomcat 7

Tomcat (в старых версиях — Catalina) — программа-контейнер сервлетов, написанная на языке Java и реализующая спецификацию сервлетов и спецификацию JavaServer Pages (JSP), которые являются стандартами для разработки веб-приложений на языке Java.
Сервлет является Java-программой, выполняющейся на стороне сервера и расширяющей функциональные возможности сервера.

Опция -server обеспечивает запуск Tomcat с серверной версией JVM, которая отличается более агрессивным сборщиком мусора GC, несколько другой стратегией управления памятью и JIT.
Apache Tomcat запускается и прослушивает входящие соединения на непривилегированных портах. Запуск Tomcat на 80 порту возможен только от имени root’а:
http://192.168.0.1:8080

Alfresco

Скачиваем архив:
http://process.alfresco.com/ccdl/?file=release/community/build-3370/alfresco-community-3.4.d.zip

Кладем web-server/webapps/alfresco.war и web-server/webapps/share.war в директорию на сервере /usr/local/apache-tomcat-7.0/webapps/.

mysql-connector-java-5.1.13-bin.jar размещаем в папке /usr/local/apache-tomcat-7.0/lib.

Копируем web-server/shared в /usr/local/apache-tomcat-7.0/.
Создаем папку /usr/local/apache-tomcat-7.0/shared/lib.

Создаем базу данных для alfresco:

Создаем и правим конфигурационный файл с глобальными настройками:

# cp /usr/local/apache-tomcat-7.0/webapps/alfresco/WEB-INF/classes/alfresco-global.properties.sample /usr/local/apache-tomcat-7.0/webapps/alfresco/WEB-INF/classes/alfresco-global.properties
# cp /usr/local/apache-tomcat-7.0/webapps/alfresco/WEB-INF/classes/alfresco-global.properties /usr/local/apache-tomcat-7.0/shared/classes/

/alfresco-global.properties:
dir.root=/usr/local/apache-tomcat-7.0/webapps/alfresco/alf_data
db.driver=org.gjt.mm.mysql.Driver
db.url=jdbc:mysql://localhost:3306/alfresco?useUnicode=yes&characterEncoding=UTF-8

В файле /usr/local/apache-tomcat-7.0/conf/catalina.properties указываем shared.loader= property to the following: shared.loader=$/shared/classes,$/shared/lib/*.jar

Правим /usr/local/apache-tomcat-7.0/conf/server.xml. Устанавливаем кодировку UTF-8. По-умолчанию Tomcat использует ISO-8859-1. Это может создать проблемы при создании, загрузке и переименовыванию файлов в интернациональной кодировке.

Пробуем зайти http://192.168.0.1:8080/alfresco и облом — куча ошибок в логах (/usr/local/apache-tomcat-7.0/logs/stdout.txt):

Alfresco использует JAXB 2.1 API, а в системе установлена JAXB 2.0 API.
The goal of the JAXB project is to develop and evolve the code base for the Reference of JAXB, the Java Architecture for XML Binding

По умолчанию сначала загружается библиотека из java (JAXB 2.0), поэтому нужно переопределить порядок вызова библиотеки. Для этого можно разместить jaxb-api-2.1.jar в директории endorsed:

источник

Установка и настройка alfresco freebsd

GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.

Clone with HTTPS

Use Git or checkout with SVN using the web URL.

Downloading

Want to be notified of new releases in andergrim/alfresco-freebsd-install ?

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Launching Visual Studio

Latest commit

Files

misc

nginx

scripts

tomcat

README.md

alfinstall.sh

This install script and guide was created by Kristoffer Andergrim.

It is entirely based on the alfresco-ubuntu-install project, by Peter Löfgren, Loftux AB. Please visit https://loftux.se (Swedish) https://loftux.com (English) for more information.

Alfresco script based install for FreeBSD servers.

This script will help you set up an Alfresco server instance with all necessary third party components.
Some will be installed via FreeBSD pkgs (pkgng is assumed to be bootstrapped and working), some directly downloaded. The script will walk you through the process. In the end, there will be some manual tasks to complete the installation.

The script also provides a rc.d script to control afresco as well as helper scripts for installing and configuring a database server (PostgreSQL, MySQL or MariaDB).

To start the install, in the terminal run:

curl is not available by default in the FreeBSD environment, so you need to install its package before starting the installation.

Current Alfresco version is 5.0.c

The installation has been tested on the following versions /architectures of FreeBSD:

  • FreeBSD 10.0-RELEASE / amd64
  • FreeBSD 10.1-RELEASE / amd64

All install options will be presented with an introduction. They default to ‘n’ (no), so type y to actually install that component. You need root access to install.

But please do read all of this README before you go ahead.
There is also lots of documentation at http://docs.alfresco.com/4.2/index.jsp. To become an Alfresco server Administator, read the ‘Administering’ section.

###Known issues Many components have their download url:s point to specific version. Whenever a new version comes out, the older version is removed from the download server and this script breaks. I try to update as soon as I find out. This is known to happen with LibreOffice and Tomcat. The script will check if the needed components are available and break if they are not.

More on the components/installation steps.

Once downloaded you can modify (if needed) the script to fit your purpose. Here is a brief explanation if each section.

The Alfresco user is the server account used to run tomcat. You should never run tomcat as root, so if you do not already have the alfresco (default in the install script) user, you should add the alfresco user.

In this part of the install is also an update to make sure a specific locale is supported (default sv_SE.utf8). This is useful for LibreOffice date formatting to work correctly during transformations.

Tomcat is the java application server used to actually run Alfresco. The script installs the latest version of Tomcat 7, and then updates its configuration files to better support running Alfresco.
A startup script /usr/local/etc/rc.d/alfresco will be added. Edit locale setting (LC_ALL) and the memory settings in this file to match your server.
About memory, it has default max set to 2G. That is good enough if you have about 5 users. So add more ram (and then some) to your server, update then Xmx setting in the alfresco rc script. Your Alfresco instance will run much smoother.

You will be presented with the option to add either MySql or Postgresql jdbc libraries. You should probably add at least one of them.

Once the install is complete (the entire script and the manual steps following that), run
service alfresco start to start and service alfresco stop to stop tomcat.

It is sometimes useful to have a front-end for your Tomcat Alfresco instance. Since Tomcat runs default on port 8080, you can use Nginx as proxy. It is also a lot easier to add ssl support. The default config includes sample configuration for this. Share resource files (anything loaded from /share/res/) is cached in nginx, so it doesn’t need to be fetched from tomcat.

Caveat: The upload progress bar in Share will show the upload as complete when the upload from client to nginx is complete, but the upload from nginx to Tomcat Share/Alfresco continues shortly. Usually this is barely noticeable, since server connections speeds are a lot faster than client server connections.

Maintenance message support

If you are using Nginx as front-end there is a built in fallback to a maintenance page when the Alfresco tomcat instance is stopped. Nginx will detect that tomcat is not responding and show this page. It will display expected downtime and a progress bar.
To set the the downtime (in minutes) and a custom message, call the ams.sh script found in script folder. ams.sh 20 «Custom message displayed in page»
The above example will set the downtime to 20 minutes (from when you shut down) and with a custom message. If called without parameters it defaults to 10 minutes. Custom message is optional, but if used you also must set the timeout.
The script will shut down Alfresco tomcat instance. To start it you must call sudo start alfresco .

The maintenance.html page is found in its default location /opt/alfresco/www and can be customized to your needs.

If you want to implement this support and already have run the alfinstall.sh script, compare your nginx.conf to what is currently in git/master.

This script installs OpenJDK. You may want to use Oracle Java, but download and install of Oracle Java could not be scripted. More information about installing Oracle Java in FreeBSD is available here.

OpenJDK (as well as bash shell and other components you may or may not use already) required fdesc and proc file systems to be mounted. The following lines should be added to your /etc/fstab

Installed using the FreeBSD default package. It depends on a large number of X11 components which will be installed on your system even if you just want to run a headless transformation daemon. If this is not desired for your system you need to find another solution. If you come up with a good solution you are most welcome to contact me.

Installed using the FreeBSD default package. It depends one some X11 components. Also adds some Truetype fonts for better rendering.

Installed using the FreeBSD default no-x11 package.

Download and install of Alfresco itself. Or rather, the alfresco.war and share.war and adds them to tomcat/webapps folder. Current version is 5.0.c. You also have the option to install Google Docs and Sharepoint addons. Skip if you do not intend to use them, you can always add then later. You can completely skip this step if you intend to use Enterprise version or any other version. See also the special section about the addons directory.

As of Alfresco 5.0 Lucene is no longer supported (it was deprecated some time ago). SOLR4 is more or less a mandatory install in order to have a working Alfresco setup.

Addons — Manage amps and war files.

A special directory is created, /opt/alfresco/addons . This directory can be used to manage any addons and the core war files.

  • addons/alfresco — Alfresco amp files.
  • addons/share — Share amp files.
  • addons/war — alfresco.war and share.war files goes in here.
    The script addons/apply.sh is what you run to install amp files to war files, and then copy the war files to tomcat/webapps. The script has three parameter options
  • amp — just install the amp files to war files.
  • copy — Copy war files to tomcat/webapps.
  • all — Do both of the above. You can only do this if tomcat is not running.

If you didn’t install Alfresco war files with the install script you can use this script to manage your war files. If you for example want to use the Enterprise version, download the war files from Alfresco support portal and add them to the /war directory and the run apply.sh. Or you can always add them directly to tomcat/webapps.

Scripts — Supporting scripts

In the directory /opt/alfresco/scripts there are some useful scripts installed. Or if you did not run the install script, grab them from github. Here is what they do:

  • libreoffice.sh — Start/stop libreoffice manually. Sometimes libreoffice crashes during a transformation, use this script to start it again. Alfresco will re-connect when the server detects libreoffice is running. You can add this to crontab for automatic checks:
    */10 * * * * /opt/alfresco/scripts/libreoffice.sh start 2>&1 >> /opt/alfresco/logs/office.log 0 2 * * * /opt/alfresco/scripts/libreoffice.sh restart 2>&1 > /opt/alfresco/logs/office.log
    This will make sure libreoffice is running (if not already started and tomcat is running). Once per night it will also do a complete restart (in case LibreOffice behaves badly).
  • createssl.sh — Create self signed certificates, useful for testing purposes. Works well with nginx.
  • mariadb.sh — Install the mariadb database server (the MySql alternative). It is recommended that you instead use a dedicated database server. Seriously, do that. And do some database optimizations, out of scope for this install guide.
  • postgresql.sh — Same as for MariaDB, but the postgres version.
  • ams.sh — To do a maintenance shutdown. For more, see section under nginx.

Alfresco BART — Backup and Recovery Tool

Can this script be used for any version of Alfresco?

Yes, see the Addon section. But do know that it uses latest version of many components, and they may not be Alfresco officially supported stack. Can I modify the scripts?

Yes, you can either download the install script and modify as needed. Or you clone the entire thing at Github and create your own version. If you create/change anything that you think may be useful, please contribute back. Upgrading — Can I use this to upgrade an existing install?

At this time, this is not the intended use. So short answer is no.
Longer answer is, you can probably grab pieces of the script to upgrade indiv >

Yes (and is also recommended for best performance), but all components are not needed on both servers. The Alfresco server probably doesn’t need nginx, the Share server doesn’t need LibreOffice, ImageMagick, Swftools and Solr. The ‘Alfresco’ install step will download both alfresco.war and share.war if run, just remove the one that doesn’t apply from tomcat/webapps and addons/war directory. The script does not use version x of component z, can you fix this?

Probably, but you can also. Just edit the script with the version you want to use, most of the specific links can be found in the beginning of the script.
Why does the script use the latest versions/not use FreeBSD packages?

This combination of packages/downloaded install has been found to work well. But that may not hold true always. If you feel more confident to run a specific version of a component, or want to use a standard FreeBSD package, modify the script. Or skip that part in the install script, and just use this script as an install guide on what needs to be in place for a production server.

Copyright 2015, Kristoffer Andergrim This guide as well as the script is based on the alfresco-ubuntu-install project by Peter Löfgren, Loftux AB Distributed under the Creative Commons Attribution-ShareAlike 3.0 Unported License (CC BY-SA 3.0)

источник

Установка Alfresco Community 4.2.f на выделенный виртуальный сервер

Все когда то заканчивается, закончился один, затем и второй триальный период на Jelastic.com. А платить за виртуальный сервер у которого нет полноты управления каталогами и файлами мне так и не захотелось. На меньшей ступени явно не хватит ресурсов, а там где их вдоволь и цена уже кусается.

Несколько комментариев к статье о хостинге и виртуальных серверах заставили меня «оторвать задницу от стула» и заняться поиском подходящего кандидата. Мне повезло и за небольшие деньги я приобрел пару виртуальных выделенных серверов (cloudatcost.com) разной мощности на сумму чуть больше 100 долл. США, за оба, в пожизненное пользование. Ура я избавляюсь от почасовой оплаты загрузки! В душе я понимаю, что это будет пока жива компания провайдер, дай бог ей долгих лет жизни. Оплата через PayPal, еще пару минут ожидания информационного письма и первоначальная установка имиджа Ubuntu Linux 13.10 64-bit не заняла и 10 минут. И вот в моем распоряжении пара серверов 20GB & 40GB с внешним IP.
Альфреску туда и скорее!

Вместо введения
Когда Вы начинаете настройку нового Linux сервера, есть несколько, почти обязательных, шагов конфигурации, которые необходимо сделать до начала основной установки. Это повысит безопасность и удобство использования Вашего сервера и даст Вам прочную основу для всех последующих действий. (Предварительную часть можно пропустить если установку делали Вы сами с инсталляционного диска Ubuntu)

Первый вход в систему
Для первоначальной регистрации (login) на Вашем сервере, Вам необходимо знать внешний IP-адрес сервера и пароль супер- пользователя «root». Используя информацию в электронном письме с необходимыми login/password, входим на страницу администраторской панели сервера, и в закладке INFO смотрим пароль пользователя ”root” и IP-адрес сервера.

Пользователь root — административный пользователь в среде Linux, у которого есть очень широкие полномочия. Именно из-за этих полномочий, настоятельно не рекомендуется использовать аккаунт root для повседневного использования. Объясняется тем, что можно нанести непоправимые повреждения операционной системы и приложений, даже случайно.
Далее несколько несложных действий которые позволят настроить альтернативную учетную запись пользователя с уменьшенным объемом полномочий и предназначенного для повседневной работы. А также несколько советов, как получить увеличенные полномочия в тех случаях, когда Вы реально нуждаетесь в них.
В административной панели есть кнопка позволяющая вызвать в броузере консоль Вашего сервера. Настоящую консоль! Отправив команду CTRL-ALT-DEL из этой консоли (есть справа кнопка) мы можем наблюдать перезагрузку как на обычном сервере. Воспользуемся консолью войдем в систему пользователем root (если у Вас черный экран и нет приглашения, нажмите Enter):

Ввод пароля на экране отображаться не будет, даже перемещением курсора.

Изменить пароль суперпользователя
Вам вряд ли потребуется помнить пароль, который в настоящее время установлен для суперпользователя. Тем не менее, Вы можете изменить пароль на какой то другой с помощью команды:
# passwd
Потребуется ввести текущий пароль пользователя “root”и подтвердить свой новый пароль. Отображаться на экране ничего при этом не будет.

Создать нового пользователя
Создадим пользователя, который и будет использоваться нами для дальнейшей работы:

Можно не отвечать на вопросы о пользователе, просто нажать несколько раз Enter.
Добавим созданному пользователю «root» полномочия
Теперь добавим вновь созданному пользователю полномочия суперпользователя. Эти полномочия потребуются в ряде случаев при выполнении административных задач.
# adduser alex sudo
Незамедлительно проверим результат. Для этого выйдем (#exit ) и снова залогинемся вновь созданным пользователем. И с помощью команды (# sudo bash) проверим наши возможности:

Все получилось, при необходимости мы сможем становится суперпользователем.
SSH сервер в системе уже запущен. По умолчанию он на 22 порту. При желании его тоже можно поменять.
На этом завершается предварительная настройка системы.

Настройка PuTTY
Удобнее пользоваться локальной терминальной программой типа PuTTY. Терминальную программу каждый выбирает по собственному вкусу. Я выбрал PuTTY. В конфигурации укажем адрес сервера и номер настроенного порта. Меня устраивает тот факт, что команды в командную строку можно перенести мышкой и по необходимости изменить размер шрифта, конечно и многое другое.

Установка Oracle Java 7
Чтобы установить последнюю версию Oracle JDK7 в Ubuntu, используйте следующие команды:
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java7-installer

(соглашаемся с пользовательской лицензией в открывшемся окне)

Установка Alfresco 4.2.f
Скачиваем дистрибутив для x64 linux версии. Для этого залогинимся вновь созданным пользователем. Сразу после логина мы окажемся в своем домашнем каталоге:
$ pwd
> /home/alex
вернуться в него можно командой:
$ cd

качаем дистрибутив:
$ wget dl.alfresco.com/release/community/4.2.f-build-00012/alfresco-community-4.2.f-installer-linux-x64.bin
сделаем скаченный файл исполняемым:
$ chmod 755 alfresco-community-4.2.f-installer-linux-x64.bin
ну и запускаем собственно инсталляцию:
$ sudo ./ alfresco-community-4.2.f-installer-linux-x64.bin —mode text
Далее отвечаем на ряд вопросов. Русский язык в консоли лучше не выбирать, будут крокозябры. Выбрав английский Вы ничего не потеряете:

Language Selection
Please select the installation language
[1] English – English
[2] French – Français
[3] Spanish – Español
[4] Italian – Italiano
[5] German – Deutsch
[6] Japanese – 日本語
[7] Dutch – Nederlands
Please choose an option [1] : 1
—————————————————————————-
Welcome to the Alfresco Community Setup Wizard.
—————————————————————————-
Installation Type
[1] Easy – Installs servers with the default configuration
[2] Advanced – Configures server ports and service properties.: Also choose optional components to install.
Please choose an option [1] : 1
—————————————————————————-
Installation folder
Please choose a folder to install Alfresco Community
Select a folder [/opt/alfresco-4.0.d]:

Дальше необходимо ввести пароль администратора и подтвердить:
—————————————————————————-
Admin Password
Please give a password to use for the Alfresco administrator account.
Admin Password:

После ввода пароля, хотим ли мы запускать альфреско как сервис с автозапуском?, ответ “Y“
Install as a service
You can optionally register Alfresco Community as a service. This way it will automatically be started every time the machine is started.
Install Alfresco Community as a service? [Y/n]: Y

Все готово. Устанавливаем файлы:

Setup is now ready to begin installing Alfresco Community on your computer.
Do you want to continue? [Y/n]: Y

Дальше картинка с процентами и градусник:

Please wait while Setup installs Alfresco Community on your computer.
Installing
0% ______________ 50% ______________ 100%

Хотим почитать файл или нет?

Setup has finished installing Alfresco Community on your computer.
View Readme File [Y/n]: N

Далее запускать ли сейчас web интерфейс.

Launch Alfresco Community Share [Y/n]: Y

После видим что то вроде этого:

Using CATALINA_BASE: /opt/alfresco-4.2.f/tomcat
Using CATALINA_HOME: /opt/alfresco-4.2.f/tomcat
*****
…… tomcat started

источник

Читайте также:  Установка декодера в паровоз