Easy jetbrains hub deployment using docker
These Dockerfiles allow you to easily build images to deploy your own hub instance.
Besides that, as always, use these scripts with care.
Don't forget to back up your data very often, too.
Docker has to run. It supports many platforms like Ubuntu, Arch Linux, Mac OS X, Windows, EC2 or the Google Cloud. Click here to get specific infos on how to install on your platform.
docker run -t -i -p 8080:8080 dzwicker/docker-hub
Now open your browser and point it to http://localhost:8080 and rejoice. :)
mkdir -p /var/lib/hub
mkdir -p /var/log/hub
mkdir -p /etc/hub
The Dockerfile creates a hub user to run hub without root permissions. This user has a UID of 2000. Please make sure to add a user to your host system with this UID and allow him to read and write to /var/lib/hub. The name of this host user in not important. (You can use a the user group, too. It has the GID of 2000 :)
docker create -t -i -p 127.0.0.1:8080:8080 \
-v /var/lib/hub:/var/lib/hub \
-v /var/log/hub:/var/log/hub \
-v /etc/hub:/usr/local/hub/conf \
-v /tmp:/tmp \
--name docker-hub \
dzwicker/docker-hub
Create upstart configuration /etc/init/docker-hub.conf
description "Docker Hub"
start on filesystem and started docker
stop on runlevel [!2345]
respawn
script
/usr/bin/docker start -a docker-hub >>/var/log/docker-hub.log 2>&1
end script
(optional) Setup logrotate e.g. /etc/logrotate.d/docker-hub
/var/log/hub/*.log
/var/log/hub/dashboard/*.log
/var/log/hub/hub/*.log
/var/log/hub/hub/logs/*.log
/var/log/hub/internal/services/bundleProcess/*.log
/var/log/hub/project-wizard/*.log
{
rotate 7
daily
missingok
notifempty
sharedscripts
copytruncate
compress
}
(optional) Add vhost to nginx
mkdir -p /var/log/nginx/your-domain
upstream docker-hub {
server localhost:8080;
}
server {
listen 80;
server_name your-domain.com;
access_log /var/log/nginx/your-domain/access.log;
error_log /var/log/nginx/your-domain/error.log;
proxy_set_header Host $http_host; # required for docker client's sake
proxy_set_header X-Real-IP $remote_addr; # pass on real client's IP
client_max_body_size 0; # disable any limits to avoid HTTP 413 for large image uploads
# required to avoid HTTP 411: see Issue #1486 (https://github.com/dotcloud/docker/issues/1486)
chunked_transfer_encoding on;
location / {
proxy_pass http://docker-hub;
}
}
Setup the Server
Follow the steps 5-9 of the installation instructions for Jetbrains Hub using paths located under /var/lib/hub/data, /var/lib/hub/backups, /var/log/hub, /tmp.
Content type
Image
Digest
sha256:40b0741ff…
Size
326.4 MB
Last updated
over 8 years ago
docker pull dzwicker/docker-hub