diff --git a/.env.default b/.env.default index f452b90..d8f202d 100644 --- a/.env.default +++ b/.env.default @@ -111,7 +111,9 @@ AE_API_GUNICORN_PORT_WHITE=5070 AE_API_GUNICORN_TIMEOUT=2100 # (default=30; should be much higher) AE_API_GUNICORN_GRACEFUL_TIMEOUT=20 # (default=30) AE_API_GUNICORN_KEEPALIVE=5 # (default=2) +# More workers are noticably faster, but use much more memory. Aproxamately 180 MiB to 200 MiB per worker. AE_API_GUNICORN_WORKERS=2 # (default=2) +# Less threads seems to be more stable... Ideallly just 1 thread per worker. AE_API_GUNICORN_THREADS=2 # (default=2) AE_API_RELOAD=False AE_API_JWT_KEY="ABC123 22 CHARS" # 22 characters; super secret Aether JWT signing key diff --git a/docker-compose.yml b/docker-compose.yml index 8a9e954..63df1c7 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -70,7 +70,9 @@ services: # - nextcloud25 depends_on: # - php7 - - aether_api_gunicorn + # - aether_api_gunicorn + - aether_api_gunicorn_red + - aether_api_gunicorn_green # - aether_api_v5_gunicorn - aether_app_gunicorn # links: @@ -132,53 +134,53 @@ services: # - "${AE_REDIS_PORT}:6379" # API - Default - aether_api_gunicorn: - restart: always - container_name: ${CONTAINER_AE_API} - build: - # context: ./builds - context: ./ - dockerfile: aether_fastapi_gunicorn.Dockerfile - env_file: - - ./.env - environment: - - PUID=1000 - - PGID=1000 - ports: - - "${AE_API_GUNICORN_PORT}:5005" - extra_hosts: - - "${DOCKER_AE_SERVER_EXTRA_HOST}" - - "${DOCKER_AE_APP_SERVER_EXTRA_HOST}" - - "${DOCKER_AE_API_SERVER_EXTRA_HOST}" - - "${DOCKER_AE_API_BAK_SERVER_EXTRA_HOST}" - - "${DOCKER_AE_DB_SERVER_EXTRA_HOST}" - - "linode.oneskyit.com:104.237.143.4" - # - "db.oneskyit.com:104.237.143.4" - # expose: - # - 5005 - # networks: - # - local-net - volumes: - - ./conf/aether_fastapi_gunicorn_conf.py:/conf/gunicorn_fastapi_conf.py - - ./conf/aether_fastapi_requirements_current.txt:/requirements_current.txt - - ./conf/aether_api_config.py:/srv/aether_api/app/config.py + # aether_api_gunicorn: + # restart: always + # container_name: ${CONTAINER_AE_API} + # build: + # # context: ./builds + # context: ./ + # dockerfile: aether_fastapi_gunicorn.Dockerfile + # env_file: + # - ./.env + # environment: + # - PUID=1000 + # - PGID=1000 + # ports: + # - "${AE_API_GUNICORN_PORT}:5005" + # extra_hosts: + # - "${DOCKER_AE_SERVER_EXTRA_HOST}" + # - "${DOCKER_AE_APP_SERVER_EXTRA_HOST}" + # - "${DOCKER_AE_API_SERVER_EXTRA_HOST}" + # - "${DOCKER_AE_API_BAK_SERVER_EXTRA_HOST}" + # - "${DOCKER_AE_DB_SERVER_EXTRA_HOST}" + # - "linode.oneskyit.com:104.237.143.4" + # # - "db.oneskyit.com:104.237.143.4" + # # expose: + # # - 5005 + # # networks: + # # - local-net + # volumes: + # - ./conf/aether_fastapi_gunicorn_conf.py:/conf/gunicorn_fastapi_conf.py + # - ./conf/aether_fastapi_requirements_current.txt:/requirements_current.txt + # - ./conf/aether_api_config.py:/srv/aether_api/app/config.py - - ./logs/ae_api:/logs + # - ./logs/ae_api:/logs - - ./srv/aether_api_ln:/srv/aether_api - - ./srv/hosted_files_ln:/srv/hosted_files - - ./srv/hosted_tmp_ln:/srv/hosted_tmp + # - ./srv/aether_api_ln:/srv/aether_api + # - ./srv/hosted_files_ln:/srv/hosted_files + # - ./srv/hosted_tmp_ln:/srv/hosted_tmp - # - ./tmp/ae_api:/tmp - # - ./tmp/root/aether_fastapi_requirements_current.txt:/aether_fastapi_requirements_current.txt - # - ./temp/ae_api/aether_fastapi_requirements_current.txt:/temp/aether_fastapi_requirements_current.txt - # - ./tmp/test:/var - # links: - # - redis - depends_on: - - redis - stdin_open: true # docker run -i - tty: true # docker run -t + # # - ./tmp/ae_api:/tmp + # # - ./tmp/root/aether_fastapi_requirements_current.txt:/aether_fastapi_requirements_current.txt + # # - ./temp/ae_api/aether_fastapi_requirements_current.txt:/temp/aether_fastapi_requirements_current.txt + # # - ./tmp/test:/var + # # links: + # # - redis + # depends_on: + # - redis + # stdin_open: true # docker run -i + # tty: true # docker run -t # API - Red aether_api_gunicorn_red: @@ -224,50 +226,6 @@ services: stdin_open: true # docker run -i tty: true # docker run -t - # API - Blue - aether_api_gunicorn_blue: - restart: always - container_name: ${CONTAINER_AE_API_BLUE} - build: - # context: ./builds - context: ./ - dockerfile: aether_fastapi_gunicorn.Dockerfile - env_file: - - ./.env - ports: - - "${AE_API_GUNICORN_PORT_BLUE}:5005" - extra_hosts: - - "${DOCKER_AE_SERVER_EXTRA_HOST}" - - "${DOCKER_AE_APP_SERVER_EXTRA_HOST}" - - "${DOCKER_AE_API_SERVER_EXTRA_HOST}" - - "${DOCKER_AE_API_BAK_SERVER_EXTRA_HOST}" - - "${DOCKER_AE_DB_SERVER_EXTRA_HOST}" - - "linode.oneskyit.com:104.237.143.4" - # - "db.oneskyit.com:104.237.143.4" - # expose: - # - 5005 - # networks: - # - local-net - volumes: - - ./conf/aether_fastapi_gunicorn_conf.py:/conf/gunicorn_fastapi_conf.py - - ./conf/aether_fastapi_requirements_current.txt:/requirements_current.txt - - ./conf/aether_api_config.py:/srv/aether_api/app/config.py - - - ./logs/ae_api:/logs - - - ./srv/aether_api_ln:/srv/aether_api - - ./srv/hosted_files_ln:/srv/hosted_files - - ./srv/hosted_tmp_ln:/srv/hosted_tmp - - # - ./tmp/ae_api:/tmp - - ./temp/ae_api:/temp - # links: - # - redis - depends_on: - - redis - stdin_open: true # docker run -i - tty: true # docker run -t - # API - Green aether_api_gunicorn_green: restart: always @@ -312,6 +270,50 @@ services: stdin_open: true # docker run -i tty: true # docker run -t + # API - Blue + # aether_api_gunicorn_blue: + # restart: always + # container_name: ${CONTAINER_AE_API_BLUE} + # build: + # # context: ./builds + # context: ./ + # dockerfile: aether_fastapi_gunicorn.Dockerfile + # env_file: + # - ./.env + # ports: + # - "${AE_API_GUNICORN_PORT_BLUE}:5005" + # extra_hosts: + # - "${DOCKER_AE_SERVER_EXTRA_HOST}" + # - "${DOCKER_AE_APP_SERVER_EXTRA_HOST}" + # - "${DOCKER_AE_API_SERVER_EXTRA_HOST}" + # - "${DOCKER_AE_API_BAK_SERVER_EXTRA_HOST}" + # - "${DOCKER_AE_DB_SERVER_EXTRA_HOST}" + # - "linode.oneskyit.com:104.237.143.4" + # # - "db.oneskyit.com:104.237.143.4" + # # expose: + # # - 5005 + # # networks: + # # - local-net + # volumes: + # - ./conf/aether_fastapi_gunicorn_conf.py:/conf/gunicorn_fastapi_conf.py + # - ./conf/aether_fastapi_requirements_current.txt:/requirements_current.txt + # - ./conf/aether_api_config.py:/srv/aether_api/app/config.py + + # - ./logs/ae_api:/logs + + # - ./srv/aether_api_ln:/srv/aether_api + # - ./srv/hosted_files_ln:/srv/hosted_files + # - ./srv/hosted_tmp_ln:/srv/hosted_tmp + + # # - ./tmp/ae_api:/tmp + # - ./temp/ae_api:/temp + # # links: + # # - redis + # depends_on: + # - redis + # stdin_open: true # docker run -i + # tty: true # docker run -t + # API - Black # aether_api_gunicorn_black: # restart: always @@ -420,7 +422,9 @@ services: - ./tmp/ae_app:/tmp depends_on: - - aether_api_gunicorn + # - aether_api_gunicorn + - aether_api_gunicorn_red + - aether_api_gunicorn_green stdin_open: true # docker run -i tty: true # docker run -t