Show More
@@ -1,101 +1,101 b'' | |||||
1 | .. _sec-your-server: |
|
1 | .. _sec-sophos-umc: | |
2 |
|
2 | |||
3 | Securing Your Server via Sophos UTM 9 |
|
3 | Securing Your Server via Sophos UTM 9 | |
4 | ------------------------------------- |
|
4 | ------------------------------------- | |
5 |
|
5 | |||
6 |
|
6 | |||
7 |
|
7 | |||
8 | Below is an example configuration for Sophos UTM 9 Webserver Protection:: |
|
8 | Below is an example configuration for Sophos UTM 9 Webserver Protection:: | |
9 |
|
9 | |||
10 | Sophos UTM 9 Webserver Protection |
|
10 | Sophos UTM 9 Webserver Protection | |
11 | Web Application Firewall based on apache2 modesecurity2 |
|
11 | Web Application Firewall based on apache2 modesecurity2 | |
12 | -------------------------------------------------- |
|
12 | -------------------------------------------------- | |
13 | 1. Firewall Profiles -> Firewall Profile |
|
13 | 1. Firewall Profiles -> Firewall Profile | |
14 | -------------------------------------------------- |
|
14 | -------------------------------------------------- | |
15 | Name: RhodeCode (can be anything) |
|
15 | Name: RhodeCode (can be anything) | |
16 | Mode: Reject |
|
16 | Mode: Reject | |
17 | Hardening & Signing: |
|
17 | Hardening & Signing: | |
18 | [ ] Static URL hardeninig |
|
18 | [ ] Static URL hardeninig | |
19 | [ ] Form hardening |
|
19 | [ ] Form hardening | |
20 | [x] Cookie Signing |
|
20 | [x] Cookie Signing | |
21 | Filtering: |
|
21 | Filtering: | |
22 | [x] Block clients with bad reputation |
|
22 | [x] Block clients with bad reputation | |
23 | [x] Common Threats Filter |
|
23 | [x] Common Threats Filter | |
24 | [ ] Rigid Filtering |
|
24 | [ ] Rigid Filtering | |
25 | Skip Filter Rules: |
|
25 | Skip Filter Rules: | |
26 | 960015 |
|
26 | 960015 | |
27 | 950120 |
|
27 | 950120 | |
28 | 981173 |
|
28 | 981173 | |
29 | 970901 |
|
29 | 970901 | |
30 | 960010 |
|
30 | 960010 | |
31 | 960032 |
|
31 | 960032 | |
32 | 960035 |
|
32 | 960035 | |
33 | 958291 |
|
33 | 958291 | |
34 | 970903 |
|
34 | 970903 | |
35 | 970003 |
|
35 | 970003 | |
36 | Common Threat Filter Categories: |
|
36 | Common Threat Filter Categories: | |
37 | [x] Protocol violations |
|
37 | [x] Protocol violations | |
38 | [x] Protocol anomalies |
|
38 | [x] Protocol anomalies | |
39 | [x] Request limit |
|
39 | [x] Request limit | |
40 | [x] HTTP policy |
|
40 | [x] HTTP policy | |
41 | [x] Bad robots |
|
41 | [x] Bad robots | |
42 | [x] Generic attacks |
|
42 | [x] Generic attacks | |
43 | [x] SQL injection attacks |
|
43 | [x] SQL injection attacks | |
44 | [x] XSS attacks |
|
44 | [x] XSS attacks | |
45 | [x] Tight security |
|
45 | [x] Tight security | |
46 | [x] Trojans |
|
46 | [x] Trojans | |
47 | [x] Outbound |
|
47 | [x] Outbound | |
48 | Scanning: |
|
48 | Scanning: | |
49 | [ ] Enable antivirus scanning |
|
49 | [ ] Enable antivirus scanning | |
50 | [ ] Block uploads by MIME type |
|
50 | [ ] Block uploads by MIME type | |
51 | -------------------------------------------------- |
|
51 | -------------------------------------------------- | |
52 | 2. Web Application Firewall -> Real Webservers |
|
52 | 2. Web Application Firewall -> Real Webservers | |
53 | -------------------------------------------------- |
|
53 | -------------------------------------------------- | |
54 | Name: RhodeCode (can be anything) |
|
54 | Name: RhodeCode (can be anything) | |
55 | Host: Your RhodeCode-Server (UTM object) |
|
55 | Host: Your RhodeCode-Server (UTM object) | |
56 | Type: Encrypted (HTTPS) |
|
56 | Type: Encrypted (HTTPS) | |
57 | Port: 443 |
|
57 | Port: 443 | |
58 | -------------------------------------------------- |
|
58 | -------------------------------------------------- | |
59 | 3. Web Application Firewall -> Virual Webservers |
|
59 | 3. Web Application Firewall -> Virual Webservers | |
60 | -------------------------------------------------- |
|
60 | -------------------------------------------------- | |
61 | Name: RhodeCode (can be anything) |
|
61 | Name: RhodeCode (can be anything) | |
62 | Interface: WAN (your WAN interface) |
|
62 | Interface: WAN (your WAN interface) | |
63 | Type: Encrypted (HTTPS) & redirect |
|
63 | Type: Encrypted (HTTPS) & redirect | |
64 | Certificate: Wildcard or matching domain certificate |
|
64 | Certificate: Wildcard or matching domain certificate | |
65 | Domains (in case of Wildcard certificate): |
|
65 | Domains (in case of Wildcard certificate): | |
66 | rhodecode.yourcompany.com (match your DNS configuration) |
|
66 | rhodecode.yourcompany.com (match your DNS configuration) | |
67 | gist.yourcompany.com (match your DNS & RhodeCode configuration) |
|
67 | gist.yourcompany.com (match your DNS & RhodeCode configuration) | |
68 | Real Webservers for path '/': |
|
68 | Real Webservers for path '/': | |
69 | [x] RhodeCode (created in step 2) |
|
69 | [x] RhodeCode (created in step 2) | |
70 | Firewall: RhodeCode (created in step 1) |
|
70 | Firewall: RhodeCode (created in step 1) | |
71 | -------------------------------------------------- |
|
71 | -------------------------------------------------- | |
72 | 4. Firewall Profiles -> Exceptions |
|
72 | 4. Firewall Profiles -> Exceptions | |
73 | -------------------------------------------------- |
|
73 | -------------------------------------------------- | |
74 | Name: RhodeCode exceptions (can be anything) |
|
74 | Name: RhodeCode exceptions (can be anything) | |
75 | Skip these checks: |
|
75 | Skip these checks: | |
76 | [ ] Cookie signing |
|
76 | [ ] Cookie signing | |
77 | [ ] Static URL Hardening |
|
77 | [ ] Static URL Hardening | |
78 | [ ] Form hardening |
|
78 | [ ] Form hardening | |
79 | [x] Antivirus scanning |
|
79 | [x] Antivirus scanning | |
80 | [x] True file type control |
|
80 | [x] True file type control | |
81 | [ ] Block clients with bad reputation |
|
81 | [ ] Block clients with bad reputation | |
82 | Skip these categories: |
|
82 | Skip these categories: | |
83 | [ ] Protocol violations |
|
83 | [ ] Protocol violations | |
84 | [x] Protocol anomalies |
|
84 | [x] Protocol anomalies | |
85 | [x] Request limits |
|
85 | [x] Request limits | |
86 | [ ] HTTP policy |
|
86 | [ ] HTTP policy | |
87 | [ ] Bad robots |
|
87 | [ ] Bad robots | |
88 | [ ] Generic attacks |
|
88 | [ ] Generic attacks | |
89 | [ ] SQL injection attacks |
|
89 | [ ] SQL injection attacks | |
90 | [ ] XSS attacks |
|
90 | [ ] XSS attacks | |
91 | [ ] Tight security |
|
91 | [ ] Tight security | |
92 | [ ] Trojans |
|
92 | [ ] Trojans | |
93 | [x] Outbound |
|
93 | [x] Outbound | |
94 | Virtual Webservers: |
|
94 | Virtual Webservers: | |
95 | [x] RhodeCode (created in step 3) |
|
95 | [x] RhodeCode (created in step 3) | |
96 | For All Requests: |
|
96 | For All Requests: | |
97 | Web requests matching this pattern: |
|
97 | Web requests matching this pattern: | |
98 | /_channelstream/ws |
|
98 | /_channelstream/ws | |
99 | /Repository1/* |
|
99 | /Repository1/* | |
100 | /Repository2/* |
|
100 | /Repository2/* | |
101 | /Repository3/* No newline at end of file |
|
101 | /Repository3/* |
@@ -1,317 +1,317 b'' | |||||
1 | # -*- coding: utf-8 -*- |
|
1 | # -*- coding: utf-8 -*- | |
2 | # |
|
2 | # | |
3 | # RhodeCode Enterprise documentation build configuration file, created by |
|
3 | # RhodeCode Enterprise documentation build configuration file, created by | |
4 | # sphinx-quickstart on Tue Nov 4 11:48:37 2014. |
|
4 | # sphinx-quickstart on Tue Nov 4 11:48:37 2014. | |
5 | # |
|
5 | # | |
6 | # This file is execfile()d with the current directory set to its |
|
6 | # This file is execfile()d with the current directory set to its | |
7 | # containing dir. |
|
7 | # containing dir. | |
8 | # |
|
8 | # | |
9 | # Note that not all possible configuration values are present in this |
|
9 | # Note that not all possible configuration values are present in this | |
10 | # autogenerated file. |
|
10 | # autogenerated file. | |
11 | # |
|
11 | # | |
12 | # All configuration values have a default; values that are commented out |
|
12 | # All configuration values have a default; values that are commented out | |
13 | # serve to show the default. |
|
13 | # serve to show the default. | |
14 |
|
14 | |||
15 | import sys |
|
15 | import sys | |
16 | import os |
|
16 | import os | |
17 | import datetime |
|
17 | import datetime | |
18 | import sphinx_rtd_theme |
|
18 | import sphinx_rtd_theme | |
19 |
|
19 | |||
20 | # If extensions (or modules to document with autodoc) are in another directory, |
|
20 | # If extensions (or modules to document with autodoc) are in another directory, | |
21 | # add these directories to sys.path here. If the directory is relative to the |
|
21 | # add these directories to sys.path here. If the directory is relative to the | |
22 | # documentation root, use os.path.abspath to make it absolute, like shown here. |
|
22 | # documentation root, use os.path.abspath to make it absolute, like shown here. | |
23 | sys.path.insert(0, os.path.abspath('.')) |
|
23 | sys.path.insert(0, os.path.abspath('.')) | |
24 | import common |
|
24 | import common | |
25 |
|
25 | |||
26 | # -- General configuration ------------------------------------------------ |
|
26 | # -- General configuration ------------------------------------------------ | |
27 |
|
27 | |||
28 | # If your documentation needs a minimal Sphinx version, state it here. |
|
28 | # If your documentation needs a minimal Sphinx version, state it here. | |
29 | #needs_sphinx = '1.0' |
|
29 | #needs_sphinx = '1.0' | |
30 |
|
30 | |||
31 | # Add any Sphinx extension module names here, as strings. They can be |
|
31 | # Add any Sphinx extension module names here, as strings. They can be | |
32 | # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom |
|
32 | # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom | |
33 | # ones. |
|
33 | # ones. | |
34 | extensions = [ |
|
34 | extensions = [ | |
35 | 'sphinx.ext.intersphinx', |
|
35 | 'sphinx.ext.intersphinx', | |
36 | 'sphinx.ext.todo', |
|
36 | 'sphinx.ext.todo', | |
37 |
'sphinx.ext. |
|
37 | 'sphinx.ext.imgmath' | |
38 | ] |
|
38 | ] | |
39 |
|
39 | |||
40 | intersphinx_mapping = { |
|
40 | intersphinx_mapping = { | |
41 | 'enterprise': ('https://docs.rhodecode.com/RhodeCode-Enterprise/', None), |
|
41 | 'enterprise': ('https://docs.rhodecode.com/RhodeCode-Enterprise/', None), | |
42 | 'control': ('https://docs.rhodecode.com/RhodeCode-Control/', None), |
|
42 | 'control': ('https://docs.rhodecode.com/RhodeCode-Control/', None), | |
43 | } |
|
43 | } | |
44 |
|
44 | |||
45 | if tags.has('dev'): |
|
45 | if tags.has('dev'): | |
46 | intersphinx_mapping.update({ |
|
46 | intersphinx_mapping.update({ | |
47 | 'enterprise': ('https://ci.rhodecode.com/documentation/Momentum/', None), |
|
47 | 'enterprise': ('https://ci.rhodecode.com/documentation/Momentum/', None), | |
48 | 'control': ('https://ci.rhodecode.com/documentation/Control/', None), |
|
48 | 'control': ('https://ci.rhodecode.com/documentation/Control/', None), | |
49 | }) |
|
49 | }) | |
50 |
|
50 | |||
51 |
|
51 | |||
52 | # Add any paths that contain templates here, relative to this directory. |
|
52 | # Add any paths that contain templates here, relative to this directory. | |
53 | templates_path = ['_templates'] |
|
53 | templates_path = ['_templates'] | |
54 |
|
54 | |||
55 | # The suffix of source filenames. |
|
55 | # The suffix of source filenames. | |
56 | source_suffix = '.rst' |
|
56 | source_suffix = '.rst' | |
57 |
|
57 | |||
58 | # The encoding of source files. |
|
58 | # The encoding of source files. | |
59 | #source_encoding = 'utf-8-sig' |
|
59 | #source_encoding = 'utf-8-sig' | |
60 |
|
60 | |||
61 | # The master toctree document. |
|
61 | # The master toctree document. | |
62 | master_doc = 'index' |
|
62 | master_doc = 'index' | |
63 |
|
63 | |||
64 | # The version info for the project you're documenting, acts as replacement for |
|
64 | # The version info for the project you're documenting, acts as replacement for | |
65 | # |version| and |release|, also used in various other places throughout the |
|
65 | # |version| and |release|, also used in various other places throughout the | |
66 | # built documents. |
|
66 | # built documents. | |
67 |
|
67 | |||
68 | # TODO: johbo: Move into common package for documentation utilities |
|
68 | # TODO: johbo: Move into common package for documentation utilities | |
69 | def _get_version(): |
|
69 | def _get_version(): | |
70 | with open('../rhodecode/VERSION') as f: |
|
70 | with open('../rhodecode/VERSION') as f: | |
71 | return f.read().strip() |
|
71 | return f.read().strip() | |
72 |
|
72 | |||
73 | # The full version, including alpha/beta/rc tags. |
|
73 | # The full version, including alpha/beta/rc tags. | |
74 | release = _get_version() |
|
74 | release = _get_version() | |
75 | # The short X.Y version. |
|
75 | # The short X.Y version. | |
76 | version = '.'.join(release.split('.', 2)[:2]) # First two parts of release |
|
76 | version = '.'.join(release.split('.', 2)[:2]) # First two parts of release | |
77 |
|
77 | |||
78 | # General information about the project. |
|
78 | # General information about the project. | |
79 | project = u'RhodeCode Enterprise %s ' % _get_version() |
|
79 | project = u'RhodeCode Enterprise %s ' % _get_version() | |
80 | copyright = u'2010-{now.year}, RhodeCode GmbH'.format( |
|
80 | copyright = u'2010-{now.year}, RhodeCode GmbH'.format( | |
81 | now=datetime.datetime.today()) |
|
81 | now=datetime.datetime.today()) | |
82 |
|
82 | |||
83 |
|
83 | |||
84 | # The language for content autogenerated by Sphinx. Refer to documentation |
|
84 | # The language for content autogenerated by Sphinx. Refer to documentation | |
85 | # for a list of supported languages. |
|
85 | # for a list of supported languages. | |
86 | #language = None |
|
86 | #language = None | |
87 |
|
87 | |||
88 | rst_epilog = common.rst_epilog + """ |
|
88 | rst_epilog = common.rst_epilog + """ | |
89 | .. |async| replace:: asynchronous |
|
89 | .. |async| replace:: asynchronous | |
90 | """ |
|
90 | """ | |
91 |
|
91 | |||
92 | # There are two options for replacing |today|: either, you set today to some |
|
92 | # There are two options for replacing |today|: either, you set today to some | |
93 | # non-false value, then it is used: |
|
93 | # non-false value, then it is used: | |
94 | #today = '' |
|
94 | #today = '' | |
95 | # Else, today_fmt is used as the format for a strftime call. |
|
95 | # Else, today_fmt is used as the format for a strftime call. | |
96 | #today_fmt = '%B %d, %Y' |
|
96 | #today_fmt = '%B %d, %Y' | |
97 |
|
97 | |||
98 | # List of patterns, relative to source directory, that match files and |
|
98 | # List of patterns, relative to source directory, that match files and | |
99 | # directories to ignore when looking for source files. |
|
99 | # directories to ignore when looking for source files. | |
100 | exclude_patterns = [ |
|
100 | exclude_patterns = [ | |
101 | # Special directories |
|
101 | # Special directories | |
102 | '_build', |
|
102 | '_build', | |
103 | 'result', |
|
103 | 'result', | |
104 |
|
104 | |||
105 | # Other RST files |
|
105 | # Other RST files | |
106 | 'admin/rhodecode-backup.rst', |
|
106 | 'admin/rhodecode-backup.rst', | |
107 | 'auth/ldap-configuration-example.rst', |
|
107 | 'auth/ldap-configuration-example.rst', | |
108 | 'issue-trackers/redmine.rst', |
|
108 | 'issue-trackers/redmine.rst', | |
109 | 'known-issues/error-msg-guide.rst', |
|
109 | 'known-issues/error-msg-guide.rst', | |
110 | 'tutorials/docs-build.rst', |
|
110 | 'tutorials/docs-build.rst', | |
111 | 'integrations/example-ext.py', |
|
111 | 'integrations/example-ext.py', | |
112 | 'collaboration/supported-workflows.rst', |
|
112 | 'collaboration/supported-workflows.rst', | |
113 | ] |
|
113 | ] | |
114 |
|
114 | |||
115 |
|
115 | |||
116 | # The reST default role (used for this markup: `text`) to use for all |
|
116 | # The reST default role (used for this markup: `text`) to use for all | |
117 | # documents. |
|
117 | # documents. | |
118 | #default_role = None |
|
118 | #default_role = None | |
119 |
|
119 | |||
120 | # If true, '()' will be appended to :func: etc. cross-reference text. |
|
120 | # If true, '()' will be appended to :func: etc. cross-reference text. | |
121 | #add_function_parentheses = True |
|
121 | #add_function_parentheses = True | |
122 |
|
122 | |||
123 | # If true, the current module name will be prepended to all description |
|
123 | # If true, the current module name will be prepended to all description | |
124 | # unit titles (such as .. function::). |
|
124 | # unit titles (such as .. function::). | |
125 | #add_module_names = True |
|
125 | #add_module_names = True | |
126 |
|
126 | |||
127 | # If true, sectionauthor and moduleauthor directives will be shown in the |
|
127 | # If true, sectionauthor and moduleauthor directives will be shown in the | |
128 | # output. They are ignored by default. |
|
128 | # output. They are ignored by default. | |
129 | #show_authors = False |
|
129 | #show_authors = False | |
130 |
|
130 | |||
131 | # The name of the Pygments (syntax highlighting) style to use. |
|
131 | # The name of the Pygments (syntax highlighting) style to use. | |
132 | pygments_style = 'sphinx' |
|
132 | pygments_style = 'sphinx' | |
133 |
|
133 | |||
134 | # A list of ignored prefixes for module index sorting. |
|
134 | # A list of ignored prefixes for module index sorting. | |
135 | #modindex_common_prefix = [] |
|
135 | #modindex_common_prefix = [] | |
136 |
|
136 | |||
137 | # If true, keep warnings as "system message" paragraphs in the built documents. |
|
137 | # If true, keep warnings as "system message" paragraphs in the built documents. | |
138 | keep_warnings = tags.has("dev") |
|
138 | keep_warnings = tags.has("dev") | |
139 |
|
139 | |||
140 |
|
140 | |||
141 | # -- Options for HTML output ---------------------------------------------- |
|
141 | # -- Options for HTML output ---------------------------------------------- | |
142 |
|
142 | |||
143 | # The theme to use for HTML and HTML Help pages. See the documentation for |
|
143 | # The theme to use for HTML and HTML Help pages. See the documentation for | |
144 | # a list of builtin themes. |
|
144 | # a list of builtin themes. | |
145 | #html_theme = 'rctheme' |
|
145 | #html_theme = 'rctheme' | |
146 | html_theme = 'sphinx_rtd_theme' |
|
146 | html_theme = 'sphinx_rtd_theme' | |
147 |
|
147 | |||
148 | # Theme options are theme-specific and customize the look and feel of a theme |
|
148 | # Theme options are theme-specific and customize the look and feel of a theme | |
149 | # further. For a list of options available for each theme, see the |
|
149 | # further. For a list of options available for each theme, see the | |
150 | # documentation. |
|
150 | # documentation. | |
151 | #html_theme_options = {} |
|
151 | #html_theme_options = {} | |
152 | html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] |
|
152 | html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] | |
153 |
|
153 | |||
154 | # Add any paths that contain custom themes here, relative to this directory. |
|
154 | # Add any paths that contain custom themes here, relative to this directory. | |
155 | #html_theme_path = [] |
|
155 | #html_theme_path = [] | |
156 |
|
156 | |||
157 | # The name for this set of Sphinx documents. If None, it defaults to |
|
157 | # The name for this set of Sphinx documents. If None, it defaults to | |
158 | # "<project> v<release> documentation". |
|
158 | # "<project> v<release> documentation". | |
159 | #html_title = None |
|
159 | #html_title = None | |
160 |
|
160 | |||
161 | # A shorter title for the navigation bar. Default is the same as html_title. |
|
161 | # A shorter title for the navigation bar. Default is the same as html_title. | |
162 | #html_short_title = None |
|
162 | #html_short_title = None | |
163 |
|
163 | |||
164 | # The name of an image file (relative to this directory) to place at the top |
|
164 | # The name of an image file (relative to this directory) to place at the top | |
165 | # of the sidebar. |
|
165 | # of the sidebar. | |
166 | #html_logo = None |
|
166 | #html_logo = None | |
167 | html_sidebars = { |
|
167 | html_sidebars = { | |
168 | '**': ['globaltoc.html'], |
|
168 | '**': ['globaltoc.html'], | |
169 | } |
|
169 | } | |
170 |
|
170 | |||
171 | # The name of an image file (within the static path) to use as favicon of the |
|
171 | # The name of an image file (within the static path) to use as favicon of the | |
172 | # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 |
|
172 | # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 | |
173 | # pixels large. |
|
173 | # pixels large. | |
174 | html_favicon = 'images/favicon.ico' |
|
174 | html_favicon = 'images/favicon.ico' | |
175 |
|
175 | |||
176 | # Add any paths that contain custom static files (such as style sheets) here, |
|
176 | # Add any paths that contain custom static files (such as style sheets) here, | |
177 | # relative to this directory. They are copied after the builtin static files, |
|
177 | # relative to this directory. They are copied after the builtin static files, | |
178 | # so a file named "default.css" will overwrite the builtin "default.css". |
|
178 | # so a file named "default.css" will overwrite the builtin "default.css". | |
179 | html_static_path = ['static/css/add.css'] |
|
179 | html_static_path = ['static/css/add.css'] | |
180 |
|
180 | |||
181 | # Add any extra paths that contain custom files (such as robots.txt or |
|
181 | # Add any extra paths that contain custom files (such as robots.txt or | |
182 | # .htaccess) here, relative to this directory. These files are copied |
|
182 | # .htaccess) here, relative to this directory. These files are copied | |
183 | # directly to the root of the documentation. |
|
183 | # directly to the root of the documentation. | |
184 | #html_extra_path = [] |
|
184 | #html_extra_path = [] | |
185 |
|
185 | |||
186 | # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, |
|
186 | # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, | |
187 | # using the given strftime format. |
|
187 | # using the given strftime format. | |
188 | #html_last_updated_fmt = '%b %d, %Y' |
|
188 | #html_last_updated_fmt = '%b %d, %Y' | |
189 |
|
189 | |||
190 | # If true, SmartyPants will be used to convert quotes and dashes to |
|
190 | # If true, SmartyPants will be used to convert quotes and dashes to | |
191 | # typographically correct entities. |
|
191 | # typographically correct entities. | |
192 | #html_use_smartypants = True |
|
192 | #html_use_smartypants = True | |
193 |
|
193 | |||
194 | # Custom sidebar templates, maps document names to template names. |
|
194 | # Custom sidebar templates, maps document names to template names. | |
195 | #html_sidebars = {} |
|
195 | #html_sidebars = {} | |
196 |
|
196 | |||
197 | # Additional templates that should be rendered to pages, maps page names to |
|
197 | # Additional templates that should be rendered to pages, maps page names to | |
198 | # template names. |
|
198 | # template names. | |
199 | #html_additional_pages = {} |
|
199 | #html_additional_pages = {} | |
200 |
|
200 | |||
201 | # If false, no module index is generated. |
|
201 | # If false, no module index is generated. | |
202 | #html_domain_indices = True |
|
202 | #html_domain_indices = True | |
203 |
|
203 | |||
204 | # If false, no index is generated. |
|
204 | # If false, no index is generated. | |
205 | #html_use_index = True |
|
205 | #html_use_index = True | |
206 |
|
206 | |||
207 | # If true, the index is split into individual pages for each letter. |
|
207 | # If true, the index is split into individual pages for each letter. | |
208 | #html_split_index = False |
|
208 | #html_split_index = False | |
209 |
|
209 | |||
210 | # If true, links to the reST sources are added to the pages. |
|
210 | # If true, links to the reST sources are added to the pages. | |
211 | #html_show_sourcelink = True |
|
211 | #html_show_sourcelink = True | |
212 |
|
212 | |||
213 | # If true, "Created using Sphinx" is shown in the HTML footer. Default is True. |
|
213 | # If true, "Created using Sphinx" is shown in the HTML footer. Default is True. | |
214 | #html_show_sphinx = True |
|
214 | #html_show_sphinx = True | |
215 |
|
215 | |||
216 | # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. |
|
216 | # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. | |
217 | #html_show_copyright = True |
|
217 | #html_show_copyright = True | |
218 |
|
218 | |||
219 | # If true, an OpenSearch description file will be output, and all pages will |
|
219 | # If true, an OpenSearch description file will be output, and all pages will | |
220 | # contain a <link> tag referring to it. The value of this option must be the |
|
220 | # contain a <link> tag referring to it. The value of this option must be the | |
221 | # base URL from which the finished HTML is served. |
|
221 | # base URL from which the finished HTML is served. | |
222 | #html_use_opensearch = '' |
|
222 | #html_use_opensearch = '' | |
223 |
|
223 | |||
224 | # This is the file name suffix for HTML files (e.g. ".xhtml"). |
|
224 | # This is the file name suffix for HTML files (e.g. ".xhtml"). | |
225 | #html_file_suffix = None |
|
225 | #html_file_suffix = None | |
226 |
|
226 | |||
227 | # Output file base name for HTML help builder. |
|
227 | # Output file base name for HTML help builder. | |
228 | htmlhelp_basename = 'rhodecode-enterprise' |
|
228 | htmlhelp_basename = 'rhodecode-enterprise' | |
229 |
|
229 | |||
230 |
|
230 | |||
231 | # -- Options for LaTeX output --------------------------------------------- |
|
231 | # -- Options for LaTeX output --------------------------------------------- | |
232 |
|
232 | |||
233 | latex_elements = { |
|
233 | latex_elements = { | |
234 | 'classoptions': ',oneside', |
|
234 | 'classoptions': ',oneside', | |
235 | 'babel': '\\usepackage[english]{babel}', |
|
235 | 'babel': '\\usepackage[english]{babel}', | |
236 |
|
236 | |||
237 | # The paper size ('letterpaper' or 'a4paper'). |
|
237 | # The paper size ('letterpaper' or 'a4paper'). | |
238 | #'papersize': 'letterpaper', |
|
238 | #'papersize': 'letterpaper', | |
239 |
|
239 | |||
240 | # The font size ('10pt', '11pt' or '12pt'). |
|
240 | # The font size ('10pt', '11pt' or '12pt'). | |
241 | #'pointsize': '10pt', |
|
241 | #'pointsize': '10pt', | |
242 |
|
242 | |||
243 | # Additional stuff for the LaTeX preamble. |
|
243 | # Additional stuff for the LaTeX preamble. | |
244 | #'preamble': '', |
|
244 | #'preamble': '', | |
245 | } |
|
245 | } | |
246 |
|
246 | |||
247 | # Grouping the document tree into LaTeX files. List of tuples |
|
247 | # Grouping the document tree into LaTeX files. List of tuples | |
248 | # (source start file, target name, title, |
|
248 | # (source start file, target name, title, | |
249 | # author, documentclass [howto, manual, or own class]). |
|
249 | # author, documentclass [howto, manual, or own class]). | |
250 | latex_documents = [ |
|
250 | latex_documents = [ | |
251 | ('index', 'RhodeCodeEnterprise.tex', u'RhodeCode Enterprise', |
|
251 | ('index', 'RhodeCodeEnterprise.tex', u'RhodeCode Enterprise', | |
252 | u'RhodeCode GmbH', 'manual'), |
|
252 | u'RhodeCode GmbH', 'manual'), | |
253 | ] |
|
253 | ] | |
254 |
|
254 | |||
255 | # The name of an image file (relative to this directory) to place at the top of |
|
255 | # The name of an image file (relative to this directory) to place at the top of | |
256 | # the title page. |
|
256 | # the title page. | |
257 | #latex_logo = None |
|
257 | #latex_logo = None | |
258 |
|
258 | |||
259 | # For "manual" documents, if this is true, then toplevel headings are parts, |
|
259 | # For "manual" documents, if this is true, then toplevel headings are parts, | |
260 | # not chapters. |
|
260 | # not chapters. | |
261 | #latex_use_parts = False |
|
261 | #latex_use_parts = False | |
262 |
|
262 | |||
263 | # If true, show page references after internal links. |
|
263 | # If true, show page references after internal links. | |
264 | latex_show_pagerefs = True |
|
264 | latex_show_pagerefs = True | |
265 |
|
265 | |||
266 | # If true, show URL addresses after external links. |
|
266 | # If true, show URL addresses after external links. | |
267 | latex_show_urls = 'footnote' |
|
267 | latex_show_urls = 'footnote' | |
268 |
|
268 | |||
269 | # Documents to append as an appendix to all manuals. |
|
269 | # Documents to append as an appendix to all manuals. | |
270 | #latex_appendices = [] |
|
270 | #latex_appendices = [] | |
271 |
|
271 | |||
272 | # If false, no module index is generated. |
|
272 | # If false, no module index is generated. | |
273 | #latex_domain_indices = True |
|
273 | #latex_domain_indices = True | |
274 |
|
274 | |||
275 | # Mode for literal blocks wider than the frame. Can be |
|
275 | # Mode for literal blocks wider than the frame. Can be | |
276 | # overflow, shrink or truncate |
|
276 | # overflow, shrink or truncate | |
277 | pdf_fit_mode = "truncate" |
|
277 | pdf_fit_mode = "truncate" | |
278 |
|
278 | |||
279 |
|
279 | |||
280 | # -- Options for manual page output --------------------------------------- |
|
280 | # -- Options for manual page output --------------------------------------- | |
281 |
|
281 | |||
282 | # One entry per manual page. List of tuples |
|
282 | # One entry per manual page. List of tuples | |
283 | # (source start file, name, description, authors, manual section). |
|
283 | # (source start file, name, description, authors, manual section). | |
284 | man_pages = [ |
|
284 | man_pages = [ | |
285 | ('index', 'rhodecodeenterprise', u'RhodeCode Enterprise', |
|
285 | ('index', 'rhodecodeenterprise', u'RhodeCode Enterprise', | |
286 | [u'RhodeCode GmbH'], 1) |
|
286 | [u'RhodeCode GmbH'], 1) | |
287 | ] |
|
287 | ] | |
288 |
|
288 | |||
289 | # If true, show URL addresses after external links. |
|
289 | # If true, show URL addresses after external links. | |
290 | #man_show_urls = False |
|
290 | #man_show_urls = False | |
291 |
|
291 | |||
292 |
|
292 | |||
293 | # -- Options for Texinfo output ------------------------------------------- |
|
293 | # -- Options for Texinfo output ------------------------------------------- | |
294 |
|
294 | |||
295 | # Grouping the document tree into Texinfo files. List of tuples |
|
295 | # Grouping the document tree into Texinfo files. List of tuples | |
296 | # (source start file, target name, title, author, |
|
296 | # (source start file, target name, title, author, | |
297 | # dir menu entry, description, category) |
|
297 | # dir menu entry, description, category) | |
298 | texinfo_documents = [ |
|
298 | texinfo_documents = [ | |
299 | ('index', 'RhodeCodeEnterprise', u'RhodeCode Enterprise', |
|
299 | ('index', 'RhodeCodeEnterprise', u'RhodeCode Enterprise', | |
300 | u'RhodeCode Docs Team', 'RhodeCodeEnterprise', 'RhodeCode Docs Project', |
|
300 | u'RhodeCode Docs Team', 'RhodeCodeEnterprise', 'RhodeCode Docs Project', | |
301 | 'Miscellaneous'), |
|
301 | 'Miscellaneous'), | |
302 | ] |
|
302 | ] | |
303 |
|
303 | |||
304 | # Documents to append as an appendix to all manuals. |
|
304 | # Documents to append as an appendix to all manuals. | |
305 | #texinfo_appendices = [] |
|
305 | #texinfo_appendices = [] | |
306 |
|
306 | |||
307 | # If false, no module index is generated. |
|
307 | # If false, no module index is generated. | |
308 | #texinfo_domain_indices = True |
|
308 | #texinfo_domain_indices = True | |
309 |
|
309 | |||
310 | # How to display URL addresses: 'footnote', 'no', or 'inline'. |
|
310 | # How to display URL addresses: 'footnote', 'no', or 'inline'. | |
311 | #texinfo_show_urls = 'footnote' |
|
311 | #texinfo_show_urls = 'footnote' | |
312 |
|
312 | |||
313 | # If true, do not generate a @detailmenu in the "Top" node's menu. |
|
313 | # If true, do not generate a @detailmenu in the "Top" node's menu. | |
314 | #texinfo_no_detailmenu = False |
|
314 | #texinfo_no_detailmenu = False | |
315 |
|
315 | |||
316 | # We want to see todo notes in case of a pre-release build of the documentation |
|
316 | # We want to see todo notes in case of a pre-release build of the documentation | |
317 | todo_include_todos = tags.has("dev") |
|
317 | todo_include_todos = tags.has("dev") |
@@ -1,220 +1,220 b'' | |||||
1 | .. _hosted-solution: |
|
1 | .. _hosted-solution: | |
2 |
|
2 | |||
3 | Deploy |RCE| From a Hosted Server |
|
3 | Deploy |RCE| From a Hosted Server | |
4 | ================================= |
|
4 | ================================= | |
5 |
|
5 | |||
6 | If you wish to deploy your own |RCE| instance from something like a |
|
6 | If you wish to deploy your own |RCE| instance from something like a | |
7 | `Digital Ocean`_ droplet, or a `hetzner`_ server use the following |
|
7 | `Digital Ocean`_ droplet, or a `hetzner`_ server use the following | |
8 | instructions to get it setup. |
|
8 | instructions to get it setup. | |
9 |
|
9 | |||
10 | I'm using an Ubuntu 14.04 image for the purposes of this |
|
10 | I'm using an Ubuntu 14.04 image for the purposes of this | |
11 | tutorial, but all other Unix environments will be pretty similar. You can |
|
11 | tutorial, but all other Unix environments will be pretty similar. You can | |
12 | check out the full lists of supported platforms and versions in the |
|
12 | check out the full lists of supported platforms and versions in the | |
13 | :ref:`system-overview-ref` section. |
|
13 | :ref:`system-overview-ref` section. | |
14 |
|
14 | |||
15 |
|
15 | |||
16 | Create a Digital Ocean Droplet |
|
16 | Create a Digital Ocean Droplet | |
17 | ------------------------------ |
|
17 | ------------------------------ | |
18 |
|
18 | |||
19 | 1. Sign into Digital Ocean. |
|
19 | 1. Sign into Digital Ocean. | |
20 | 2. Create a Droplet choosing Ubuntu 14.04 as your |os|. |
|
20 | 2. Create a Droplet choosing Ubuntu 14.04 as your |os|. | |
21 | 3. (Optional) Add SSH keys if you have them set up. |
|
21 | 3. (Optional) Add SSH keys if you have them set up. | |
22 |
|
22 | |||
23 | Configure Your Server |
|
23 | Configure Your Server | |
24 | --------------------- |
|
24 | --------------------- | |
25 |
|
25 | |||
26 | Once you have your server created, you need to sign into it and set it up to |
|
26 | Once you have your server created, you need to sign into it and set it up to | |
27 | host |RCE|. |
|
27 | host |RCE|. | |
28 |
|
28 | |||
29 | 1. Open a terminal and sign into your server. Digital Ocean will mail you the |
|
29 | 1. Open a terminal and sign into your server. Digital Ocean will mail you the | |
30 | IP address. You'll need to change your password on the first login if you |
|
30 | IP address. You'll need to change your password on the first login if you | |
31 | don not have SSH keys set up. |
|
31 | don not have SSH keys set up. | |
32 |
|
32 | |||
33 | .. code-block:: bash |
|
33 | .. code-block:: bash | |
34 |
|
34 | |||
35 | $ ssh root@203.0.113.113 |
|
35 | $ ssh root@203.0.113.113 | |
36 |
|
36 | |||
37 | 2. It is not advised to install |RCE| as the ``root`` user. So create a user |
|
37 | 2. It is not advised to install |RCE| as the ``root`` user. So create a user | |
38 | with sudo permissions and then carry out the rest of the steps from that user |
|
38 | with sudo permissions and then carry out the rest of the steps from that user | |
39 | account. |
|
39 | account. | |
40 |
|
40 | |||
41 | .. code-block:: bash |
|
41 | .. code-block:: bash | |
42 |
|
42 | |||
43 | # Create a user with sudo permissions |
|
43 | # Create a user with sudo permissions | |
44 | root@rhodecode:~# sudo useradd -m -s /bin/bash -d /home/brian -U brian |
|
44 | root@rhodecode:~# sudo useradd -m -s /bin/bash -d /home/brian -U brian | |
45 | root@rhodecode:~# sudo usermod -a -G sudo brian |
|
45 | root@rhodecode:~# sudo usermod -a -G sudo brian | |
46 |
|
46 | |||
47 | # Set the password for that user |
|
47 | # Set the password for that user | |
48 | root@rhodecode:~# passwd brian |
|
48 | root@rhodecode:~# passwd brian | |
49 | Enter new UNIX password: |
|
49 | Enter new UNIX password: | |
50 | Retype new UNIX password: |
|
50 | Retype new UNIX password: | |
51 | passwd: password updated successfully |
|
51 | passwd: password updated successfully | |
52 |
|
52 | |||
53 | # Switch to that user for the rest of the steps |
|
53 | # Switch to that user for the rest of the steps | |
54 | root@rhodecode:~# su brian |
|
54 | root@rhodecode:~# su brian | |
55 |
|
55 | |||
56 | # You should see your home dir change to what was set during installation |
|
56 | # You should see your home dir change to what was set during installation | |
57 | brian@rhodecode:~$ cd ~ |
|
57 | brian@rhodecode:~$ cd ~ | |
58 | brian@rhodecode:~$ pwd |
|
58 | brian@rhodecode:~$ pwd | |
59 | /home/brian |
|
59 | /home/brian | |
60 |
|
60 | |||
61 | Once you have this set up, you are ready to install |RCC|. |
|
61 | Once you have this set up, you are ready to install |RCC|. | |
62 |
|
62 | |||
63 | Install |RCC| |
|
63 | Install |RCC| | |
64 | ------------- |
|
64 | ------------- | |
65 |
|
65 | |||
66 | |RCC| will install and manage the package dependencies for your |RCE| instance. |
|
66 | |RCC| will install and manage the package dependencies for your |RCE| instance. | |
67 |
|
67 | |||
68 | 1. Download the |RCC| installer from https://rhodecode.com/download/ |
|
68 | 1. Download the |RCC| installer from https://rhodecode.com/download/ | |
69 | 2. Once downloaded to your computer, transfer the package to your server |
|
69 | 2. Once downloaded to your computer, transfer the package to your server | |
70 |
|
70 | |||
71 | .. note:: |
|
71 | .. note:: | |
72 |
|
72 | |||
73 | These steps happen on your computer, not on the server. |
|
73 | These steps happen on your computer, not on the server. | |
74 |
|
74 | |||
75 | .. code-block:: bash |
|
75 | .. code-block:: bash | |
76 |
|
76 | |||
77 | # Change to where the file is downloaded |
|
77 | # Change to where the file is downloaded | |
78 | $ cd Downloads/ |
|
78 | $ cd Downloads/ | |
79 |
|
79 | |||
80 | # SFTP to your server |
|
80 | # SFTP to your server | |
81 | $ sftp brian@203.0.113.113 |
|
81 | $ sftp brian@203.0.113.113 | |
82 |
|
82 | |||
83 | # Use mput to transfer the file |
|
83 | # Use mput to transfer the file | |
84 | sftp> mput RhodeCode-installer-linux-391_b1a804c4d69b_d6c087d520e3 |
|
84 | sftp> mput RhodeCode-installer-linux-391_b1a804c4d69b_d6c087d520e3 | |
85 | Uploading RhodeCode-installer-linux-391_b1a804c4d69b_d6c087d520e3 to /home/brian/RhodeCode-installer-linux-391_b1a804c4d69b_d6c087d520e3 |
|
85 | Uploading RhodeCode-installer-linux-391_b1a804c4d69b_d6c087d520e3 to /home/brian/RhodeCode-installer-linux-391_b1a804c4d69b_d6c087d520e3 | |
86 | RhodeCode-installer-linux-391_b1a804c4d69b_d6c087d 100% 289MB 4.1MB/s 01:11 |
|
86 | RhodeCode-installer-linux-391_b1a804c4d69b_d6c087d 100% 289MB 4.1MB/s 01:11 | |
87 | sftp> exit |
|
87 | sftp> exit | |
88 |
|
88 | |||
89 | The |RCC| installer is now on your server, and you can read the full |
|
89 | The |RCC| installer is now on your server, and you can read the full | |
90 | instructions here |
|
90 | instructions here | |
91 |
:ref:`Install RhodeCode Control <control:rcc- |
|
91 | :ref:`Install RhodeCode Control <control:rcc-linux-ref>` , | |
92 | but below is the example shortcut. |
|
92 | but below is the example shortcut. | |
93 |
|
93 | |||
94 | .. code-block:: bash |
|
94 | .. code-block:: bash | |
95 |
|
95 | |||
96 | # Check that the script is uploaded to your home directory |
|
96 | # Check that the script is uploaded to your home directory | |
97 | $ ls -1 |
|
97 | $ ls -1 | |
98 | RhodeCode-installer-linux-391_b1a804c4d69b_d6c087d520e3 |
|
98 | RhodeCode-installer-linux-391_b1a804c4d69b_d6c087d520e3 | |
99 |
|
99 | |||
100 | # Change the script permissions |
|
100 | # Change the script permissions | |
101 | $ chmod 755 RhodeCode-installer-linux* |
|
101 | $ chmod 755 RhodeCode-installer-linux* | |
102 |
|
102 | |||
103 | # Run the installer and accept the prompts |
|
103 | # Run the installer and accept the prompts | |
104 | $ ./RhodeCode-installer-linux-* |
|
104 | $ ./RhodeCode-installer-linux-* | |
105 |
|
105 | |||
106 | .. important:: |
|
106 | .. important:: | |
107 |
|
107 | |||
108 | Once finished, exit the terminal and sign in again. This is to refresh you |
|
108 | Once finished, exit the terminal and sign in again. This is to refresh you | |
109 | session to pick up the new commands. |
|
109 | session to pick up the new commands. | |
110 |
|
110 | |||
111 | Install |RCE| |
|
111 | Install |RCE| | |
112 | ------------- |
|
112 | ------------- | |
113 |
|
113 | |||
114 | Now that |RCC| is installed, you can install |RCE|. For the full |
|
114 | Now that |RCC| is installed, you can install |RCE|. For the full | |
115 | instructions, see |
|
115 | instructions, see | |
116 | :ref:`Install RhodeCode Enterprise <control:rce-cli-install-ref>`, |
|
116 | :ref:`Install RhodeCode Enterprise <control:rce-cli-install-ref>`, | |
117 | but the below is an example shortcut. |
|
117 | but the below is an example shortcut. | |
118 |
|
118 | |||
119 | .. code-block:: bash |
|
119 | .. code-block:: bash | |
120 |
|
120 | |||
121 | # Install a VCS Server and follow the prompts |
|
121 | # Install a VCS Server and follow the prompts | |
122 | $ rccontrol install VCSServer --start-at-boot |
|
122 | $ rccontrol install VCSServer --start-at-boot | |
123 |
|
123 | |||
124 | Extracting VCSServer ... |
|
124 | Extracting VCSServer ... | |
125 | Configuring RhodeCode VCS Server ... |
|
125 | Configuring RhodeCode VCS Server ... | |
126 | Supervisord state is: RUNNING |
|
126 | Supervisord state is: RUNNING | |
127 | Added process group vcsserver-1 |
|
127 | Added process group vcsserver-1 | |
128 |
|
128 | |||
129 | # Install a RhodeCode Enterprise instance and follow the prompts |
|
129 | # Install a RhodeCode Enterprise instance and follow the prompts | |
130 | $ rccontrol install Enterprise --start-at-boot |
|
130 | $ rccontrol install Enterprise --start-at-boot | |
131 |
|
131 | |||
132 | Configuration of RhodeCode Enterprise passed. |
|
132 | Configuration of RhodeCode Enterprise passed. | |
133 | Supervisord state is: RUNNING |
|
133 | Supervisord state is: RUNNING | |
134 | Added process group enterprise-1 |
|
134 | Added process group enterprise-1 | |
135 |
|
135 | |||
136 | |RCE| is now installed on your server, and is running on the port displayed |
|
136 | |RCE| is now installed on your server, and is running on the port displayed | |
137 | by the ``rccontrol status`` command. |
|
137 | by the ``rccontrol status`` command. | |
138 |
|
138 | |||
139 | .. code-block:: bash |
|
139 | .. code-block:: bash | |
140 |
|
140 | |||
141 | brian@rhodecode:~$ rccontrol status |
|
141 | brian@rhodecode:~$ rccontrol status | |
142 |
|
142 | |||
143 | - NAME: enterprise-1 |
|
143 | - NAME: enterprise-1 | |
144 | - STATUS: RUNNING |
|
144 | - STATUS: RUNNING | |
145 | - TYPE: Enterprise |
|
145 | - TYPE: Enterprise | |
146 | - VERSION: 3.1.1 |
|
146 | - VERSION: 3.1.1 | |
147 | - URL: http://127.0.0.1:10002 |
|
147 | - URL: http://127.0.0.1:10002 | |
148 |
|
148 | |||
149 | - NAME: vcsserver-1 |
|
149 | - NAME: vcsserver-1 | |
150 | - STATUS: RUNNING |
|
150 | - STATUS: RUNNING | |
151 | - TYPE: VCSServer |
|
151 | - TYPE: VCSServer | |
152 | - VERSION: 1.1.1 |
|
152 | - VERSION: 1.1.1 | |
153 | - URL: http://127.0.0.1:10001 |
|
153 | - URL: http://127.0.0.1:10001 | |
154 |
|
154 | |||
155 | Serve |RCE| using Nginx |
|
155 | Serve |RCE| using Nginx | |
156 | ----------------------- |
|
156 | ----------------------- | |
157 |
|
157 | |||
158 | Now that |RCE| is running, you need to use Nginx or Apache to serve it to |
|
158 | Now that |RCE| is running, you need to use Nginx or Apache to serve it to | |
159 | users. For detailed instructions about setting up your webserver, see the |
|
159 | users. For detailed instructions about setting up your webserver, see the | |
160 | :ref:`rhodecode-admin-ref` section. But the below shortcut should help serve |
|
160 | :ref:`rhodecode-admin-ref` section. But the below shortcut should help serve | |
161 | it. |
|
161 | it. | |
162 |
|
162 | |||
163 | 1. Install Nginx on your server. |
|
163 | 1. Install Nginx on your server. | |
164 |
|
164 | |||
165 | .. code-block:: bash |
|
165 | .. code-block:: bash | |
166 |
|
166 | |||
167 | # Install nginx |
|
167 | # Install nginx | |
168 | $ sudo apt-get install nginx |
|
168 | $ sudo apt-get install nginx | |
169 |
|
169 | |||
170 | 2. Create a virtual hosts file for RhodeCode Enterprise. Create |
|
170 | 2. Create a virtual hosts file for RhodeCode Enterprise. Create | |
171 | the file in this location :file:`/etc/nginx/sites-available`. In this demo |
|
171 | the file in this location :file:`/etc/nginx/sites-available`. In this demo | |
172 | I have called it ``vcs.conf`` |
|
172 | I have called it ``vcs.conf`` | |
173 |
|
173 | |||
174 | .. code-block:: bash |
|
174 | .. code-block:: bash | |
175 |
|
175 | |||
176 | # Create the file |
|
176 | # Create the file | |
177 | $ sudo vi /etc/nginx/sites-available/vcs.conf |
|
177 | $ sudo vi /etc/nginx/sites-available/vcs.conf | |
178 |
|
178 | |||
179 | Use the following example to create yours. |
|
179 | Use the following example to create yours. | |
180 |
|
180 | |||
181 | .. code-block:: nginx |
|
181 | .. code-block:: nginx | |
182 |
|
182 | |||
183 | server { |
|
183 | server { | |
184 | listen 80; |
|
184 | listen 80; | |
185 | # Change to your IP, or a domain name if you've set that up |
|
185 | # Change to your IP, or a domain name if you've set that up | |
186 | server_name 203.0.113.113 ; |
|
186 | server_name 203.0.113.113 ; | |
187 |
|
187 | |||
188 | location / { |
|
188 | location / { | |
189 | # Set this line to match the RhodeCode Enterprise Instance URL |
|
189 | # Set this line to match the RhodeCode Enterprise Instance URL | |
190 | proxy_pass http://127.0.0.1:10002/; |
|
190 | proxy_pass http://127.0.0.1:10002/; | |
191 | proxy_set_header Host $Host; |
|
191 | proxy_set_header Host $Host; | |
192 | proxy_buffering off; |
|
192 | proxy_buffering off; | |
193 | # Setting this to a high number allows large repo pushes |
|
193 | # Setting this to a high number allows large repo pushes | |
194 | client_max_body_size 4G; |
|
194 | client_max_body_size 4G; | |
195 | } |
|
195 | } | |
196 | } |
|
196 | } | |
197 |
|
197 | |||
198 | 3. Symlink the virtual hosts file to the ``sites-enabled`` folder, |
|
198 | 3. Symlink the virtual hosts file to the ``sites-enabled`` folder, | |
199 | and then restart Nginx. |
|
199 | and then restart Nginx. | |
200 |
|
200 | |||
201 | .. code-block:: bash |
|
201 | .. code-block:: bash | |
202 |
|
202 | |||
203 | # Symlink the virtual hosts file |
|
203 | # Symlink the virtual hosts file | |
204 | $ ln -s /etc/nginx/sites-available/vcs.conf /etc/nginx/sites-enabled/vcs.conf |
|
204 | $ ln -s /etc/nginx/sites-available/vcs.conf /etc/nginx/sites-enabled/vcs.conf | |
205 |
|
205 | |||
206 | # You can also delete the Nginx default symlink |
|
206 | # You can also delete the Nginx default symlink | |
207 | $ rm /etc/nginx/sites-enabled/default |
|
207 | $ rm /etc/nginx/sites-enabled/default | |
208 |
|
208 | |||
209 | # Restart Nginx |
|
209 | # Restart Nginx | |
210 | $ sudo /etc/init.d/nginx restart |
|
210 | $ sudo /etc/init.d/nginx restart | |
211 | * Restarting nginx nginx [ OK ] |
|
211 | * Restarting nginx nginx [ OK ] | |
212 |
|
212 | |||
213 | Once restarted, you should see a clean |RCE| instance running on the IP |
|
213 | Once restarted, you should see a clean |RCE| instance running on the IP | |
214 | address, or the domain you have set up. |
|
214 | address, or the domain you have set up. | |
215 |
|
215 | |||
216 | .. image:: ../images/clean-rce.png |
|
216 | .. image:: ../images/clean-rce.png | |
217 | :alt: A fresh RhodeCode Enterprise Instance |
|
217 | :alt: A fresh RhodeCode Enterprise Instance | |
218 |
|
218 | |||
219 | .. _Digital Ocean: https://www.digitalocean.com/ |
|
219 | .. _Digital Ocean: https://www.digitalocean.com/ | |
220 | .. _hetzner: https://www.hetzner.de/en/ |
|
220 | .. _hetzner: https://www.hetzner.de/en/ |
General Comments 0
You need to be logged in to leave comments.
Login now