diff --git a/doc/create_project.html b/doc/create_project.html index 6c45d07233..ca0f10ce18 100644 --- a/doc/create_project.html +++ b/doc/create_project.html @@ -47,12 +47,12 @@ How to install and configure the BOINC server software.
+These components are described in detail in separate documents, +which are required reading if you want to separate +and/or replicate the components. +To set up a basic server where all components run on a single host, +you can use a simple server setup script. diff --git a/doc/single_host_server.html b/doc/single_host_server.html index 30b5a0a204..559103d362 100644 --- a/doc/single_host_server.html +++ b/doc/single_host_server.html @@ -1,4 +1,160 @@
\ No newline at end of file +
+BOINC provides a set of scripts for setting up +and controlling a BOINC server complex. +These scripts require all the server components to run on a single host. +This has been tested only on Linux and Solaris hosts; +it may work with small modifications on Windows also. +
+The scripts can be used to create multiple BOINC projects on the same host. +This can be handy for creating separate projects for testing and debugging. +In fact, the scripts are part of a general +testing framework +that allows multiple developers to work independently on +a single host, with each developer able to create multiple projects. +
+Install the following software on the server host: +
+boinc_projects/ + proj1/ + cgi/ + download/ + html_ops/ + html_user/ + keys/ + upload/ + proj2/ + ... ++where proj1, proj2 etc. are the names of the projects you create. +Each project directory contains: +
+Create two directories, used to store symbolic links +to project-specific HTML and CGI directories. +You might call these boinc_html and boinc_cgi. +Then edit your Apache configuration file, +adding something like the following: + +
+Alias /david/ "/users/david/boinc_html/" +<Directory "/users/david/boinc_html"> + Options Indexes FollowSymlinks MultiViews + AllowOverride None + Order allow,deny + Allow from all +</Directory> + +ScriptAlias /david_cgi/ "/users/david/boinc_cgi/" +<Directory "/users/david/boinc_cgi"> + AllowOverride None + Options FollowSymLinks + Order allow,deny + Allow from all +</Directory> + ++ +
+
BOINC_PROJECTS_DIR | + +|
BOINC_USER_NAME | +This is used as a component of database names, +and is prepended to web error log entries. +Relevant if multiple developers share one host. +/td> |
BOINC_SRC_DIR | +Path of directory where BOINC source code is |
BOINC_CGI_DIR | +Path of the CGI symbolic-link directory (see above). |
BOINC_CGI_URL | +URL of the CGI symbolic-link directory. |
BOINC_HTML_DIR | +path of a HTML symbolic-link directory (see above) |
BOINC_HTML_URL | +URL of the HTML symbolic-link directory |
BOINC_SHMEM_KEY | +Identifier for shared-memory segment (use any 31-bit number +that doesn't conflict with current segments) |
+For example, you might execute the following shell script: +
+setenv BOINC_PROJECTS_DIR /home/david/boinc_projects +setenv BOINC_USER_NAME david +setenv BOINC_SRC_DIR /home/david/boinc_cvs/boinc +setenv BOINC_CGI_DIR /home/david/cgi-bin +setenv BOINC_CGI_URL http://localhost/cgi-bin +setenv BOINC_HTML_DIR /home/david/html +setenv BOINC_HTML_URL http://localhost +setenv BOINC_SHMEM_KEY 0x3abc1234 ++ +
+Once you've done all the above steps, +edit the script make_project.php +in the test directory of the BOINC source tree, +adding your application name. +Then execute this script. +This does the following: + +
+At this point you hopefully have a functioning BOINC server, +but it has no applications or work to distribute. +The remaining steps to make a public project include: +