docker-reviewboard
docker-reviewboard copied to clipboard
differences in dockerhub and github
Hi ikatson,
I run reviewboard from dockerhub is working beautifully fine (thanks to provide this), however I need to make some changes, so I pull it from your git repo, before I make some changes I try to build and run it the build was sucessful, however the run has an issue
/start.sh: line 24: rb-site: command not found
[uWSGI] getting INI configuration from /uwsgi.ini . . . *** Operational MODE: single process *** failed to open python file /var/www/reviewboard/conf/settings_local.py
I suspect the one in github is slightly outdated, could you please have a look and update it? Thanks so much
Hi @parfaire, I don't have time to look at it now, but maybe the package used in centos got upgraded in a backwards-incompatible way or something like that. Probably pinning the package is required.
I actually built and pushed it fairly recently, and the code in github and dockerhub looks the same. Pull requests welcome :)
If noone will submit a PR I'll try to fix at first occasion. Thanks for the report! Not closing, cause it is a valid issue.
Hi Igor,
Yes the dockerfiles are exactly the same but the outcomes differ, I suspected the build from github causes this which means it actually doesn't really succeed.
After some investigation, I found out that apparently yum install -y ReviewBoard-2.5.6.1 no longer valid and the "unavailable package error - nothing to do" does not impact the build (it gets suppressed because of multiple installation in one command).
I am actually keen to contribute and do PR, however I've been trying to surf the internet about installing the 2.5.6.1 version and got null results. Hence, I am afraid I cannot make amendment.
I try yum install -y ReviewBoard which goes to 2.5.7, but it just produces new error regarding some python module such as publicsuffix, dnspython, etc. I manually wget those modules 1by1, but it keeps asking for more modules, so I guess this approach isn't ideal, it might be an endless chain of installation. Some suggestions I found is to install essential first i.e. groupinstall "Developer Tools", but it does not resolve the issues. I also tried easy_install that target version 2.5.6.1, but somehow easy_install even introduces more errors.
I guess the easy fix is to figure out how to install 2.5.6.1 with yum, hope this give you some lead.
Thanks for the investigation @parfaire! Sounds pretty bad. I'll try to fix it when I have time.
I pulled and fixed at https://github.com/sjuxax/docker-reviewboard/commit/f94b8780dd6ddffc0bcbfb384dd8fcab0e8b405a .
The issue is with upstream packaging and described here: https://groups.google.com/forum/#!topic/reviewboard/2aomraAWZH4 . The new version of Djblets introduced a couple of new dependencies that the maintainer was unaware of.
This hasn't been fixed upstream (yet), which is obviously why I wound up here, but the thread provides direct links to fixed packages. I updated the Dockerfile to install these. make run now starts an apparently-functional ReviewBoard instance, as expected.
I am still seeing this after
make build
make run
More details: https://gist.github.com/fleimgruber/55edca8b2d318cccf3dc57b599df79e3.
edit After looking into it some more, it seems that only the error is the same (/start.sh: line 24: rb-site: command not found), but the cause is somewhere in the Makefile. If I execute this in order:
docker run -d --name rb-postgres -e POSTGRES_USER=reviewboard postgres
docker run --name rb-memcached -d -p 11211 sylvainlasnier/memcached
docker run -v /root/.ssh -v /media --name rb-data busybox true
docker run -it --link rb-postgres:pg --link rb-memcached:memcached --name reviewboard --volumes-from rb-data -p 8000:8000 ikatson/reviewboard
the error does not occur.
I had the same issue with docker-compose. But changing it from building the Docker image to using the image from Docker Hub works.
Like:
services:
postgres:
image: postgres:alpine
environment:
- POSTGRES_USER=reviewboard
memcached:
image: memcached:alpine
reviewboard:
image: ikatson/reviewboard
I have pulled solution to that repo. But any way you can use it from my repo .