Ubuntu 18.04 使用docker 部署gitlab并且使用自定义端口号
- 搭建原因
两个月前我搭建了公司的docker(无法自定义端口,),当初只想着把托管在GitHub的项目代码放在公司的服务器上面,后来忙着修改人脸服务器代码,忘记了,这个月由于领导提的需求比较多,还是托管回来比较方便。
所以重新进行搭建,由于百度上大部分文章写的有一些问题,在此进行记录。
这是搭建成功的,并且http克隆的端口也正常,如下图
- 首先安装docker(阿里云自己有源,所以可以使用自带的源安装)
但是还是建议使用清华大学的源
https://mirror.tuna.tsinghua.edu.cn/
Ubuntu 用户可以参考下面
- 如果你安装过dockers,先删除
sudo apt-get remove docker docker-engine docker.io
- 首先安装依赖
sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
- 信任 Docker 的 GPG 公钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- 对于 amd64 架构的计算机,添加软件仓库:
sudo add-apt-repository \ "deb [arch=amd64] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \ $(lsb_release -cs) \ stable"
- 如果你是树莓派或其它ARM架构计算机
echo "deb [arch=armhf] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \ $(lsb_release -cs) stable" | \ sudo tee /etc/apt/sources.list.d/docker.list
- 最后执行
sudo apt-get update
sudo apt-get install docker-ce
- 这样等待一会就安装完成
- 拉取gitlab镜像
这部分可按照自己的喜欢拉取最新的版本,或者中文版本
https://hub.docker.com/search?q=gitlab-ce-zh&type=image
由于twang2218/gitlab-ce-zh大佬暂时没维护
所以使用了
https://hub.docker.com/r/fjcanyue/gitlab-ce-zh/tags?page=1&ordering=last_updated
这个版本
- 拉取镜像
docker pull fjcanyue/gitlab-ce-zh:latest
- 建立映射文件夹
config data logs
- 运行镜像
建议使用docker-compose
安装:
sudo pip install docker-compose
创建一个docker-compose.yml文件放在您合适的位置
version: '2'
services:
gitlab:
image: 'fjcanyue/gitlab-ce-zh:latest'
restart: always
hostname: '192.168.1.1'# 192.168.1.1请改为您的ip地址或者域名
environment:
container_name: gitlab
TZ: 'Asia/Shanghai'
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://192.168.1.1:9001/'# 192.168.1.1请改为您的ip地址或者域名
gitlab_rails['time_zone'] = 'Asia/Shanghai'
gitlab_rails['gitlab_shell_ssh_port'] = 2222
# 需要配置到 gitlab.rb 中的配置可以在这里配置,每个配置一行,注意缩进。
# 比如下面的电子邮件的配置:
# gitlab_rails['smtp_enable'] = true
# gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
# gitlab_rails['smtp_port'] = 465
# gitlab_rails['smtp_user_name'] = "xxxx@xx.com"
# gitlab_rails['smtp_password'] = "password"
# gitlab_rails['smtp_authentication'] = "login"
# gitlab_rails['smtp_enable_starttls_auto'] = true
# gitlab_rails['smtp_tls'] = true
# gitlab_rails['gitlab_email_from'] = 'xxxx@xx.com'
ports:
- '9001:9001'#就这个地方 请不要使用 81:80 80:80 xxxx:80 虽然可以访问但是无法使用http克隆
- '5443:443'
- '2222:22'
volumes:
- '/home/docker/gitlab/config:/etc/gitlab' #前面的是您自己的地址 后面是映射的地址
- '/home/docker/gitlab/logs:/var/log/gitlab'
- '/home/docker/gitlab/data:/var/opt/gitlab'
- 运行docker-compose.yml
使用默认名字的docker-compose.yml
docker-compose up -d
非默认名字比如mydocker.yml
docker-compose -f mydocker.yml up -d
运行结束 稍等一会 打开地址 看到 已经成功啦。