• 搭建原因

    两个月前我搭建了公司的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. PyQt(Python+Qt)学习随笔:快速理解Qt 中Action是什么

    一.引言 Qt中Action这个词接触很久了,一直以来没去学习,今天终于准备学习了,查了些资料,初步总结为: Action为界面操作的抽象,应用程序可以通过菜单,工具栏按钮以及键盘快捷键来调用通用的命 ...

  2. Fiddle过滤目标主机

    测试某管理系统,查看接口的调用: 点击Actions->Run Filterset now,即可过滤出设置的域名. 若使用通配符*,可将含域名的一级二级域名过滤出.

  3. Leetcode学习笔记(5)

    之前断了一段时间没做Leetcode,深感愧疚,重新续上 题目1 ID104 给定一个二叉树,找出其最大深度. 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数. 说明: 叶子节点是指没有子节点 ...

  4. uni与小程序,vue的区别

    标签区别 uni使用小程序的标签,vue使用web端的标签 标签名变化的: 标签描述\类别 vue uniapp 文本 span\font text 链接 a navigator/ router-li ...

  5. ES6新特性之箭头函数与function的区别

    写法不同 // function的写法 function fn(a, b){ return a+b; } // 箭头函数的写法 let foo = (a, b) =>{ return a + b ...

  6. js实现跳转的几种方式

    1. window.open("url"); 2.用自定义函数 <script> function openWin(tag,obj) { obj.target=&quo ...

  7. Oracle 迁移数据库到 mysql

    一. oracle导出.sql文件(Navicat Premiu  11.0.8  无法实现oracle到mysql的数据传输亲测有效) exp username/pass@数据局地址ip:1521/ ...

  8. 【Azure Developer】通过Azure提供的Azue Java JDK 查询虚拟机的CPU使用率和内存使用率

    问题描述 在Azure上创建虚拟机(VM)后,在门户上可以查看监控指标(Metrics),如CPU Usage,Memory,Disk I/O等.那如何通过Java 代码获取到这些指标呢? 关于VM ...

  9. 快速上手微信小程序webSocket

    WebSocket是一种在单个TCP连接上进行全双工通信的协议.WebSocket通信协议于2011年被IETF定为标准RFC 6455,并由RFC7936补充规范.WebSocket API也被W3 ...

  10. STL——容器(List)List 的数据元素插入和删除操作

    push_back(elem); //在容器尾部加入一个元素 1 #include <iostream> 2 #include <list> 3 4 using namespa ...