• 搭建原因

    两个月前我搭建了公司的docker(无法自定义端口,),当初只想着把托管在GitHub的项目代码放在公司的服务器上面,后来忙着修改人脸服务器代码,忘记了,这个月由于领导提的需求比较多,还是托管回来比较方便。

    所以重新进行搭建,由于百度上大部分文章写的有一些问题,在此进行记录。



    这是搭建成功的,并且http克隆的端口也正常,如下图

  1. 首先安装docker(阿里云自己有源,所以可以使用自带的源安装)

    但是还是建议使用清华大学的源

    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
  • 这样等待一会就安装完成
  1. 拉取gitlab镜像

    这部分可按照自己的喜欢拉取最新的版本,或者中文版本

    https://hub.docker.com/search?q=gitlab-ce-zh&type=image

    由于twang2218/gitlab-ce-zh大佬暂时没维护

    所以使用了

    这个版本
  • 拉取镜像

    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

运行结束 稍等一会 打开地址 看到 已经成功啦。

Ubuntu 18.04 使用docker 部署gitlab并且使用自定义端口号的更多相关文章

  1. [笔记] Ubuntu 18.04安装Docker CE及nvidia-docker2流程

    Docker的好处之一,就是在Container里面可以随意瞎搞,不用担心弄崩Host的环境. 而nvidia-docker2的好处是NVidia帮你配好了Host和Container之间的CUDA相 ...

  2. [笔记] Ubuntu 18.04安装Docker CE及NVIDIA Container Toolkit流程

    之前写的[笔记] Ubuntu 18.04安装Docker CE及nvidia-docker2流程已经out了,以这篇为准. Docker的好处之一,就是在Container里面可以随意瞎搞,不用担心 ...

  3. 基于Ubuntu 18.04.5 LTS 部署Ceph集群测试及Ceph RDB的使用。

    1.ceph简介 Ceph在一个统一的系统中独特地提供对象.块和文件存储 1.1 ceph官网架构图 1.2 架构解释   CEPH 对象存储 CEPH 块设备 CEPH 文件系统 RESTful 接 ...

  4. Ubuntu 18.04 安装Docker

    第一种方法从Ubuntu的仓库直接下载安装: 安装比较简单,这种安装的Docker不是最新版本,不过对于学习够用了,依次执行下面命令进行安装. $ sudo apt install docker.io ...

  5. Ubuntu 18.04开发环境部署流程

    部署流程 安装系统 安装Eclipse和jre 配置系统 安装辅助工具 安装系统 用安装盘安装即可. 一般boot 1G,swap按内存大小,home 20G,根剩余. 安装Eclipse和jre 解 ...

  6. Ubuntu 18.04安装docker 以及Nginx服务设置

    1.安装需要的包sudo apt install apt-transport-https ca-certificates software-properties-common curl 2.添加 GP ...

  7. Ubuntu 18.04 安装 docker, 设置阿里云加速

    1.卸载旧的 docker 环境 sudo apt-get remove docker docker-engine docker.io containerd runc 2.设置仓库 更新索引 sudo ...

  8. ubuntu 18.04安装docker以及docker内配置neo4j

    如题 切换到root用户下 apt install docker.io 等啊等,很快,就好了.. 如图 即可使用 如果出现Cannot connect to the Docker daemon at ...

  9. Ubuntu 18.04.1 LTS + kolla-ansible 部署 openstack Rocky all-in-one 环境

    1. kolla 项目介绍 简介 kolla 的使命是为 openstack 云平台提供生产级别的.开箱即用的自动化部署能力. kolla 要实现 openetack 部署分为两步,第一步是制作 do ...

随机推荐

  1. 课堂练习之疫情APP

    title: 课堂练习之疫情查询APP date: 2020-03-17 20:08:51 tags: 在之前的体温记录APP上改进,只写出疫情信息查询页面的代码. 实体类与上篇博客SSM整合中的Ci ...

  2. Android基础02

    初识安卓的另一个重要的组件---广播. 1.广播的分类 标准广播:是一种完全异步执行的广播,在广播发出之后,所有的广播 接收器几乎都会在同一时刻接收到这条广播消息,因此它们之间没有任何先后顺序可言.这 ...

  3. 静湖ABC段扫描器(长更)

    想学习python图形化的知识,从C段扫描器开始入手,很多的扫描器只能扫描C段,对于A,B段却没有设置这个功能,所以想将扫描A段和B段的功能跟C段一起做了. 暂时的想法是,先完成C段扫描器,扫描的同时 ...

  4. 20192313 实验一《Linux基础与Java开发环境》实验报告

    20192313 2020-10-8 <数据结构与面向对象程序设计>实验1报告 课程:<程序设计与数据结构> 班级: 1923 姓名: 陈宇帆 学号:20192313 实验教师 ...

  5. THE BUG 队第一次团队项目作业

    队名: THE BUG 队 2.队员学号: 杨梓琦 3118005115(队长) 温海源,3118005109 陈杰才,3118005089 李华,3118005097 钟明康,3118005123 ...

  6. 半夜删你代码队 Day1冲刺

    一.团队信息 1.团队项目:Midnight聊天室 2.团队名称:半夜删你代码队 3.队员信息: 职务 项目经理 主开发团队 测试人员 姓名 陈惠霖 周楚池 侯晓龙 余金龙 胡兆禧 林涛 二.Alph ...

  7. 【C++】C++ new和malloc到底哪里不一样

    作者:李春港 出处:https://www.cnblogs.com/lcgbk/p/14118782.html 目录 一.前言 二.new和malloc两者的区别 2.1 属性的区别 2.2 使用上的 ...

  8. redis学习之——在分布式数据库中CAP原理CAP+BASE

    分布式系统 分布式系统(distributed system) 由多台计算机和通信的软件组件通过计算机网络连接(本地网络或广域网)组成.分布式系统是建立在网络之上的软件系统.正是因为软件的特性,所以分 ...

  9. STL——容器(Set & multiset)的大小

    1. set.size();  //返回容器中元素的数目 2. set.empty();//判断容器是否为空 empty() 是由一下代码实现的,可以发现,当长度为0时返回 false,以此判断容器为 ...

  10. 【PY从0到1】第一节 安装与界面介绍

    本系列是介绍如何用Python进行股票量化交易的课程. 课程内容以记录Python零基础学员从最简单的Python下载及安装开始,到最后能熟练运用Python进行量化交易的专业人员的成长历程.旨在打造 ...