FROM ubuntu:quantal
RUN apt-get update -y && apt-get upgrade -y
RUN sudo apt-get install -y build-essential zlib1g-dev libyaml-dev libssl-dev libgdbm-dev libreadline-dev libncurses5-dev libffi-dev curl git-core openssh-server redis-server checkinstall libxml2-dev libxslt-dev libcurl4-openssl-dev libicu-dev postgresql-9.1 libpq-dev expect vim python python-docutils nginx RUN sudo update-alternatives --set editor /usr/bin/vim.basic
RUN bash -c 'debconf-set-selections <<< "postfix postfix/mailname string www.example.com"' RUN bash -c 'debconf-set-selections <<< "postfix postfix/main_mailer_type string Internet Site"' RUN sudo apt-get install -y postfix
RUN mkdir /tmp/ruby && cd /tmp/ruby && curl --progress http://mirrors.ibiblio.org/ruby/ruby-2.0.0-p247.tar.gz | tar xz && cd ruby-2.0.0-p247 && ./configure && make && sudo make install && sudo gem install bundler --no-ri --no-rdoc
RUN sudo adduser --disabled-login --gecos 'GitLab' git
RUN cd /home/git && sudo -u git -H git clone https://github.com/gitlabhq/gitlab-shell.git && cd /home/git/gitlab-shell && sudo -u git -H git checkout v1.7.0 && sudo -u git -H cp config.yml.example config.yml && sudo -u git -H ./bin/install
RUN sudo service postgresql start && sudo -u postgres psql -d template1 -c "CREATE USER git WITH PASSWORD 'git';" && sudo -u postgres psql -d template1 -c "CREATE DATABASE gitlabhq_production OWNER git;"
RUN cd /home/git && sudo -u git -H git clone https://github.com/gitlabhq/gitlabhq.git gitlab && cd /home/git/gitlab && sudo -u git -H git checkout 6-0-stable && cp config/gitlab.yml.example config/gitlab.yml
RUN sudo chown -R git /home/git/gitlab/log/ && sudo chown -R git /home/git/gitlab/tmp/ && sudo chmod -R u+rwX /home/git/gitlab/log/ && sudo chmod -R u+rwX /home/git/gitlab/tmp/
RUN sudo -u git -H mkdir /home/git/gitlab-satellites
RUN sudo -u git -H mkdir /home/git/gitlab/tmp/pids/ && sudo -u git -H mkdir /home/git/gitlab/tmp/sockets/ && sudo chmod -R u+rwX /home/git/gitlab/tmp/pids/ && sudo chmod -R u+rwX /home/git/gitlab/tmp/sockets/
RUN sudo -u git -H mkdir /home/git/gitlab/public/uploads && sudo chmod -R u+rwX /home/git/gitlab/public/uploads
RUN cd /home/git/gitlab && sudo -u git -H cp config/unicorn.rb.example config/unicorn.rb
RUN sudo -u git -H git config --global user.name "GitLab" && sudo -u git -H git config --global user.email "gitlab@localhost" && sudo -u git -H git config --global core.autocrlf input
RUN cd /home/git/gitlab && sudo -u git -H cp config/database.yml.postgresql config/database.yml && sudo -u git -H chmod o-rwx config/database.yml && sed -i -e '0,/password:/s//password: git/' config/database.yml
RUN cd /home/git/gitlab && sudo gem install charlock_holmes --version '0.6.9.4' && sudo -u git -H bundle install --deployment --without development test mysql aws
RUN cd /home/git/gitlab && sudo service postgresql start && sudo service redis-server start && expect -c 'spawn sudo -u git -H bundle exec rake gitlab:setup RAILS_ENV=production; expect "yes/no"; send "yes\r"; expect eof;'
RUN cp /home/git/gitlab/lib/support/init.d/gitlab /etc/init.d/gitlab RUN chmod +x /etc/init.d/gitlab RUN sudo update-rc.d gitlab defaults 21
RUN cp /home/git/gitlab/lib/support/nginx/gitlab /etc/nginx/sites-available/gitlab && ln -s /etc/nginx/sites-available/gitlab /etc/nginx/sites-enabled/gitlab && rm /etc/nginx/sites-enabled/default
EXPOSE 80
WORKDIR /home/git/gitlab
CMD sudo service postgresql start && sudo service redis-server start && sudo service gitlab start && sudo service nginx start && sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production && sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production && sh -c "while true; do sleep 60; done"
No tags have been pushed to this repository yet.