这就是我用Docker运行GitLab的方法:
步骤1.启动postgresql容器
docker run --name gitlab-postgresql -d \
--env 'DB_NAME=gitlabhq_production' \
--env 'DB_USER=gitlab' --env 'DB_PASS=password' \
--volume /srv/docker/gitlab/postgresql:/var/lib/postgresql \
sameersbn/postgresql:9.4-12
步骤2.启动redis容器
docker run --name gitlab-redis -d \
--volume /srv/docker/gitlab/redis:/var/lib/redis \
sameersbn/redis:latest
步骤3.启动gitlab容器
docker run --name gitlab -d \
--link gitlab-postgresql:postgresql --link gitlab-redis:redisio \
--publish 10022:22 --publish 10080:80 \
--env 'GITLAB_PORT=10080' --env 'GITLAB_SSH_PORT=10022' \
--env 'GITLAB_SECRETS_DB_KEY_BASE=long-and-random-alpha-numeric-string' \
--volume /srv/docker/gitlab/gitlab:/home/git/data \
sameersbn/gitlab:8.4.2
但是,当我重新启动或关闭计算机时,之前的所有数据都已消失。
请帮助我,我是Docker中的Docker和GitLab的新手。
答案 0 :(得分:1)
您的方法似乎是正确的,我不明白为什么卷不会保留您的数据。重新启动计算机后,可以尝试使用以下命令启动已停止的容器:
docker start gitlab-postgresql
docker start gitlab-redis
docker start gitlab
顺便说一句,我建议使用this docker-compose.yml文件来设置你的gitlab环境。只需下载该文件并运行docker-compose up -d
。