mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 08:47:12 +03:00
ca2488737b
I frequently find myself wanting to run hgweb in a production-like environment, with a real HTTP server and multiple WSGI workers. This patch introduces a Docker environment for running Mercurial under Apache + mod_wsgi. With just a few command executions, it is possible to spin up a Docker container running hgweb. The container is tailored for Mercurial developers wanting to run Mercurial from a source checkout. It is **not** meant to be something suitable for production use. The container provides a default hgweb environment with an empty repository that allows pushes. You can thus start a container and push your favorite repository there for quick testing. The container is designed to allow customizations. Users can provide their own hgweb configurations and mount existing directories containing repositories into the container. The behavior of the container and how to control things is documented in the README.rst file.
25 lines
713 B
Plaintext
25 lines
713 B
Plaintext
# Apache won't be able to resolve its own hostname, so we sneak this
|
|
# into the global context to silence a confusing-to-user warning on
|
|
# server start.
|
|
ServerName hg
|
|
|
|
<VirtualHost *:80>
|
|
DocumentRoot /var/hg/htdocs
|
|
<Directory />
|
|
Options FollowSymLinks
|
|
AllowOverride None
|
|
</Directory>
|
|
|
|
SetEnv HGENCODING UTF-8
|
|
SetEnv LC_TYPE UTF-8
|
|
|
|
WSGIDaemonProcess hg processes=${WSGI_PROCESSES} threads=${WSGI_THREADS} maximum-requests=${WSGI_MAX_REQUESTS} user=www-data group=www-data display-name=hg-wsgi
|
|
WSGIProcessGroup hg
|
|
|
|
WSGIScriptAliasMatch ^(.*) /var/hg/htdocs/hgweb.wsgi$1
|
|
|
|
ErrorLog ${APACHE_LOG_DIR}/error.log
|
|
LogLevel warn
|
|
CustomLog ${APACHE_LOG_DIR}/access.log combined
|
|
</VirtualHost>
|