sameersbn / docker-gitlab Goto Github PK
View Code? Open in Web Editor NEWDockerized GitLab
Home Page: http://www.damagehead.com/docker-gitlab/
License: MIT License
Dockerized GitLab
Home Page: http://www.damagehead.com/docker-gitlab/
License: MIT License
Thanks for your work first.
I want to ssh login to the container with ssh 172.17.0.2
, but I don't know the password for root. What's the password? Or, there is any other way to login the container?
Thanks.
i have setup my gitlab as below
i am using 3 machines
machineA /opt/gitlab directory shared to machineB /opt/gitlab and machineC /opt/gitlab through NFS.
machineA only contains the repository and the database.
i have 2 docker gitlab instance running in machineB and machineC. so total 4 instance of gitlab is running which i configured in nginx load balancing.
when a user access git in browser it will redirected to any of these 4 instances.
now how i must do my ssh configuration? i am little bit confused how to proceed with.
my http clone and push is working fine.
After new install I get a 502 Bad Gateway error. This problem is described here: https://github.com/gitlabhq/gitlabhq/issues/1527
I noticed that #5 addresses this issue, but even with a timeout of 600 I get the 502 error.
What should I try next?
The only log line relevant to this problem is
[14/Jan/2014:11:19:03 +0000] "POST /admin/users HTTP/1.0" 500 356 "https://your.host.tld/admin/users/new"
I had a quick search on Google, and
/etc/init.d/gitlab start
-bash: warning: setlocale: LC_ALL: cannot change locale (en_US)
Removing stale Unicorn web server pid. This is most likely caused by the web server crashing the last time it ran.
Removing stale Sidekiq web server pid. This is most likely caused by the Sidekiq crashing the last time it ran.
Starting both the GitLab Unicorn and Sidekiq/bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US)
/bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US)
The GitLab Unicorn web server with pid 261 is running.
The GitLab Sidekiq job dispatcher with pid 271 is running.
GitLab and all its components are up and running.
root@f329b2e4c9a2:~# master failed to start, check stderr log for details
E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/s/software-properties/python3-software-properties_0.92.37_all.deb 404 Not Found [IP: 91.189.91.13 80]
HOST: Ubuntu 13.10
When I push a repo, Gitlab asks me the password for the git user:
[email protected]'s password:
When I try:
> ssh -Tvvv [email protected]
...
debug1: Found key in /Users/arnaud/.ssh/known_hosts:18
debug2: bits set: 505/1024
debug1: ssh_rsa_verify: signature correct
debug2: kex_derive_keys
debug2: set_newkeys: mode 1
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug2: set_newkeys: mode 0
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug2: service_accept: ssh-userauth
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug2: key: /Users/arnaud/.ssh/id_rsa (0x7fbf42500380),
debug2: key: /Users/arnaud/.ssh/id_dsa (0x7fbf42500220),
debug1: Authentications that can continue: publickey,password
debug3: start over, passed a different list publickey,password
debug3: preferred publickey,keyboard-interactive,password
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive,password
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/arnaud/.ssh/id_rsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,password
debug1: Offering DSA public key: /Users/arnaud/.ssh/id_dsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,password
debug2: we did not send a packet, disable method
debug3: authmethod_lookup password
debug3: remaining preferred: ,password
debug3: authmethod_is_enabled password
debug1: Next authentication method: password
[email protected]'s password:
I tried the solution at issue #26 and other solutions on internet but nothing worked.
First of all, I'd like to say thank you for this great work. I'm migrating my infrastructure to a Chef + Docker combo and I have to say that this project was really useful to me throughout this process. Feels much better managing Gitlab as a service than using a standard install.
I have an old Gitlab setup and as far as I can see it defaults to sending emails via sendmail
.
AS I am using this docker image in a Chef Recipe (and use Vagrant's Docker provisioner) I'd rather not add credentials into the Vagrantfile.
Can we have a look at how to configure this Gitlab image to use standard sendmail
instead? I guess postfix
could be available in the Docker image...
Thanks a lot.
xx@xx:/samersbn-gitlab/docker-gitlab$ docker run -i -d -P -t xxx/gitlab/samersbn-gitlab/docker-gitlab$ docker logs -f ec6d1a10f50
ec6d1a10f50e6b6e942ca41e45cc39d8c2f0270c68ae26c51eb40ab6d8f14132
xx@xx:
User: root Password: niegae9nae9Y
sshd: started
nginx: started
mysqld: ERROR (abnormal termination)
When upgrading the container, the SSH host keys change, therefore the users of our gitlab instance have to accept new host keys every time I upgrade (or rebuild for some other reason).
I wonder if it would be useful to have a means of inserting SSH host keys into the container. Or do you think some kind of SSH proxy container in front of the gitlab instance would be more reasonable?
Idea is to add a backup command that will take a backup of gitlab database and repositories via the sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production rake task
For the most part, I love the setup you have and am using your redis and mysql dockerfiles as well. So first - thank you for what you do.
I do worry though that to get all the information gitlab needs into the the container, my docker run
command becomes 5+ lines long and should the container be forgotten, many of those variables require lots of time to craft again. Perhaps there is a middle ground of using config files from the volume - or config template files from the volume.
I'm not sure if it's 100% better but when you start to add SSL in - it's going to get worse. I added custom volumes to replace the generated nginx config and so I could add in my SSL certs and it seems more manageable than all environment variables, albeit less flexible.
Is it possible to pass an environment variable to set the Default Project Number (say to a value different from 10)
About 30 seconds after starting the container, I get a kernel message in syslog:
kernel: [ 1540.111610] type=1400 audit(1398416431.103:53): apparmor="DENIED" operation="ptrace" profile="docker-default" pid=2774 comm="ps" requested_mask="trace" denied_mask="trace" peer="docker-default"
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04 LTS
Release: 14.04
Codename: trusty
$ uname -a
Linux host 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
$ docker.io --version
Docker version 0.9.1, build 3600720
Just an idea from shipyard project as you're removing the mysql + redis images from the core build.
They have a deploy image (that deploys redis, postgresql, nginx, hipache and their web-UI images) for quick setup
https://github.com/shipyard/shipyard-deploy
And they keep a separate set of instructions for a production deployement.
My GitLab instance is painfully slow - with page loading times of 5-30 seconds.
The assets are cached properly and return a 304 Not Modified. So my first guess would be that there is a bunch load of (error)logging running in the background.. Is there a way I can figure out what's causing this?
sudo find /opt/gitlab -name *.log
didn't show any available log files to inspect.
For configuring OAuth logins for example.
After some digging I found out this tool is generating/altering the configuration files, what makes me wonder what good reasons there are for doing this. Isn't copying a (custom) version of the configuration a more scalable approach (like https://github.com/crashsystems/gitlab-docker does)?
I'd suggest allowing something like this:
docker run -d \
-v /opt/gitlab/config:/home/git/gitlab/config \
sameersbn/gitlab
Which makes almost all the configuration options obsolete.
Because I'm new to using Docker & Docker-GitLab, I'd like to hear what you think before starting on a PR.
Hi,
I ran:
mccoole@ubuntu:~/Development/Tools/Docker/postgres$ docker run -name gitlab -i -t -rm -e "DB_TYPE=postgres" -e "DB_HOST=172.17.0.2" -e "DB_NAME=gitlabhq_production" -e "DB_USER=gitlab" -e "DB_PASS=password" -v /opt/gitlab/data:/home/git/data sameersbn/gitlab app:rake gitlab:setup
where 172.17.0.2 is the IP of another container with a running postgres.
The install seemed to go on for an age .. there were almost 200 separate line items downloaded, some of them 120MB+. It almost felt the system had got itself into a loop.
I then got this notification ...
����User: root Password: utaeL2gohThi
nginx: started
redis-server: started
Running gitlab rake task...
fatal: Not a git repository (or any of the parent directories): .git
rake aborted!
FATAL: password authentication failed for user "gitlab"
... followed by a long traceback for ruby, ending in:
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/railties-4.0.3/lib/rails/application.rb:250:in `block in run_tasks_blocks'
Tasks: TOP => gitlab:setup => environment
(See full trace by running task with --trace)
I don't know enough ruby to figure this out. In the readme, there are two scripts under postgres where I interpreted running the first did the whole database set-up for you. Maybe I misunderstood that.
Perhaps its not possible to do this with postgres running in a separate container.
Any suggested pointers to resolve would be much appreciated. Thanks.
I find some configuration must be done if we want to send email.
It will be better to expose some env variable for mail configuration.
Will this feature come soon?
Hello,
I run sameersbn/docker-gitlab container on top of shipyard as a shipyard application (so it has its own domain, and hipache acts as a proxy). Everything works OK except git push/pull, which gives this error for me:
$ git push -u origin master
Access denied.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
That happens for both repository and wiki pages. I can succesfully log in as root using the same ssh connection, so ssh tunnel is OK (and so ssh keys are working OK). I am starting container with:
rm -rf /opt/gitlab
mkdir -p /opt/gitlab/data
mkdir -p /opt/gitlab/mysql
docker run -d \
-p 80 \
-p MYIP:22:22 \
-v /opt/gitlab/data:/home/git/data \
-v /opt/gitlab/mysql:/var/lib/mysql \
-e "SMTP_USER=gitlab" -e "SMTP_PASS=MYPASS" \
-e "SMTP_HOST=MYSMTP" -e "SMTP_PORT=25" \
-e "GITLAB_EMAIL=gitlab@MYDOMAIN" \
-e "GITLAB_SUPPORT=gitlab@MYDOMAIN" \
-e "GITLAB_HOST=gitlab.MYDOMAIN" \
-name gitlab \
sameersbn/gitlab
(where MY* are substituted for privacy).
I tried this many times from scratch (empty external data directory, empty internal mysql database with external data directory) and always get the same result. I even tried setting the full path with:
git remote add origin [email protected]:/home/git/data/repositories/MYUSER/test.git
I am able to import a repo from github, but then cannot clone out of this local repo (getting "Access denied." again). Can you help me debug the problem?
Is it possible to add command to configure the LDAP in gitlab.yml?
https://raymii.org/s/tutorials/Gitlab_and_Active_Directory_LDAP_Authentication.html
Here is my current run command:
sudo docker run --name=gitlab -v /opt/gitlab/data:/home/git/data \
--link mysql:mysql --link redis:redisio -e "DB_USER=gitlab" \
-e "DB_PASS=blahblah" -e "SMTP_DOMAIN=postmarkapp.com" \
-e "SMTP_HOST=smtp.postmarkapp.com" -e "SMTP_PORT=2525" \
-e "SMTP_USER=blahblah" -e "SMTP_PASS=blahblah" \
-e "GITLAB_HOST=git.domain.com" -e "[email protected]" \
-e "[email protected]" -e "GITLAB_BACKUPS=daily" \
-e "GITLAB_HTTPS=True" -e "GITLAB_PORT=443" \
-v /opt/nginx/sites-enabled:/etc/nginx/sites-enabled \
-v /opt/nginx/ssl:/etc/nginx/ssl \
-v /opt/nginx/logs:/var/log/nginx \
-d -t -p 80:80 -p 443:443 -p 22:22 \
sameersbn/gitlab:latest
I'm running docker 0.10.0. When I try and ssh in with a valid key I get.
ssh [email protected]
PTY allocation request failed on channel 0
Welcome to GitLab, Anonymous!
Connection to git.domain.com closed.
I understand this might be a docker issue but they seem to think it was fixed in 0.9.1. I've tried with and without -t. Hoping you can help.
Hello,
I'm trying to push code but i'm getting this error:
$ git push origin master
Write failed: Broken pipe
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
I saw this error on the Gitlab Trouble Shooting Guide (category Gitlab Shell). But impossible to run the fix (in fact, to get a tty) on a the running container, I'm on a CentOS host.
I tried to get an ssh connection ssh root@MYDOMAIN
, here is the result:
Connection to MYDOMAIN closed by remote host.
Connection to MYDOMAIN closed.
More info, I have mounted 2 volumes with the container: -v /gitlab/data:/home/git/data -v /gitlab/mysql/:/var/lib/mysql
.
Thanks for the help.
First of all I understand that it is not gitlab issue, but I very hope you can help me.
I have a server machine (ip address = IP_SERVER) where I have deployed the docker container with gitlab (ip address = IP_DOCKER). The users have created git repositories and deploy ssh public keys on IP_DOCKER (via gitlab).
Now I want to clone the git repository from my personal computer (ip address = IP_NOTEBOOK). As I see I can connect to IP_DOCKER only from IP_SERVER, but not from IP_NOTEBOOK.
How can I set IP_SERVER and IP_DOCKER so if the user say:
git clone git@IP_SERVER:/root/test.git
the IP_SERVER will forward my request to IP_DOCKER ?
Thanks in advance.
When user clicks on the "Background Jobs" link in the "Admin Area", the page is not rendered properly and the user is logged out.
@arno Creating an issue for the SSL support work. At the moment the SSL related comments are all over the place.
I just pulled your branch. I see you have given a lot of SSL configuration options. I think its an overkill.
My changes are only a couple of lines (maybe 10 lines or so) I will publish my branch and maybe you can check and we can add whatever else is required.
#53
Hello.
I found bug. I create container with command:
docker run -name gitlab -i -t --rm -link mysql:mysql -v /opt/docker/gitlab/data:/home/git/data -e "DB_USER=gitlab" -e "DB_PASS=1" -e "DB_NAME=gitlabhq_production" sameersbn/gitlab:latest app:rake gitlab:setup
And I get the error: "gitlab no implicit conversion of Fixnum into String".
The error appears because value of key "password" doesn't wrote in quotes (in file gitlab/config/database.yml):
production:
adapter: mysql2
database: gitlab_production
host: 172.27.0.5
port: 3306
username: gitlab
password: 1
encoding: utf8
The solution to this problem is using additional quotes in bash command (look at DB_PASS):
docker run -name gitlab -i -t --rm -link mysql:mysql -v /opt/docker/gitlab/data:/home/git/data -e "DB_USER=gitlab" -e "DB_PASS=\"1\"" -e "DB_NAME=gitlabhq_production" sameersbn/gitlab:latest app:rake gitlab:setup
I tried to build as described in the install documentation. Ubuntu 14.04 and Docker 0.11.1
fg@sx:~$ git clone https://github.com/sameersbn/docker-gitlab.git
Cloning into 'docker-gitlab'...
remote: Reusing existing pack: 1809, done.
remote: Counting objects: 43, done.
remote: Compressing objects: 100% (39/39), done.
remote: Total 1852 (delta 20), reused 0 (delta 0)
Receiving objects: 100% (1852/1852), 850.45 KiB | 698.00 KiB/s, done.
Resolving deltas: 100% (1049/1049), done.
Checking connectivity... done.
fg@sx:~$ cd docker-gitlab/
fg@sx:~/docker-gitlab$ docker build --tag="$USER/gitlab" .
2014/05/31 02:44:22 Invalid namespace name (fg), only [a-z0-9_] are
allowed, size between 4 and 30
$USER is fg
This should work, or not!?
Not really an issue more something to add to the readme.
Before you can store the database files in a mounted volume (with the -v option), you have first to copy out those files to the local file system, so in your example you have to to this:
docker cp :/var/lib/mysql /opt/gitlab/mysql
otherwise the mysql server fails to start.
Hi,
when starting the 6.5.1 image I get gitlab up and running (web interface). But the log is saying that Sidekiq is not running. I also see that no emails are send from gitlab and I can't push anything to a test repository I created via the web interface. I also noticed that the log has many lines like:
fatal: Not a git repository (or any of the parent directories): .git
The log section telling Sidekiq is not running:
Checking Sidekiq ...
Running? ... no
Try fixing it:
sudo -u git -H RAILS_ENV=production script/background_jobs start
For more information see:
doc/install/installation.md in section "Install Init Script"
see log/sidekiq.log for possible errors
Please fix the error above and rerun the checks.
Checking Sidekiq ... Finished
The log/sidekiq.log file has only a single line saying:
fatal: Not a git repository (or any of the parent directories): .git
I came across this issue as the default ssh port 22 is already bound on VMs.
The same applies to the http port.
Please note that the port redirecting by docker is not enough as gitlab itself needs to displays the effective ports at several places.
Is it possible to make most SMTP commands aside of SMTP_HOST and SMTP_PORT) optional so they don't write (or a removed) from the config file.
In my case I'm using an SMTP relay without authentication, and having an authentication method/user/password in the file confuses action_mailer and it attempts authentication (which fails as there is none).
Another idea maybe the tar of config files could be pushed using the releases mechanism this way it doesn't go in the build?
I'm sure I'm the only one but I'm stuck on Gitlab 6.3.0 and Gitlab Shell 1.7.9. When I try to update everything hangs and I'll have to go back.
I see that you've made this image very easy to upgrade/restore so I wonder if you could add 6.3 and 6.4 as well so I could start form there and restore my current installation and walk my way up to the current version via your Docker image?
Is it too much work?
Subscribe to this issue to get notified about project announcements.
This is mainly created so that you can keep up with the changes in the application stack.
Please do not use this thread to report issues.
This is a great help, but can you also add Gitlab CI?
Ok not sure why this isn't working
I'm mounting /opt/ssl/ for my keys
then I specify
-e SSL_CERTIFICATE_PATH="\/opt\/ssl\/ssl.crt" \
-e SSL_KEY_PATH="\/opt\/ssl\/ssl.key" \
-e SSL_DHPARAM_PATH="\/opt\/ssl\/dhparam.pem" \
but I'm still getting the message that the files are missing and HTTPS is disabled?
Hi,
I've gotten gitlab running inside of docker now and was able to backup from my old gitlab vm and restore it into the new docker container. I am now at the point where the docker gitlab instance is listening to port 22 on it's private IP.
I am looking for any information on the best way to expose that through the public host interface?
Thank you!
Jeff
When in try to use external mysql DB i get a error that
User: root Password: ieXeesohbi1n
nginx: stopped
nginx: started
redis-server: added process group
Running gitlab rake task...
fatal: Not a git repository (or any of the parent directories): .git
rake aborted!
Can't connect to MySQL server on '172.16.99.116' (111)
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/mysql2-0.3.11/lib/mysql2/client.rb:44:in connect' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/mysql2-0.3.11/lib/mysql2/client.rb:44:in
initialize'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activerecord-4.0.3/lib/active_record/connection_adapters/mysql2_adapter.rb:18:in new' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activerecord-4.0.3/lib/active_record/connection_adapters/mysql2_adapter.rb:18:in
mysql2_connection'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activerecord-4.0.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:440:in new_connection' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activerecord-4.0.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:450:in
checkout_new_connection'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activerecord-4.0.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:421:in acquire_connection' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activerecord-4.0.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:356:in
block in checkout'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activerecord-4.0.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:355:in checkout' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activerecord-4.0.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:265:in
block in connection'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activerecord-4.0.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:264:in connection' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activerecord-4.0.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:546:in
retrieve_connection'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activerecord-4.0.3/lib/active_record/connection_handling.rb:79:in retrieve_connection' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activerecord-4.0.3/lib/active_record/connection_handling.rb:53:in
connection'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activerecord-4.0.3/lib/active_record/model_schema.rb:203:in table_exists?' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/acts-as-taggable-on-2.4.1/lib/acts_as_taggable_on/acts_as_taggable_on/cache.rb:5:in
included'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/acts-as-taggable-on-2.4.1/lib/acts_as_taggable_on/taggable.rb:98:in include' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/acts-as-taggable-on-2.4.1/lib/acts_as_taggable_on/taggable.rb:98:in
taggable_on'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/acts-as-taggable-on-2.4.1/lib/acts_as_taggable_on/taggable.rb:39:in acts_as_taggable_on' /home/git/gitlab/app/models/issue.rb:38:in
class:Issue'
/home/git/gitlab/app/models/issue.rb:20:in <top (required)>' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:229:in
require'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:229:in block in require' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:214:in
load_dependency'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:229:in require' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:330:in
require_or_load'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:463:in load_missing_constant' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:184:in
const_missing'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:495:in load_missing_constant' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:184:in
const_missing'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:495:in load_missing_constant' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:184:in
const_missing'
/home/git/gitlab/lib/api/notes.rb:6:in <class:Notes>' /home/git/gitlab/lib/api/notes.rb:3:in
module:API'
/home/git/gitlab/lib/api/notes.rb:1:in <top (required)>' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:229:in
require'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:229:in block in require' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:214:in
load_dependency'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:229:in require' /home/git/gitlab/lib/api/api.rb:1:in
block in <top (required)>'
/home/git/gitlab/lib/api/api.rb:1:in each' /home/git/gitlab/lib/api/api.rb:1:in
<top (required)>'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:229:in require' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:229:in
block in require'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:214:in load_dependency' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:229:in
require'
/home/git/gitlab/config/initializers/2_app.rb:13:in block in <top (required)>' /home/git/gitlab/config/initializers/2_app.rb:13:in
each'
/home/git/gitlab/config/initializers/2_app.rb:13:in <top (required)>' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:223:in
load'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:223:in block in load' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:214:in
load_dependency'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:223:in load' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/railties-4.0.3/lib/rails/engine.rb:609:in
block (2 levels) in class:Engine'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/railties-4.0.3/lib/rails/engine.rb:608:in each' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/railties-4.0.3/lib/rails/engine.rb:608:in
block in class:Engine'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/railties-4.0.3/lib/rails/initializable.rb:30:in instance_exec' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/railties-4.0.3/lib/rails/initializable.rb:30:in
run'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/railties-4.0.3/lib/rails/initializable.rb:55:in block in run_initializers' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/railties-4.0.3/lib/rails/initializable.rb:44:in
each'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/railties-4.0.3/lib/rails/initializable.rb:44:in tsort_each_child' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/railties-4.0.3/lib/rails/initializable.rb:54:in
run_initializers'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/railties-4.0.3/lib/rails/application.rb:215:in initialize!' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/railties-4.0.3/lib/rails/railtie/configurable.rb:30:in
method_missing'
/home/git/gitlab/config/environment.rb:5:in <top (required)>' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:229:in
require'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:229:in block in require' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:214:in
load_dependency'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:229:in require' /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/railties-4.0.3/lib/rails/application.rb:189:in
require_environment!'
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/railties-4.0.3/lib/rails/application.rb:250:in `block in run_tasks_blocks'
Tasks: TOP => gitlab:setup => environment
(See full trace by running task with --trace)
My guess is that mysql client is not installed properly in the container.
The current directory structure does not allow for backups to be restored. This is because gitlab tries to rename the existing repositories directory to repositories.old while restoring a backup. Since we mount the repositories directory as a volume, the repositories directory cannot be renamed.
To fix this we will unify all docker data into a single data directory which would hold all of docker data (with the exception of mysql data) and only this directory would be mounted as a volume
When trying to do anything with a latest version:
sudo docker run -name gitlab -i -t -rm --link pgdatalocal:postgresql \
-e "DB_USER=gitlab" -e "DB_PASS=password" \
-e "DB_NAME=gitlabhq_production" \
-v /media/place/place/place:/home/git/data \
sameersbn/gitlab:latest app:rake gitlab:setup
getting this:
mysqld: added process group
Failed to start mysql server
I had a previous version with the local mysql database that worked without issue, but this a completely new setup using an existing postgresql container forwarded to a local port, that is running without issue.
I got this error when trying to run the image, here's the full log:
Creating SSH2 RSA key; this may take some time ...
Creating SSH2 DSA key; this may take some time ...
Creating SSH2 ECDSA key; this may take some time ...
Creating SSH2 ED25519 key; this may take some time ...
invoke-rc.d: policy-rc.d denied execution of restart.
sshd: started
sudo: unable to execute /bin/cp: Permission denied
Version: latest (6.8.2)
Host machine: ubuntu 14.04 (with docker.io in the ubuntu repository)
Hi Sameer,
I run a centralized logger (logstash + elasticsearch) and was wondering if you can add environment variables to indicate that the logs to go into a particular directory.
The idea is to use the volume-from docker command (see here) where a process will take the logs in the designed directory and forward these to logstash.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.