Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версияСледующая версияСледующая версия справа и слева |
linux_server [2018/02/20 20:35] – [Настройка HTTPS] kuld | linux_server [2019/07/29 18:32] – [Установка СУБД PostgreSQL] kuld |
---|
netmask 255.255.255.0 # маска подсети | netmask 255.255.255.0 # маска подсети |
gateway 192.168.0.1 # шлюз по умолчанию | gateway 192.168.0.1 # шлюз по умолчанию |
dns-nameservers 192.168.0.101 # DNS сервера, можно указать несколько через запятую | dns-nameservers 192.168.0.101 # DNS сервера, можно указать несколько через пробел |
auto enp0s3 | auto enp0s3 |
| |
===== Установка СУБД PostgreSQL ===== | ===== Установка СУБД PostgreSQL ===== |
| |
<note important>1С:Предприятие работает со специально пропатченной версией PostgreSQL 9.6.1. Это не самая свежая версия, на момент написания статьи выпущена версия 9.6.2, но 1С:Предприятие ее пока не поддерживает.</note> | <note warning>1С:Предприятие работает со специально пропатченной версией PostgreSQL. Версия из репозитория Ubuntu не подойдет.</note> |
| |
Существует несколько источников, где можно взять дистрибутив PostgreSQL совместимый с 1С:Предприятие. Можно, например, как рекомендует сама фирма "1С" скачать его с [[https://releases.1c.ru/project/AddCompPostgre|портала ИТС]] и установить из deb или rpm пакетов, такой подход вполне привычен для пользователей Windows, скачивать и устанавливать. В Linux другой подход. Например, для поклонников Gentoo Linux привычно было бы скачать исходники PostgreSQL, пропатчить их и скомпилировать. А философия Ubuntu базируется на репозиториях, откуда пользователи получают нужные программы, устанавливая их менеджерами пакетов. К сожалению фирма "1С" не озаботилась созданием такого репозитория для распространения специальной версии PosgreSQL, зато это сделала компания Postgres Professional. Подключим репозитории к нашему серверу и обновим список пакетов | Существует несколько источников, где можно взять дистрибутив PostgreSQL совместимый с 1С:Предприятие. Можно, например, как рекомендует сама фирма "1С" скачать его с [[https://releases.1c.ru/project/AddCompPostgre|портала ИТС]] и установить из deb или rpm пакетов, такой подход вполне привычен для пользователей Windows, скачивать и устанавливать. В Linux другой подход. Например, для поклонников Gentoo Linux привычно было бы скачать исходники PostgreSQL, пропатчить их и скомпилировать. А философия Ubuntu базируется на репозиториях, откуда пользователи получают нужные программы, устанавливая их менеджерами пакетов. К сожалению фирма "1С" не озаботилась созданием такого репозитория для распространения специальной версии PosgreSQL, зато это сделала компания Postgres Professional. |
| |
<code> | <note important>К сожалению, компания PostgresPro ограничила доступ к своим репозиториям, на [[https://postgrespro.ru/products/1c|официальном сайте]] указано, что они доступны в рамках сервисного контракта. Скачайте и установите DEB пакеты с [[https://releases.1c.ru/project/AddCompPostgre|портала 1С:ИТС]].</note> |
$ sudo sh -c 'echo "deb http://1c.postgrespro.ru/deb/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/postgrespro-1c.list' | |
$ wget --quiet -O - http://1c.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO-1C | sudo apt-key add - && sudo apt update | |
</code> | |
| |
Теперь можно устанавливать PostgreSQL привычным для Ubuntu способом | Качаем файл ''postgresql_10.5_24.1C_amd64_deb.tar.bz2'' где ''5_24'' - актуальный на момент написания статьи номер сборки, к моменту, когда Вы это прочтете он может стать другим, берите самую актуальную сборку. |
| |
| Распакуем, перейдем в папку с пакетами, установим и зафиксируем версии, что бы Ubuntu при автоматическом обновлении не заменила эти пакеты на стандартные из репозитория: |
<code> | <code> |
$ sudo apt install postgresql-pro-1c-9.6 | $ tar xvjf postgresql_10.5_24.1C_amd64_deb.tar.bz2 |
| $ cd postgresql-10.5-24.1C_amd64_deb |
| $ sudo dpkg -i libpq5_10.5-24.1C_amd64.deb |
| $ sudo apt install postgresql-common |
| $ sudo dpkg -i postgresql-client-10_10.5-24.1C_amd64.deb |
| $ sudo dpkg -i postgresql-10_10.5-24.1C_amd64.deb |
| $ sudo apt-mark hold libpq5 |
| $ sudo apt-mark hold postgresql-client-10 |
| $ sudo apt-mark hold postgresql-10 |
</code> | </code> |
| |
| Не забываем заменять ''5-24'' на номер скачанной сборки. |
| |
Настроим права на подключение к СУБД из консоли. | Настроим права на подключение к СУБД из консоли. |
| |
<code> | <code> |
$ sudo nano /etc/postgresql/9.6/main/pg_hba.conf | $ sudo nano /etc/postgresql/10/main/pg_hba.conf |
</code> | </code> |
| |
| |
<code> | <code> |
$ sudo nano /etc/postgresql/9.6/main/postgresql.conf | $ sudo nano /etc/postgresql/10/main/postgresql.conf |
</code> | </code> |
| |
| |
<code> | <code> |
$ sudo nano /etc/postgresql/9.6/main/pg_hba.conf | $ sudo nano /etc/postgresql/10/main/pg_hba.conf |
</code> | </code> |
| |
===== Публикация на веб-сервере Apache ===== | ===== Публикация на веб-сервере Apache ===== |
| |
<note warning>Использовать один и тот же сервер в качестве сервера приложений (а так же СУБД) и web-сервера безопасно только в закрытой сети предприятия Интранет. Для публикации в Интернет правильно будет использовать отдельный web-сервер и разместить его в DMZ</note> | <note warning>Использовать один и тот же сервер в качестве сервера приложений (а также СУБД) и web-сервера безопасно только в закрытой сети предприятия Интранет. Для публикации в Интернет правильно будет использовать отдельный web-сервер и разместить его в DMZ</note> |
| |
<note important>1С:Предприятие релизов до 8.3.9 поддерживало публикацию информационной базы на веб-сервере Apache версии не выше 2.2. Для использования Apache 2.4, включенного в репозитории Ubuntu 16.04 LTS обновитесь до актуального релиза технологической платформы 1С:Предприятие.</note> | <note important>1С:Предприятие релизов до 8.3.9 поддерживало публикацию информационной базы на веб-сервере Apache версии не выше 2.2. Для использования Apache 2.4, включенного в репозитории Ubuntu 16.04 LTS обновитесь до актуального релиза технологической платформы 1С:Предприятие.</note> |
<code xml> | <code xml> |
<VirtualHost *:80> | <VirtualHost *:80> |
# Перенаправим все поступающие по HTTP запросы на HTTP хост | # Перенаправим все поступающие по HTTP запросы на HTTPS хост |
Redirect / https://mysite.ru/ # mysite.ru - это доменое имя или IP адрес вашего сайта | Redirect / https://mysite.ru/ # mysite.ru - это доменое имя или IP адрес вашего сайта |
</VirtualHost> | </VirtualHost> |
Пример восстановления базы ''base1c'' из бэкапа ''base1c.sql.tar'' | Пример восстановления базы ''base1c'' из бэкапа ''base1c.sql.tar'' |
<code> | <code> |
$ pg_restore -d base1c -f base1c.sql.tar -F t -U postgres | $ pg_restore -d base1c -F t -U postgres base1c.sql.tar |
</code> | </code> |
| |