Giter Club home page Giter Club logo

cosmohome's Introduction

banner

The Cosmology@Home server

The Cosmology@Home server is a multi-container Docker application. In a few commands anyone can check out the code from here and have a local version of the server running (identical to the real thing in every way except for user data and a few private files).

The requirements for running the server are:

To download, build, and start the server on a fresh environment:

git clone --recursive https://github.com/marius311/cosmohome.git
cd cosmohome
make up

Note: the first time you run this it may take a while as many dependencies are downloaded and images are built from scratch.

At this point, you should be able to connect your browser to localhost to see the server webpage. To connect a BOINC client to the server, you need to reroute www.cosmologyathome.org to localhost (b/c the server code has its URL hardcoded). On Linux, this can be done by adding the line 127.0.0.1 www.cosmologyathome.org to your /etc/hosts file. Then connect BOINC to www.cosmologyathome.org as usual.

For more detailed documentation on how the server works, see the Design Overview.

cosmohome's People

Contributors

bwandelt avatar erkan-yilmaz avatar jks7reid avatar kpointer avatar marius311 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

cosmohome's Issues

PHP error on project prefs

"Your Account -> Project Prefs -> Add Separate Prefs for X -> Add Prefs"

Warning: Creating default object from empty value in /root/projects/cosmohome/html/inc/prefs_project.inc on line 349

Warning: Cannot modify header information - headers already sent by (output started at /root/projects/cosmohome/html/inc/prefs_project.inc:349) in /root/projects/cosmohome/html/user/add_venue.php on line 78
Return to Cosmology@Home main page

http://www.cosmologyathome.org/forum_thread.php?id=7345&postid=20619#20619

Change master url

How did you achieve running the server on http://cosmologyathome.org/ instead of http://cosmologyathome.org/cosmohome/? I posted a similar issue at your repo marius311/boinc-server-docker#64. I followed your change of config.xml & cosmohome.httpd.conf on my own boinc project. Honestly, I think following two changes are critical

<master_url>${url_base}/</master_url>

in config.xml.

<Directory />
        Options FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

in cosmohome.httpd.conf.

But when I access the master url, it shows

Forbidden
You don't have permission to access / on this server.
Apache/2.4.25 (Debian) Server at ${some_ip} Port 80

Could you help me figure out the issue? Thanks!

Rebuild against newer glibc to fix Linux’ vsyscall messages

On Debian bullseye/stable with Linux 5.10.92-2 and boinc-client 7.16.16+dfsg-1, the static binary causes Linux to log messages:

$ sudo ls -l /var/lib/boinc-client/projects/www.cosmologyathome.org/camb_2.16_x86_64-pc-linux-gnu
-rwxr-xr-x. 1 boinc boinc 3969193 Jun 17  2017 /var/lib/boinc-client/projects/www.cosmologyathome.org/camb_2.16_x86_64-pc-linux-gnu
$ sudo md5sum /var/lib/boinc-client/projects/www.cosmologyathome.org/camb_2.16_x86_64-pc-linux-gnu
4f7b672d6719a03be7a1aeacbbd438e5  /var/lib/boinc-client/projects/www.cosmologyathome.org/camb_2.16_x86_64-pc-linux-gnu
[Sun Mar 13 01:53:32 2022] warn_bad_vsyscall: 32 callbacks suppressed
[Sun Mar 13 01:53:32 2022] camb_2.16_x86_6[265153] vsyscall attempted with vsyscall=none ip:ffffffffff600000 cs:33 sp:7ffd9da8f718 ax:ffffffffff600000 si:0 di:7ffd9da8f730
[Sun Mar 13 01:53:32 2022] camb_2.16_x86_6[265153] vsyscall read attempt denied -- look up the vsyscall kernel parameter if you need a workaround ip:569228 cs:33 sp:7ffd9da8eaf0 ax:0 si:1 di:7fed40
[Sun Mar 13 01:53:32 2022] camb_2.16_x86_6[265153] vsyscall read attempt denied -- look up the vsyscall kernel parameter if you need a workaround ip:569228 cs:33 sp:7ffd9da8deb0 ax:0 si:1 di:7fed40
[Sun Mar 13 01:53:32 2022] camb_2.16_x86_6[265153] vsyscall read attempt denied -- look up the vsyscall kernel parameter if you need a workaround ip:569228 cs:33 sp:7ffd9da8d270 ax:0 si:1 di:7fed40
[Sun Mar 13 01:53:32 2022] camb_2.16_x86_6[265153] vsyscall read attempt denied -- look up the vsyscall kernel parameter if you need a workaround ip:569228 cs:33 sp:7ffd9da8c630 ax:0 si:1 di:7fed40
[Sun Mar 13 01:53:32 2022] camb_2.16_x86_6[265153] vsyscall read attempt denied -- look up the vsyscall kernel parameter if you need a workaround ip:569228 cs:33 sp:7ffd9da8b9f0 ax:0 si:1 di:7fed40
[Sun Mar 13 01:53:32 2022] camb_2.16_x86_6[265153] vsyscall read attempt denied -- look up the vsyscall kernel parameter if you need a workaround ip:569228 cs:33 sp:7ffd9da8adb0 ax:0 si:1 di:7fed40
[Sun Mar 13 01:53:32 2022] camb_2.16_x86_6[265153] vsyscall read attempt denied -- look up the vsyscall kernel parameter if you need a workaround ip:569228 cs:33 sp:7ffd9da8a170 ax:0 si:1 di:7fed40
[Sun Mar 13 01:53:32 2022] camb_2.16_x86_6[265153] vsyscall read attempt denied -- look up the vsyscall kernel parameter if you need a workaround ip:569228 cs:33 sp:7ffd9da89530 ax:0 si:1 di:7fed40
[Sun Mar 13 01:53:32 2022] camb_2.16_x86_6[265153] vsyscall read attempt denied -- look up the vsyscall kernel parameter if you need a workaround ip:569228 cs:33 sp:7ffd9da888f0 ax:0 si:1 di:7fed40

According to BOINC/boinc#2120 (comment) please rebuild against a newer glibc.

Re-enable checkpointing

Checkpointing was disabled in camb_boinc2docker b/c it was unreliable. One reason was on BOINC client shutdown it would often kill the VM app while it was in the middle of saving state. BOINC/boinc@dde8233 should help that. We can require <min_core_client_version> to use only clients that have this fix. After more testing, save_state is probably doable and generally desired by most users.

Errors when hiding posts

From @Ageless93:

I just hid someone's post. While the forums did do the hiding, I got the following error after the hiding action:

Warning: Creating default object from empty value in /root/project/html/inc/forum_email.inc on line 40

Notice: Undefined property: stdClass::$name in /root/project/html/inc/email.inc on line 31

Notice: Undefined property: stdClass::$name in /root/project/html/inc/email.inc on line 31

Notice: Undefined property: stdClass::$name in /root/project/html/inc/email.inc on line 31

Notice: Undefined property: stdClass::$name in /root/project/html/inc/email.inc on line 31

Notice: Undefined property: stdClass::$name in /root/project/html/inc/email.inc on line 31

Notice: Undefined property: stdClass::$name in /root/project/html/inc/email.inc on line 31

Warning: Cannot modify header information - headers already sent by (output started at /root/project/html/inc/forum_email.inc:40) in /root/project/html/user/forum_moderate_post_action.php on line 165

I did not automatically return to the forum thread to see the post hidden, had to do that all manually.

Unable to access locally set-up project URLs via HTTPS

Hello,

I'd like to preface my question with the fact that I do realize that the problem probably has to do with my local setup (including some implicitly implied step for securing SSL access attempts to localhost via a self-signed certificate or something along similar lines) rather than something intrinsically wrong with the repository.

Problem:

  • I am able to access the HTTP portions of any Cosmology@Home content, served via a locally running server, but none of the HTTPS counterparts.

Steps to reproduce:

$ git checkout --recursive https://github.com/marius311/cosmohome.git
$ cd cosmohome
$ make up # also attempted anew with `docker-compose up --build`

I've added localhost www.cosmologyathome.org to my /etc/hosts file.
Then, accessing http://www.cosmologyathome.org and http://localhost does work, while accessing https://www.cosmologyathome.org and https://localhost doesn't.
Additionally, I'm unable to add the project via BOINC Manager either:

15-Apr-2020 19:10:56 [---] [http] [ID#3] Info:    Trying 127.0.0.1...
15-Apr-2020 19:10:56 [---] [http] [ID#3] Info:  Connected to www.cosmologyathome.org (127.0.0.1) port 443 (#17)
15-Apr-2020 19:10:56 [---] [http] [ID#3] Info:  ALPN, offering http/1.1
15-Apr-2020 19:10:56 [---] [http] [ID#3] Info:  Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
15-Apr-2020 19:10:56 [---] [http] [ID#3] Info:  successfully set certificate verify locations:
15-Apr-2020 19:10:56 [---] [http] [ID#3] Info:    CAfile: /etc/ssl/certs/ca-certificates.crt
15-Apr-2020 19:10:56 [---] [http] [ID#3] Info:    CApath: /etc/ssl/certs
15-Apr-2020 19:10:56 [---] [http] [ID#3] Info:  TLSv1.2 (OUT), TLS header, Certificate Status (22):
15-Apr-2020 19:10:56 [---] [http] [ID#3] Info:  TLSv1.2 (OUT), TLS handshake, Client hello (1):
15-Apr-2020 19:10:56 [---] [http] [ID#3] Info:  error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
15-Apr-2020 19:10:56 [---] [http] [ID#3] Info:  Closing connection 17
15-Apr-2020 19:10:56 [---] [http] HTTP error: SSL connect error
15-Apr-2020 19:10:57 [---] Project communication failed: attempting access to reference site
15-Apr-2020 19:10:57 [---] [http] HTTP_OP::init_get(): https://www.google.com/
15-Apr-2020 19:10:57 [---] [http] [ID#0] Info:  Found bundle for host www.google.com: 0x5633d28f1010 [can pipeline]
15-Apr-2020 19:10:57 [---] [http] [ID#0] Info:  Re-using existing connection! (#2) with host www.google.com
15-Apr-2020 19:10:57 [---] [http] [ID#0] Info:  Connected to www.google.com (216.58.204.228) port 443 (#2)

I've also attempted introducing self-signed certificates via following the intrructons from the following articles:

I've tried to do this both locally and from inside the running Apache container (the spun up ran via docker-compose up), followed by restarting of the Apache service in the latter case, but neither approach has worked.

Could you, please, provide some directions for attempting to fix this?

Thanks very much for your time!

Update: Wanted to add, for completeness, that I was able to get boinc-server-docker running successfully, without experiencing the same HTTPS issues.
I think that there's some difference in how the projects are configured (haven't been able to disable HTTPS, and access the login pages etc, for the sake of experimentation, yet though; I can see that the project config xml - as accessed via get_project_config.php - of Cosmology@Home does have a <web_rpc_url_base>https://www.cosmologyathome.org/</web_rpc_url_base> line, whereas the boinc-server-docker project differs in this regard), but I'm not sure, whether removing HTTPS support would be a good idea, instead of enabling it to work properly.

Update 2: I've commented out the define("SECURE_URL_BASE",str_replace("http","https",$master_url)) line from html/project/project.inc and currently testing to see if this change has had any effect.
However, I do believe that such kind of a workaround would only be acceptable for a dev environment, and I would appreciate if you could, please, direct me towards a proper solution which has SSL enabled and honored properly.

Update 3: The change has effectively worked as expected.
Now trying to figure out how to implement the proper solution with SSL support.

Question

Hi I am working on an fork (to use the docker boinc the right way ;) ) and I wonder how to create the forum.

Because if I run php create_forums.php it gives:

Database Error<br>
Database Error<br>
Database Error<br>
Database Error<br>
Database Error<br>
Database Error<br>
Database Error<br>
Database Error<br>

Or do I miss something?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.