docker gitlab mysql_使用Docker搭建gitlab
安装Docker
在bash中输入命令安装最新的docker
sudo apt-get purge docker.io
curl -s https://get.docker.io/ubuntu/ | sudo sh
sudo apt-get update
sudo apt-get install lxc-docker
下载镜像
以下脚本会下载gitlab,MySQL,Redis镜像
sudo docker pull sameersbn/gitlab:latest
sudo docker pull sameersbn/mysql:latest
sudo docker pull sameersbn/redis:latest
启动redis
sudo docker run \
--name=gitlab_redis \
-tid \
sameersbn/redis:latest
启动mysql
sudo mkdir -p /opt/gitlab/mysql
sudo docker run \
--name=gitlab_mysql \
-tid \
-e ‘DB_NAME=gitlabhq_production’ \
-e ‘DB_USER=gitlab’ \
-e ‘DB_PASS=password’ \
-v /opt/gitlab/mysql:/var/lib/mysql \
sameersbn/mysql:latest
启动gitlab
sudo mkdir -p /opt/gitlab/data /opt/gitlab/log
sudo docker run \
--name=’gitlab’ \
-itd \
--link gitlab_mysql:mysql \
--link gitlab_redis:redisio \
-e ‘GITLAB_PORT=80’ \
-e ‘GITLAB_SSH_PORT=22’ \
-e GITLAB_SECRETS_DB_KEY_BASE=Hfr3TMvvMWWgjd3VvJmfJxfstfzNWC9PzKT3dvmKCNHH3Rjc7kjXsLHsj7hJK7HC \
-e GITLAB_SECRETS_SECRET_KEY_BASE=vMWWgjd3VvJmfJxfstfzNWC9PzKT3dvmKCNHH3Rjc7kjXsLHsj \
-e GITLAB_SECRETS_OTP_KEY_BASE=WWgjd3VvJmfJxfs \
-p 10022:22 -p 10080:80 \
-v /var/run/docker.sock:/run/docker.sock \
-v $(which docker):/bin/docker \
-v /opt/gitlab/data:/home/git/data \
-v /opt/gitlab/log:/var/log/gitlab \
sameersbn/gitlab:latest
错误
Cannot connect to the Docker daemon. Is the docker daemon running on this host?
使用命令
sudo service docker start
or
sudo service docker stop
sudo rm -rf /var/lib/docker
sudo service docker start
这一步骤会耗时几分钟,因为这一步会做一些初始化操作,我们可以通过sudo docker logs gitlab来查看安装过程。
我们指定了10022作为ssh的访问端口,10080作为http的访问端口,
执行完后,稍微过1-2分钟后,打开以下地址应该就可以访问gitlab了
http://localhost:10080
如果是在服务器上搭建,请替换localhost为服务器地址
遇到错误
docker: Error response from daemon: Conflict. The container name “/gitlab” is already in use by container “8ede5220bdbe2d32b5534f9727095c369a0ca128f9fd7a05bacb15cf51cad942”. You have to remove (or rename) that container to be able to reuse that name.
使用命令
sudo docker rm -f gitlab
加入开机启动
加入/etc/rc.local
echo ‘docker start gitlab_redis’ >> /etc/rc.local
echo ‘docker start gitlab_mysql’ >> /etc/rc.local
echo ‘docker start gitlab’ >> /etc/rc.local
还没有评论,来说两句吧...