sameersbn/gitlab是基于ubuntu镜像的
1、配置代理并pull gitlab
#修改/etc/sysconfig/docker
HTTP_PROXY=http://186.100.4.107:808
http_proxy=$HTTP_PROXY
HTTPS_PROXY=$HTTP_PROXY
https_proxy=$HTTP_PROXY
export HTTP_PROXY HTTPS_PROXY http_proxy https_proxy
然后执行docker pull docker.io/sameersbn/gitlab
2、安装redis和mysql并初始化数据库环境
yum -y install mysql-server redis
启动redis和mysql
service mysqld start
service redis start
初始化mysql
create database `gitlab` default charset utf8 collate utf8_general_ci;
GRANT all privileges ON gitlab.* TO gitlab@'%' IDENTIFIED BY 'password' with grant option;
FLUSH PRIVILEGES ;
3、配置gitlab参数并运行gitlab
mkdir -p /opt/gitlab/data /opt/gitlab/log
docker run \
--name='gitlab' \
-itd \
--net=none \
--hostname='115.29.150.160' \
-e 'DB_ADAPTER=mysql2' \
-e 'DB_TYPE=mysql' \
-e 'DB_HOST=192.168.42.1' \
-e 'DB_PORT=3306' \
-e 'DB_NAME=gitlab' \
-e 'DB_USER=gitlab' \
-e 'DB_PASS=password' \
-e 'REDIS_HOST=192.168.42.1' \
-e 'REDIS_PORT=6379' \
-e 'UNICORN_WORKERS=20' \
-e 'GITLAB_PORT=80' \
-e 'GITLAB_SSH_PORT=22' \
-e 'GITLAB_HOST=115.29.150.160' \
-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
查看log
docker logs gitlab
#杀死所有正在运行的容器
docker kill $(docker ps -a -q)
#删除所有已经停止的容器(不会删除镜像)
docker rm $(docker ps -a -q)
docker镜像的导入和导出
docker save -o gitlab.tar.gz sameersbn/gitlab
docker load < gitlab.tar.gz