Skip to content

Commit

Permalink
ci: build nginxs
Browse files Browse the repository at this point in the history
  • Loading branch information
mb-wali committed Dec 12, 2024
1 parent 913a2e7 commit baeac95
Show file tree
Hide file tree
Showing 2 changed files with 197 additions and 0 deletions.
115 changes: 115 additions & 0 deletions mug-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
services:
cache:
image: redis:7
restart: "unless-stopped"
read_only: true
ports:
- "6379:6379"
volumes:
- redis_data:/data

db:
image: postgres:14.13
restart: "unless-stopped"
environment:
- "POSTGRES_USER=inveniordm"
- "POSTGRES_PASSWORD=inveniordm"
- "POSTGRES_DB=inveniordm"
ports:
- "5432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data

mq:
image: rabbitmq:3-management
restart: "unless-stopped"
ports:
- "15672:15672"
- "5672:5672"
volumes:
- rabbitmq_data:/var/lib/rabbitmq

search:
image: opensearchproject/opensearch:2
restart: "unless-stopped"
volumes:
- os_data:/usr/share/opensearch/data
environment:
- bootstrap.memory_lock=true
- "OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m"
- "DISABLE_INSTALL_DEMO_CONFIG=true"
- "DISABLE_SECURITY_PLUGIN=true"
- "discovery.type=single-node"
ulimits:
memlock:
soft: -1
hard: -1
nofile:
soft: 65536
hard: 65536
mem_limit: 2g
ports:
- "9200:9200"
- "9600:9600"

frontend:
image: instance-frontend
depends_on:
- web-ui
- web-api
ports:
- "8000:8000"
volumes:
- static_data:/opt/invenio/var/instance/static

web-ui:
command: ["uwsgi /opt/invenio/var/instance/uwsgi_ui.ini"]
pull_policy: always
image: ghcr.io/sharedrdm/instance:main-mug-v12
env_file: .env.temp
depends_on:
- search
- cache
- mq
volumes:
- static_data:/opt/invenio/var/instance/static
- uploaded_data:/opt/invenio/var/instance/data
- archived_data:/opt/invenio/var/instance/archive
# ports:
# - "5000:5000"

web-api:
command: ["uwsgi /opt/invenio/var/instance/uwsgi_rest.ini"]
pull_policy: always
image: ghcr.io/sharedrdm/instance:main-mug-v12
env_file: .env.temp
depends_on:
- search
- cache
- mq
volumes:
- uploaded_data:/opt/invenio/var/instance/data
- archived_data:/opt/invenio/var/instance/archive
# ports:
# - "5000:5000"

worker:
command: ["celery -A invenio_app.celery worker --beat --events --loglevel=INFO"]
image: ghcr.io/sharedrdm/instance:main-mug-v12
pull_policy: always
env_file: .env.temp
depends_on:
- search
- cache
- mq
volumes:
- uploaded_data:/opt/invenio/var/instance/data

volumes:
redis_data:
postgres_data:
rabbitmq_data:
static_data:
uploaded_data:
os_data:
archived_data:
82 changes: 82 additions & 0 deletions nginx.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020-2024 Graz University of Technology.
#
#

user nginx;
worker_processes 1;

error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;

events {
worker_connections 1024;
}

http {
include /etc/nginx/mime.types;
default_type application/octet-stream;

# Standard log format
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';

# Request tracing log format - includes request id, session id, user id,
# and request timing.
log_format trace '$remote_addr - [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" $request_id '
'$msec $request_time '
'$upstream_http_x_session_id $upstream_http_x_user_id';

access_log /var/log/nginx/access.log trace;

sendfile on;
tcp_nopush on;
tcp_nodelay on;

keepalive_timeout 65;

gzip on;
gzip_disable "msie6";
gzip_http_version 1.1;
gzip_comp_level 5; # or anything between 4-6
gzip_min_length 100;
gzip_proxied any;
# We may need more mime-types here (eg. 'application/x-bibtex')
gzip_types
application/atom+xml
application/javascript
application/json
application/ld+json
application/manifest+json
application/octet-stream
application/rss+xml
application/vnd.geo+json
application/vnd.ms-fontobject
application/x-font-ttf
application/x-javascript
application/x-web-app-manifest+json
application/xhtml+xml
application/xml
application/xml+rss
font/opentype
image/bmp
image/svg+xml
image/x-icon
text/cache-manifest
text/css
text/javascript
text/plain
text/vcard
text/vnd.rim.location.xloc
text/vtt
text/x-component
text/x-cross-domain-policy
text/xml;
gzip_vary on;

include /etc/nginx/conf.d/*.conf;
}

0 comments on commit baeac95

Please sign in to comment.