OnlyOfficeCS-docker/Dockerfile.ami

65 lines
4.0 KiB
Docker
Raw Normal View History

FROM onlyoffice/communityserver:latest AS communityserver-ami
2020-11-10 13:27:31 +00:00
ARG APPSETTING_CONFIG=/var/www/onlyoffice/WebStudio/web.appsettings.config
2021-09-08 08:37:11 +00:00
ARG RESOURCE_SQL=/var/www/onlyoffice/Sql/onlyoffice.resources.sql
2020-11-10 13:27:31 +00:00
2021-12-29 17:25:33 +00:00
ARG LOG4J_VER=2.17.1
ARG LOG4J_BIN=apache-log4j-${LOG4J_VER}-bin
ARG LOG4J_ARCH=${LOG4J_BIN}.tar.gz
ARG LOG4J_DIR=./log4j
2022-01-13 14:09:49 +00:00
ARG ELK_DIR=/usr/share/elasticsearch
ARG ELK_LIB_DIR=${ELK_DIR}/lib
ARG ELK_MODULE_DIR=${ELK_DIR}/modules
2021-12-29 17:25:33 +00:00
2022-01-13 16:05:03 +00:00
RUN rm -v ${ELK_LIB_DIR}/log4j-*.jar ${ELK_MODULE_DIR}/*/log4j-*.jar && \
2021-12-29 17:25:33 +00:00
wget https://dlcdn.apache.org/logging/log4j/${LOG4J_VER}/${LOG4J_ARCH}&& \
mkdir ${LOG4J_DIR} && \
tar -xf ${LOG4J_ARCH} -C ${LOG4J_DIR} && \
2022-01-13 16:05:03 +00:00
cp -v ${LOG4J_DIR}/${LOG4J_BIN}/log4j-api-${LOG4J_VER}.jar ${ELK_LIB_DIR} && \
cp -v ${LOG4J_DIR}/${LOG4J_BIN}/log4j-core-${LOG4J_VER}.jar ${ELK_LIB_DIR} && \
cp -v ${LOG4J_DIR}/${LOG4J_BIN}/log4j-1.2-api-${LOG4J_VER}.jar ${ELK_MODULE_DIR}/x-pack-core && \
cp -v ${LOG4J_DIR}/${LOG4J_BIN}/log4j-slf4j-impl-${LOG4J_VER}.jar ${ELK_MODULE_DIR}/x-pack-identity-provider && \
cp -v ${LOG4J_DIR}/${LOG4J_BIN}/log4j-slf4j-impl-${LOG4J_VER}.jar ${ELK_MODULE_DIR}/x-pack-security && \
rm -vr ${LOG4J_ARCH} ${LOG4J_DIR}
2021-12-29 17:25:33 +00:00
2020-11-10 13:27:31 +00:00
RUN apt-get -y update && \
apt-get install -yq xmlstarlet
2021-09-08 08:37:11 +00:00
RUN echo "INSERT INTO \`tenants_tariff\` (\`tenant\`, \`tariff\`, \`stamp\`, \`comment\`) VALUES ('-1', '-1000', NOW() + INTERVAL 5 YEAR, 'ami');" >> $RESOURCE_SQL && \
echo "INSERT INTO \`tenants_quota\` (\`tenant\`, \`name\`, \`max_file_size\`, \`max_total_size\`, \`active_users\`, \`features\`) VALUES ('-1000', 'start_trial', '102400', '10995116277760', '10000', 'docs,domain,audit,controlpanel,healthcheck,ldap,sso,whitelabel,branding,ssbranding,update,support,portals:10000,discencryption,privacyroom');" >> $RESOURCE_SQL && \
echo "UPDATE \`core_settings\` SET \`value\` = 0x1371A72766B7FD0D86DC0E83CFFFF0CE9A8BE350B7D1779D12C2D160376CFDE646294E0DE9B8E487DC856817EF01A21F53C93883F979FCE38AFE74799B58B64E822FFAD96289813A644CC5CBE2471328E5B9D03DB4426D67EC877299ABD6A5BE6561F4A8061ECE01D41F50220EFB748AC1F67E5D649E57E204352DC2DFF15E18675A9AA5BAAD41CC4779CBE63C5933E1 WHERE tenant = -1 AND id = 'SmtpSettings';" >> $RESOURCE_SQL && \
chown onlyoffice:onlyoffice $RESOURCE_SQL
2020-11-10 13:27:31 +00:00
RUN xmlstarlet ed -L \
-s "/appSettings" -t elem -n "add" \
-i "/appSettings/add[not(@*)]" -t attr -n "key" -v "fullTextSearch" \
-i "/appSettings/add[@key='fullTextSearch']" -t attr -n "value" -v "false" \
$APPSETTING_CONFIG && \
xmlstarlet ed -L \
-s "/appSettings" -t elem -n "add" \
-i "/appSettings/add[not(@*)]" -t attr -n "key" -v "web.ami.meta" \
-i "/appSettings/add[@key='web.ami.meta']" -t attr -n "value" -v "http://169.254.169.254/latest/meta-data/" \
$APPSETTING_CONFIG && \
xmlstarlet ed -L \
-d "/appSettings/add[@key='files.thirdparty.enable']" \
-s "/appSettings" -t elem -n "add" \
-i "/appSettings/add[not(@*)]" -t attr -n "key" -v "files.thirdparty.enable" \
-i "/appSettings/add[@key='files.thirdparty.enable']" -t attr -n "value" -v "box,dropboxv2,docusign,google,onedrive,nextcloud,owncloud,webdav,kdrive,yandex" \
$APPSETTING_CONFIG && \
xmlstarlet ed -L \
-d "/appSettings/add[@key='web.hide-settings']" \
-s "/appSettings" -t elem -n "add" \
-i "/appSettings/add[not(@*)]" -t attr -n "key" -v "web.hide-settings" \
-i "/appSettings/add[@key='web.hide-settings']" -t attr -n "value" -v "VersionSettings,Monitoring,PublicPortal,PortalRename,Migration,Promocode,TariffSettings,ProxyHttpContent,MailService,FullTextSearch,Storage,EncryptionSettings" \
$APPSETTING_CONFIG
FROM communityserver-ami AS communityserver-alc
ARG APPSETTING_CONFIG=/var/www/onlyoffice/WebStudio/web.appsettings.config
RUN xmlstarlet ed -L \
2021-09-02 09:46:09 +00:00
-d "/appSettings/add[@key='web.ami.meta']" \
-s "/appSettings" -t elem -n "add" \
-i "/appSettings/add[not(@*)]" -t attr -n "key" -v "web.ami.meta" \
-i "/appSettings/add[@key='web.ami.meta']" -t attr -n "value" -v "http://100.100.100.200/latest/meta-data/" \
$APPSETTING_CONFIG