Configuração padrão e variáveis de ambiente - scieloorg/opac GitHub Wiki
Introdução:
A configuração padrão do site espera ter acesso a instâncias locais de mongo e acesso ao file system como por exemplo /tmp
para ter acesso ao banco de dados SQLite.
Todas as definições padrão atualizadas estão definidas em: opac/webapp/config/default.py
Ajustando as configurações de uma instância em particular:
É possível redefinir estas configurações para determinado ambiente, o que é recomendado por questões de segurança, por exemplo para redefinir a configuração do SECRET_KEY
e as credencias de acesso ao banco.
Para ajustar configurações, pode definir as variáveis de ambiente (ver abaixo) no seu host, ou copie o template que melhor se ajuste a seu ambiente, e apontando o caminho absoluto na variável de ambiente: OPAC_CONFIG, por exemplo:
- copiar este template:
cp opac/config/templates/development.template /foo/var/baz/opac.config.py
- editar:
vim /foo/var/baz/opac.config.py
, pode consultar o arquivo:opac/webapp/config/default.py
- definir a variável de ambiente OPAC_CONFIG:
export OPAC_CONFIG="/foo/var/baz/opac.config.py"
- iniciar/reiniciar o servidor web
Configuração padrão e variáveis de ambiente asociadas:
Na Configuração padrão, definimos estas configurações para deixar a app rodando em modo "produção". Porém é recomendado ajustar algumas configuração para deixar uma instalação segura e funcional no seu ambiente, por exemplo definindo a coleção que o site deve atender.
Para saber mais sobre configuração, visite:
- http://flask.pocoo.org/docs/0.10/config/#builtin-configuration-values
- https://pythonhosted.org/flask-mail/#configuring-flask-mail
- http://flask-sqlalchemy.pocoo.org/2.1/config/
- https://flask-mongoengine.readthedocs.org/en/latest/#configuration
Variáveis de ambiente:
-
Modo Debug:
OPAC_DEBUG_MODE
: ativa/desativa o modo Debug da app, deve estar desativado em produção! (default: False)
-
Segurança:
OPAC_SECRET_KEY
: chave necessária para segurança nos formulário da app (default: 'secr3t-k3y')
-
Coleção:
OPAC_COLLECTION
: acrônimo da coleção do opac (default: 'spa')
-
Para envio de emails:
OPAC_DEFAULT_EMAIL
: conta de email para envio de mensagens desde o site (default: '[email protected]')OPAC_MAIL_SERVER
: host do servidor de emails (default: localhost)OPAC_MAIL_PORT
: porta do servidor de emails (default: 1025)OPAC_MAIL_USE_TLS
: ativa/desativa envio de email com TLS (default: False)OPAC_MAIL_USE_SSL
: ativa/desativa envio de email com SSL (default: False)
-
Banco Mongo:
OPAC_MONGODB_NAME
: nome do banco (default: 'opac')OPAC_MONGODB_HOST
: host do banco (default: 'localhost')OPAC_MONGODB_PORT
: porta do banco (default: 27017)OPAC_MONGODB_USER
: [opcional] usuário para acessar o banco (default: None)OPAC_MONGODB_PASS
: [opcional] password para acessar o banco (default: None)
-
Banco SQL:
OPAC_DATABASE_FILE
: nome do arquivo (sqlite) (default: 'opac.sqlite')OPAC_DATABASE_DIR
: pasta aonde fica o banco (sqlite) (default: '/tmp')OPAC_DATABASE_URI
: [opcional] URI do banco sql (default: 'sqlite:////tmp/opac.sqlite')
-
Google Analytics:
GA_TRACKING_CODE
: código de google analytics (acesse https://goo.gl/HE77SO para resgatar seu código) (default: None)
-
Armazenamento de arquivos subidos pelos usuários (pelo admin):
OPAC_MEDIA_ROOT
: caminho absoluto da pasta que vai armazenar os arquivos (OPAC_MEDIA_ROOT/files/) e as imagens (OPAC_MEDIA_ROOT/images/). (default:<pasta do projeto>/webapp/media/
)OPAC_MEDIA_URL
: prefixo da url que vai atender para servir os arquivos e imagens subidos pelos usuários. (default:/media
)
-
Twitter:
OPAC_TWITTER_CONSUMER_KEY
: Twitter comuser key (default:'consum3r-k3y'
)OPAC_TWITTER_CONSUMER_SECRET
: Twitter comuser secret (default:'consum3r-secr3t'
)OPAC_TWITTER_ACCESS_TOKEN
: Twitter access token (default:'acc3ss-tok3n-secr3t'
)OPAC_TWITTER_ACCESS_TOKEN_SECRET
: Twitter access token (default:'acc3ss-tok3n-secr3t'
)OPAC_TWITTER_SCREEN_NAME
: Twitter screen name (default:'RedeSciELO'
)
-
Metrics:
OPAC_METRICS_URL
: URL para SciELO Analytics (default:'http://analytics.scielo.org'
)
-
Timezone:
LOCAL_ZONE
: Timezone do OPAC. Default'America/Sao_Paulo'
-
Sentry
OPAC_USE_SENTRY
: ativa/desativa a integarção com Sentry, se sim definir como: 'True' (default:'False'
)OPAC_SENTRY_DSN
: (string) DSN definido pelo sentry para este projeto. Utilizado só seOPAC_USE_SENTRY == True
(default:''
)
-
docker build args (ignorar warnings na construção de imagem para desenvolvimento)
OPAC_BUILD_DATE
: data de build. definida noMakefile
em tempo de construção da imagem.OPAC_VCS_REF
: commit do código. definida noMakefile
em tempo de construção da imagem.OPAC_WEBAPP_VERSION
: 'versão do OPAC WEBAPP'. definida noMakefile
em tempo de construção da imagem.
-
CSRF
OPAC_WTF_CSRF_ENABLED
: ativa/desativa o recurso de CSRF (default:True
)OPAC_WTF_CSRF_SECRET_KEY
: chave para segurança nos formulários WTF. (default: (algum valor aleatório alfanumérico)
-
ReadCube:
READCUBE_ENABLED
: ativa/desativa a exibição do link para o ReadCube, se sim definir como:'True'
(default:'False'
)
-
Conexão com SSM:
OPAC_SSM_SCHEME
: Protocolo de conexão com SSM. Opções: 'http' ou 'https' - (default: 'https')OPAC_SSM_DOMAIN
: Dominio/FQDN do conexão com SSM. Ex: 'homolog.ssm.scielo.org - (default: 'ssm.scielo.org')OPAC_SSM_PORT
: Porta de conexão com o SSM. Ex.'8000'
. (default:'80'
)OPAC_SSM_MEDIA_PATH
: Caminho da pasta media do assests no SSM. Ex.'/media/assets/'
- (default:'/media/assets/'
)
-
Cookie de Sessão: (http://flask.pocoo.org/docs/0.12/config/#builtin-configuration-values)
OPAC_SERVER_NAME
: Nome:IP do servidor - (default:None
)OPAC_SESSION_COOKIE_DOMAIN
: o dominio para a cookie da sessão (default:OPAC_SERVER_NAME
)OPAC_SESSION_COOKIE_HTTPONLY
: Seta a flag: httponly da cookie. (defaults toTrue
)OPAC_SESSION_COOKIE_NAME
: nome da cookie de sessão (default:'opac_session'
)OPAC_SESSION_COOKIE_PATH
: path para a cookie de sessão: (default:None
-> ou seja a raiz /)OPAC_SESSION_COOKIE_SECURE
: define se a cookie de sessão deve ser marcada como segura - (default:'False'
)OPAC_SESSION_REFRESH_EACH_REQUEST
: Fazer refresh da cookie em cada request? (Default:'False'
)
-
Cache da app: (usando: https://pythonhosted.org/Flask-Caching/)
OPAC_CACHE_ENABLED
: ativa/desativa o cache com redis (default:True
)OPAC_CACHE_TYPE
: o tipo de backend do cache: 'null', 'redis', outros (default:'redis'
)OPAC_CACHE_NO_NULL_WARNING
: ativa/desativa exibição de warnings quando o CACHE_TYPE é 'null' (default:True
)OPAC_CACHE_DEFAULT_TIMEOUT
: tempo de vida dos objetos no cache. Tempo medido em segundos (default:3600
)OPAC_CACHE_KEY_PREFIX
: prefixo da chave de cache. (default:'opac_cache'
)OPAC_CACHE_REDIS_HOST
: host do servidor redis que vai ser usado no cache. (default:'redis-cache'
)OPAC_CACHE_REDIS_PORT
: porta do servidor redis que vai ser usado no cache. (default:6379
)OPAC_CACHE_REDIS_DB
: nome de db do servidor redis que vai ser usado no cache (inteiro >= 0). (default:0
)OPAC_CACHE_REDIS_PASSWORD
: senha do servidor redis que vai ser usado no cache. (default =''
)
-
Pindom visitor insights:
OPAC_PINGDOM_VISITOR_INSIGHTS_JS_SRC
: URL do JS para utilizar o Pingdom visitor insights (ex://rum-static.pingdom.net/pa-XXXXXXXXX.js
) (default: None)