Em nossa wiki <https://github.com/scieloorg/opac/wiki>
_ você tem as diferentes guias de instalação e configuração para diferentes ambientes:
De desenvolvimento <https://github.com/scieloorg/opac/wiki/Configura%C3%A7%C3%A3o-e-instala%C3%A7%C3%A3o>
_De produção com Gunicorn/Nginx/Supervisor em CentOS <https://github.com/scieloorg/opac/wiki/Configura%C3%A7%C3%A3o-e-instala%C3%A7%C3%A3o-%28ambiente-de-produ%C3%A7%C3%A3o%29-Gunicorn>
_De produção com Chaussette/Nginx/Circus em CentOS <https://github.com/scieloorg/opac/wiki/Configura%C3%A7%C3%A3o-e-instala%C3%A7%C3%A3o-%28ambiente-de-produ%C3%A7%C3%A3o%29-Gunicorn>
_
Pode acessar nossa wiki <https://github.com/scieloorg/opac/wiki/Configura%C3%A7%C3%A3o-padr%C3%A3o-e-vari%C3%A1veis-de-ambiente>
_ para ter uma guia completa e como ajustar a configuração a partir de um arquivo de configuração em cada instância ou utilizando variáveis de ambiente.
Caso queira apresentar na home do website o link para a versão anterior do site
PREVIOUS_WEBSITE_URI=https://old.scielo.br
Caso queira apresentar na home do website qualquer mensagem de texto
ALERT_MSG_PT=Novo portal pode conter incorreções ALERT_MSG_EN=New portal may contain inaccuracies ALERT_MSG_ES=Nuevo portal puede contener incorrecciones
- Para rodar os tests de unidade, pode executar:
make test
- Para ter o relatório de coverage deve executar:
make test_coverage
-
Dockerfile: contém as definições para construir a imagem pronta para instalar em produção
-
Dockerfile-dev: contém as definições para construir a imagem pronta para instalar em desenvolvimento
-
docker-compose.yml: contém as definições para iniciar todos os containers necessários para rodar em produção
-
docker-compose-build.yml: contém as definições para construir as imagems e iniciar todos os containers necessários para rodar no Travis/CI
-
docker-compose-dev.yml: contém as definições para iniciar todos os containers necessários para rodar em desenvolvimento
Variável | Valor padrão | Valores possíveis | Última avaliação | Observações |
---|---|---|---|---|
OPAC_USE_HOME_METRICS | False | True/False | 21/11/2021 | ativa/desativa a apresentação dos dados de métricas da coleção (default: False), o padrão é não apresentar |
OPAC_DEBUG_MODE | False | True/False | 21/11/2021 | ativa/desativa o modo Debug da app, deve estar desativado em produção! (default: False) |
OPAC_SECRET_KEY | secr3t-k3y | '123523445werw45345' | 21/11/2021 | chave aleatória necessária para segurança nos formulario da app. |
OPAC_COLLECTION | scl | scl, spa, mex, cub, entre outros acrônimos válidos | 21/11/2021 | acrônimo da coleção do opac |
OPAC_DEFAULT_EMAIL | [email protected] | [email protected], [email protected] | 21/11/2021 | conta de email para envio de mensagens desde o site |
OPAC_MAIL_SERVER | localhost | localhost, 127.0.0.1, 0.0.0.0 | 21/11/2021 | host do servidor de emails |
OPAC_MAIL_PORT | 1025 | 25, 485, 1025 | 21/11/2021 | porta do servidor de emails |
OPAC_MAIL_USE_TLS | False | True/False | 21/11/2021 | ativa/desativa envio de email com TLS |
OPAC_MAIL_USE_SSL | False | True/False | 21/11/2021 | ativa/desativa envio de email com SSL |
OPAC_MONGODB_NAME | opac | opac, opac_spa, opac_mex | 21/11/2021 | nome do banco |
OPAC_MONGODB_HOST | localhost | localhost, 127.0.0.1, 0.0.0.0 | 21/11/2021 | host do banco |
OPAC_MONGODB_PORT | 27017 | 27017, 27018, 27019 | 21/11/2021 | porta do banco |
OPAC_MONGODB_USER | None | opac_user | 21/11/2021 | usuário para acessar o banco, essa variável é opcional |
OPAC_MONGODB_PASS | None | 12345 | 21/11/2021 | password para acessar o banco |
OPAC_DATABASE_FILE | opac.sqlite | opac_spa.sqlite | 21/11/2021 | nome do arquivo (sqlite) |
OPAC_DATABASE_DIR | /tmp | /app/database/, /app, /tmp | 21/11/2021 | pasta aonde fica o banco (sqlite) |
OPAC_DATABASE_DIR | sqlite:////tmp/opac.sqlite | sqlite:////tmp/opac.sqlite | 21/11/2021 | URI do banco sql opcional |
GA_TRACKING_CODE | G-MKLVK7B5B4 | G-MKLVK7B4B6 | 21/11/2021 | código de google analytics (acesse https://goo.gl/HE77SO para resgatar seu código) |
OPAC_MEDIA_ROOT | /[repo dir]/opac/opac/webapp/media/ | /[repo dir]/opac/opac/webapp/media/ | 21/11/2021 | path absoluto da pasta que vai armazenar as imagens subidas pelos usuários pelo admin. |
OPAC_MEDIA_URL | /media/ | /media/ | 21/11/2021 | URL para servir as imagens. |
FILES_ALLOWED_EXTENSIONS | ('txt', 'pdf', 'csv', 'xls', 'doc', 'ppt', 'xlsx', 'docx', 'pptx', 'html', 'htm') | ('txt', 'pdf', 'csv', 'xls', 'doc', 'ppt', 'xlsx', 'docx', 'pptx', 'html', 'htm') | 21/11/2021 | conjunto de extensões dos arquivos permitidos para upload |
IMAGES_ALLOWED_EXTENSIONS | ('png', 'jpg', 'jpeg', 'gif', 'webp') | ('png', 'jpg', 'jpeg', 'gif', 'webp') | 21/11/2021 | extensão imagens permitidas para upload |
THUMBNAIL_HEIGHT | 100 | 100, 200, | 21/11/2021 | altura do thumbnail |
THUMBNAIL_WIDTH | 100 | 100, 200, | 21/11/2021 | largura do thumbnail |
OPAC_TWITTER_CONSUMER_KEY | consum3r-k3y | consum3r-k3y | 21/11/2021 | Twitter consumer key |
OPAC_TWITTER_CONSUMER_SECRET | consum3r-secr3t | consum3r-secr3t | 21/11/2021 | Twitter consumer secret |
OPAC_TWITTER_ACCESS_TOKEN | acc3ss-tok3n-secr3t | acc3ss-tok3n-secr3t | 21/11/2021 | Twitter access token |
OPAC_TWITTER_ACCESS_TOKEN_SECRET | acc3ss-tok3n-secr3t | acc3ss-tok3n-secr3t | 21/11/2021 | Twitter access token |
OPAC_TWITTER_SCREEN_NAME | RedeSciELO | RedeSciELO, SciELO, Scielo Espanha | 21/11/2021 | Twitter screen name |
OPAC_USE_METRICS | False | True/False | 21/11/2021 | ativa/desativa a integração com o SciELO Analytics. Se sim, definir como 'True' |
OPAC_METRICS_URL | http://analytics.scielo.org | http://analytics.scielo.org | 21/11/2021 | URL para SciELO Analytics |
OPAC_USE_DIMENSIONS | False | True/False | 21/11/2021 | ativa/desativa a integração com o Dimensions. Se sim, definir como 'True' |
OPAC_DIMENSIONS_METRICS_URL | https://badge.dimensions.ai/details/doi | https://badge.dimensions.ai/details/doi | 21/11/2021 | URL para o Dimensions |
OPAC_USE_PLUMX | False | True/False | 21/11/2021 | ativa/desativa a integração com o PlumX. Se sim, definir como 'True' |
OPAC_PLUMX_METRICS_URL | //cdn.plu.mx/widget-popup.js | //cdn.plu.mx/widget-popup.js | 21/11/2021 | URL para o PlumX |
OPAC_USE_SCIENCEOPEN | False | True/False | 21/11/2021 | ativa/desativa a integração de métricas com o ScienceOpen. Se sim, definir como 'True' |
OPAC_USE_SCITE | False | True/False | 21/11/2021 | ativa/desativa a integração de métricas com _SCITE. Se sim, definir como 'True' |
OPAC_SCITE_URL | https://cdn.scite.ai/badge/scite-badge-latest.min.js | https://cdn.scite.ai/badge/scite-badge-latest.min.js | 21/11/2021 | URL para o SCITE_ JS |
OPAC_SCITE_METRICS_URL | https://scite.ai/reports/ | https://scite.ai/reports/ | 21/11/2021 | URL para o Scite_ |
LOCAL_ZONE | 'America/Sao_Paulo' | 'America/Sao_Paulo' | 21/11/2021 | Localização para data |
OPAC_USE_SENTRY | False | True/False | 21/11/2021 | ativa/desativa a integração com Sentry, se sim definir como: 'True' |
OPAC_SENTRY_DSN | None | DSN do Sentry | 21/11/2021 | DSN definido pelo sentry para este projeto. Utilizado só se OPAC_USE_SENTRY == True |
OPAC_BUILD_DATE | None | 05/11/2002, 09/02/2009 | 21/11/2021 | data de build. definida em tempo de construção da imagem |
OPAC_VCS_REF | None | None | 21/11/2021 | commit do código. definida pelo travis em tempo de construção da imagem. |
OPAC_WEBAPP_VERSION | None | 3.44.5,3.43.2 | 21/11/2021 | 'versão do OPAC WEBAPP'. definida pelo travis em tempo de construção da imagem. definida pelo travis em tempo de construção da imagem. |
OPAC_WTF_CSRF_ENABLED | True | True/False | 21/11/2021 | ativa/desativa o recurso de CSRF |
OPAC_WTF_CSRF_SECRET_KEY | JGvNWiwBIq2Iig89LWbV | 21/11/2021 | chave para segurança nos formulários WTF. | |
READCUBE_ENABLED | False | True/False | 21/11/2021 | ativa/desativa a exibição do link para o ReadCube, se sim definir como: 'True' |
OPAC_SSM_SCHEME | https | http/https | 21/11/2021 | Protocolo de conexão com SSM. Opções: 'http' ou 'https' - (default: 'https') |
OPAC_SSM_DOMAIN | ssm.scielo.org | ssm.scielo.org dam.doamin.suffix | 21/11/2021 | Dominio/FQDN da conexão com SSM. Ex: 'homolog.ssm.scielo.org |
OPAC_SSM_PORT | 80 | 80, 8000 | 21/11/2021 | Dominio/FQDN da conexão com SSM. |
OPAC_SSM_MEDIA_PATH | '/media/assets/' | '/media/assets/', '/media/files/' | 21/11/2021 | Path da pasta media do assests no SSM. |
OPAC_SSM_XML_URL_REWRITE | True | True/False | 21/11/2021 | Troca o scheme + authority da URL armazenada em Article.xml por OPAC_SSM_SCHEME + '://' + OPAC_SSM_DOMAIN + ':' + OPAC_SSM_PORT . |
OPAC_SERVER_NAME | None | www.scielo.br, www.scielosp.org | 21/11/2021 | Nome: IP do servidor |
OPAC_SESSION_COOKIE_DOMAIN | OPAC_SERVER_NAME | www.scielo.br, www.scielosp.org | 21/11/2021 | O dominio para a cookie da sessão |
OPAC_SESSION_COOKIE_HTTPONLY | True | True/False | 21/11/2021 | Seta a flag: httponly da cookie. |
OPAC_SESSION_COOKIE_NAME | opac_session | opac_session | 21/11/2021 | nome da cookie de sessão |
OPAC_SESSION_COOKIE_PATH | None | '/' | 21/11/2021 | path para a cookie de sessão |
OPAC_SESSION_COOKIE_SECURE | False | True/False | 21/11/2021 | define se a cookie de sessão deve ser marcada como segura |
OPAC_SESSION_REFRESH_EACH_REQUEST | False | True/False | 21/11/2021 | Fazer refresh da cookie em cada request? |
OPAC_CACHE_ENABLED | True | True/False | 21/11/2021 | ativa/desativa o cache com redis |
OPAC_CACHE_TYPE | redis | redi, null | 21/11/2021 | O tipo de backend do cache: 'null', 'redis', outros |
OPAC_CACHE_NO_NULL_WARNING | True | True/False | 21/11/2021 | ativa/desativa exibição de warnings quando o CACHE_TYPE é 'null' |
OPAC_CACHE_DEFAULT_TIMEOUT | 3600 | 3600, 5200 | 21/11/2021 | tempo de vida dos objetos no cache. Tempo medido em segundos |
OPAC_CACHE_KEY_PREFIX | opac_cache | opac_cache, opac, cache | 21/11/2021 | prefixo da chave de cache |
OPAC_CACHE_REDIS_HOST | redis-cache | redis-cache | 21/11/2021 | host do servidor redis que vai ser usado no cache. |
OPAC_CACHE_REDIS_PORT | 6379 | 6379 | 21/11/2021 | porta do servidor redis que vai ser usado no cache. |
OPAC_CACHE_REDIS_DB | 0 | inteiro >= 0 | 21/11/2021 | nome de db do servidor redis que vai ser usado no cache |
OPAC_CACHE_REDIS_PASSWORD | None | senha | 21/11/2021 | senha do servidor redis que vai ser usado no cache. |
OPAC_PINGDOM_VISITOR_INSIGHTS_JS_SRC | None | //rum-static.pingdom.net/pa-XXXXXXXXX.js | 21/11/2021 | URL do JS para utilizar o Pingdom visitor insights (ex: //rum-static.pingdom.net/pa-XXXXXXXXX.js ) |
OPAC_GOOGLE_RECAPTCHA_SECRET_KEY | chave do google | 21/11/2021 | Chave do site | |
OPAC_GOOGLE_VERIFY_RECAPTCHA_KEY | chave do secreta do google | 6LcMGeoUAAAAALMHmu9872DeufdBVvF2ZRBzEwyCn7Jd | 21/11/2021 | Chave secreta do parceiro |
OPAC_GOOGLE_RECAPTCHA_URL | chave do secreta do google | 21/11/2021 | URL do JavaScript Google reCAPTCHA | |
OPAC_GOOGLE_VERIFY_RECAPTCHA_URL | https://www.google.com/recaptcha/api/siteverify | https://www.google.com/recaptcha/api/siteverify | 21/11/2021 | URL de verificação do google |
OPAC_EMAIL_ACCOUNTS_RECEIVE_ERRORS | None | [email protected] | 21/11/2021 | Contas de email para receber mensagens de erros da interface |
OPAC_AUDIT_LOG_NOTIFICATION_ENABLED | True | True/False | 21/11/2021 | ativa/desativa envio de notificações via email do relatorio de auditoria |
OPAC_AUDIT_LOG_NOTIFICATION_ENABLED | True | True/False | 21/11/2021 | ativa/desativa envio de notificações via email do relatorio de auditoria |
OPAC_AUDIT_LOG_NOTIFICATION_RECIPIENTS | [email protected] | emails | 21/11/2021 | lista de email que devem receber o emails com relatorio de auditoria |
OPAC_RQ_REDIS_HOST | localhost | localhost, 127.0.0.1, 0.0.0.0 | 21/11/2021 | localhost do servidor de Redis (pode ser o mesmo server do Cache) |
OPAC_RQ_REDIS_PORT | None | None | 21/11/2021 | porta do servidor de Redis (pode ser o mesmo server do Cache) |
OPAC_RQ_REDIS_PASSWORD | None | None | 21/11/2021 | senha do servidor de Redis (pode ser o mesmo server do Cache) |
OPAC_MAILING_CRON_STRING | None | None | 21/11/2021 | valor de cron padrão para o envio de emails |
OPAC_DEFAULT_SCHEDULER_TIMEOUT | 1000 | None | 21/11/2021 | timeout do screduler cron. |
OPAC_MATHJAX_CDN_URL | https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=TeX-AMS-MML_HTMLorMML | https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=TeX-AMS-MML_HTMLorMML | 21/11/2021 | string com a URL do mathjax padrão |
URL_SCIELO_ORG | //www.scielo.org | //www.scielo.org | 21/11/2021 | URL para o SciELO.org |
URL_BLOG_SCIELO | //blog.scielo.org | //blog.scielo.org | 21/11/2021 | URL para o Blog SciELO em Perspectiva |
URL_SEARCH | //search.scielo.org/ | //search.scielo.org/ | 21/11/2021 | URL para o Search SciELO |
URL_BLOG_PRESSRELEASE | //pressreleases.scielo.org | //pressreleases.scielo.org | 21/11/2021 | URL para o Blog SciELO em Perspectiva Press releases |
OPAC_COOKIE_POLICY_ENABLED | https://static.scielo.org/js/cookiePolicy.min.js | ttps://static.scielo.org/js/cookiePolicy.min.js | 21/11/2021 | ativa/desativa o javascript de política de cookie, se sim definir como: 'True' caso contrário 'False' |
OPAC_ORCID_URL | http://orcid.org/ | http://orcid.org/ | 21/11/2021 | URL do ORCID.) |
OPAC_FORCE_USE_HTTPS_GOOGLE_TAGS | True | True/False | 21/11/2021 | Força o uso de https nas URLs para do site do OPAC nas tags do google |
OPAC_FILTER_SECTION_ENABLE | False | True/False | 21/11/2021 | ativa/desativa o filtro por seção na página do issue |
Para executar o ambiente (de desenvolvimento) com Docker, utilizando as definições do arquivo Dockerfile-dev e docker-compose.yml-dev na raiz do projeto. Simplesmente executar:
- executar:
make dev_compose_build
para construir a imagem do OPAC. - executar:
make dev_compose_up
para rodar os containers. - acessar pelo browser: http://localhost ou no caso de utilizar OSx trocar localhost pela IP da maquina default (ver na saída do comando:
docker-machine ip
) - para inspecionar os logs, executar:
make dev_compose_logs
- para interromper os containers, executar:
make dev_compose_stop
- para abrir uma terminal dentro do container, executar:
make dev_compose_exec_shell_webapp
Procedimento para popular a instância de desenvolvimento a partir de fixtures disponibilizadas pelo SciELO.
- Para execução dos procedimentos que adicionam dados no banco é necessário que o ambiente de desenvolvimento do OPAC esteja rodando
make dev_compose_up
- Baixar a fixture de desenvolvimento versão light com 4 periódicos, execute:
wget https://minio.scielo.br/dev/fixtures/opac_br.zip
ou a versão full:wget https://minio.scielo.br/dev/fixtures/opac_br_full.zip
- Extraia o conteúdo, execute:
unzip opac_br.zip
- Repare que uma pasta chamada opac_br foi criada e dentro dela há arquivos .bson, .json, .sqlite e outra pasta chamada media que contém os ativos dos periódicos e da coleção.
- Acesse a pasta opac_br, execute:
cd opac_br
- Utilizando mongorestore realize a recuperação do banco de dados apontando para o endereço que está rodando o seu mongo local, exemplo:
mongorestore --host=localhost --port=27017 -d=opac --dir .
- Realize a cópia da pasta media para a pasta data. A pasta data está na raiz deste repositório e é, por padrão, mapeada à aplicação OPAC.
- Realize a cópia da pasta opac.sqlite para a pasta data. A pasta data está na raiz deste repositório e é, por padrão, mapeada à aplicação OPAC.
- Os seguintes parâmetros devem está configurados no arquivo
docker-compose-dev.yml
:
- OPAC_SSM_DOMAIN=minio.scielo.br
- OPAC_SSM_PORT=443
- OPAC_SSM_SCHEME=https
- OPAC_SSM_XML_URL_REWRITE=False
- Para ambiente utilizando Docker é necessário reiniciar os containers:
make dev_compose_stop
&&make dev_compose_up
Caso não tenha o mongorestore localmente é necessário instalar a aplicação MONGODB DATABASE TOOLS: https://docs.mongodb.com/database-tools/installation/installation/
Para utilizar o ambiente de desenvolvimento com o banco de dados populado a partir dos passos indicados nestas instruções, é necessário estar conectado à VPN da SciELO. Caso não esteja conectado, as páginas de artigos estarão indisponíveis.
A área administrativa possui um usuário cadastrado. Acesse http://0.0.0.0:8000/admin com as seguintes credenciais:
Usuário: [email protected]
Senha: admin
Caso queira alterar para um mongodb local do hospedeiro, é necessário alterar o parâmetro: OPAC_MONGODB_HOST
no docker-compose-dev.yml
.
Para reportar problemas, bugs, ou simplesmente solicitar alguma nova funcionalidade, pode criar um ticket <https://github.com/scieloorg/opac/issues>
_ com seus pedidos.