и поискал в Интернете, но не нашел решения...
Dockerfile:
Код: Выделить всё
FROM python:3.9-slim
WORKDIR /app
COPY . /app
RUN if [ -f requirements.txt ]; then \
pip install --no-cache-dir -r requirements.txt; \
else \
pip freeze > requirements.txt && pip install --no-cache-dir -r requirements.txt; \
fi
EXPOSE 8000
ENV FLASK_APP=app.py
CMD ["gunicorn", "-b", "0.0.0.0:8000", "app:app"]
Код: Выделить всё
services:
web:
build: .
expose:
- "8000"
environment:
- FLASK_ENV=production
apache:
image: httpd:latest
ports:
- "443:443"
volumes:
- ./apache.conf:/usr/local/apache2/conf/httpd.conf
- ./cert.pem:/usr/local/apache2/certificates/cert.pem
- ./key.pem:/usr/local/apache2/certificates/key.pem
depends_on:
- web
memcached:
image: memcached:latest
container_name: memcached
ports:
- "11211:11211"
restart: always
Код: Выделить всё
LoadModule mpm_event_module modules/mod_mpm_event.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule headers_module modules/mod_headers.so
LoadModule log_config_module modules/mod_log_config.so
ServerAdmin webmaster@localhost
Listen 443
ServerName localhost
SSLEngine on
SSLCertificateFile /usr/local/apache2/certificates/cert.pem
SSLCertificateKeyFile /usr/local/apache2/certificates/key.pem
ProxyPass / http://web:8000/
ProxyPassReverse / http://web:8000/
Header always set X-Frame-Options "SAMEORIGIN"
Header always set X-XSS-Protection "1; mode=block"
Header always set X-Content-Type-Options "nosniff"
LogLevel warn
ErrorLog /usr/local/apache2/logs/error_log
CustomLog /usr/local/apache2/logs/access_log combined
Примечание. Если вы видите сообщите мне о любых неправильно установленных портах.
Подробнее здесь: https://stackoverflow.com/questions/793 ... or-message
Мобильная версия