工作中企业会在内网搭建一个公司内部使用的git环境,一般用的是gitlab。

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。

下面介绍一下如何用docker方式部署自己的gitlab,作为私服使用。

安装ubuntu虚拟机和docker环境的步骤省略。

1.docker方式安装

docker pull gitlab/gitlab-ce

mkdir -p /mnt/gitlab/etc

mkdir -p /mnt/gitlab/log

mkdir -p /mnt/gitlab/data

docker run --name gitlab -d \

> -v /mnt/gitlab/etc/:/etc/gitlab \

> -v /mnt/gitlab/log:/var/log/gitlab \

> -v /mnt/gitlab/data:/var/opt/gitlab \

> gitlab-ce:11.8.10-ce.0

2.docker compose方式安装

version: '3'

services:

    web:

      image: 'gitlab/gitlab-ce'

      restart: always

      hostname: '192.168.5.129'

      environment:

        TZ: 'Asia/Shanghai'

        GITLAB_OMNIBUS_CONFIG: |

          external_url 'http://192.168.5.129:8009'

          gitlab_rails['gitlab_shell_ssh_port'] = 2222

          unicorn['port'] = 8888

          nginx['listen_port'] = 80

      ports:

        - '8009:80'

        - '8443:443'

        - '2222:22'

      volumes:

        - /usr/local/docker/gitlab/config:/etc/gitlab

        - /usr/local/docker/gitlab/data:/var/opt/gitlab

        - /usr/local/docker/gitlab/logs:/var/log/gitlab

启动:

docker-compose up

后台启动:

docker-compose up -d

3.部署秘钥

ssh-keygen -t rsa -C "indexman@126.com"

cat /c/Users/Dylan/.ssh/id_rsa.pub

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCgF4AxrRjo+mre2tAfTnuRDJ/+9BSgqdzqydPJ4fAT2foxuiBYlLF7TCNDvlKs1JP+6nb3LR4WdukHoaLYkomPCc2HkbqXe+IgKZwF5gBO+LbKVWGoJX33wJcpqiiYOfUCv7NQHSOHHwclfNZHmdVco+ySEhEQPlB+TY8lkaydSVut48MedTDefez0WPp2ovUmjz72rESGpqmq+NAQVceLwbttLQSCyl9iLREQRT0Nycso2OeiGUC4Z5ITfMv1wNqzdtGdPPSBvv6A3oFxFz/1yUN/CA+WD418T2gFzCPpKXXQiU0i5XwKA8VBzku1bHmJWCf7VDAKHLFWGpcp6Ngj indexman@126.com

4.新建第一个项目

git clone ssh://git@192.168.5.129:2222/luohanye/hello-gitlab.git

touch README.md

vim README.md

git commit -m "add README"

git add README.md

git commit -m "add README"

git push -u origin master

Git 全局设置

git config --global user.name "luohanye"

git config --global user.email "indexman@126.com"

拉取

git clone ssh://git@192.168.5.129:2222/luohanye/hello-gitlab.git

cd hello-gitlab

touch README.md

git add README.md

git commit -m "add README"

git push -u origin master

提交已存在的项目到git

cd existing_folder

git init

git remote add origin ssh://git@192.168.5.129:2222/luohanye/hello-gitlab.git

git add .

git commit -m "Initial commit"

git push -u origin master

docker方式部署并使用gitlab的更多相关文章

  1. Docker 方式部署 Solo 博客系统总结

      此篇为Docker部署方式,另有Tomcat部署方式,请参考文章<Tomcat 方式部署 Solo 博客系统总结>   最近搭建了一个博客系统,作为自己的主页,方便记录一些平时所见所闻 ...

  2. docker方式部署禅道

    一.概述 使用docker方式部署禅道简单,快速,不容易出错.比起编译安装要方便很多. 二.部署 环境说明 操作系统:centos 7.6 ip地址:10.212.82.65 docker版本:19. ...

  3. Docker 方式部署的应用的版本更新

    前言 公司使用 Docker-Compose 的方式部署 Jenkins/Gitlab/Sonar/Confluence/Apollo/Harbor/ELK/MySQL 等一系列开发工具/数据库. 而 ...

  4. docker方式部署elk日志搜索平台

    Docker部署ELKF操作文档 前提介绍 1.之前搭建elk+f+k使用原生系统软件安装方式,由于docker镜像日趋成熟,docker官网和elastic官网都有相关镜像和各自安装文档可供参考,各 ...

  5. 使用Docker方式部署Gitlab,Gitlab-Runner并使用Gitlab提供的CI/CD功能自动化构建SpringBoot项目

    1.Docker安装Gitlab,地址:https://www.cnblogs.com/sanduzxcvbnm/p/13814730.html 2.Docker安装Gitlab-runner,地址: ...

  6. docker方式部署的gitlab跨版本迁移升级

    之前代码服务器用的 beginor/gitlab-ce:11.3.0-ce.0 的版本,而当前时间已经到12.4.1了. gitlab 官方已经开始支持多语言, 而且也提供了 docker 镜像, b ...

  7. spring-boot dubbo项目使用docker方式部署

    项目结构 本项目采用maven构建,有三个模块,分别是pms-interfaces, pms-services, pms-portal. 模块 描述 pms-interfaces 接口层,只能存放实体 ...

  8. linux下使用docker方式部署ftp服务器

    linux环境下部署vsftpd比较繁琐,可以直接使用docker官方仓库中的pure-ftpd镜像来部署ftp服务器. 下载镜像 docker pull stilliard/pure-ftpd:ha ...

  9. ubuntu docker方式部署docker registry v2

    生成自己签名的证书 生成签名的过程需要根据提示输入一些参数,需要注意的时Common Name的时候需要输入一个自己需要的域名,如果时内部域名记得访问的时候需要修改hosts. mkdir /data ...

  10. 基于阿里云 ecs 使用 docker 方式部署 showDoc

    官网文档:https://www.showdoc.cc/help?page_id=65610 (建议先看下这个) 首先说明一下,我 ecs 镜像是 CentOS 7.6 64位 1. 首先在 服务器上 ...

随机推荐

  1. 如何让你的.NET WebAPI程序支持HTTP3?

    下面我将总结构建Http3的经验,以Token Gateway的项目为例,请注意使用Http3之前你需要知道它的限制, Windows Windows 11 版本 22000 或更高版本/Window ...

  2. [转帖]oceanbase 的简单介绍

    English | 中文版 OceanBase Database 是一个分布式关系型数据库.完全由蚂蚁集团自主研发. OceanBase 基于 Paxos 协议以及分布式架构,实现了高可用和线性扩展. ...

  3. 【转帖】读懂什么是RDMA

    一.什么是RDMA1.RDMA主要体现     2.如何理解RDMA和TCP技术的区别?3.使用RDMA的好处包括: 二.什么是RoCE?1. RDMA协议包含:Infiniband(IB)2. 为什 ...

  4. [转帖][github]Chinese-LLaMA-Alpaca Public

    `https://github.com/ymcui/Chinese-LLaMA-Alpaca#%E6%A8%A1%E5%9E%8B%E4%B8%8B%E8%BD%BD` 以ChatGPT.GPT-4等 ...

  5. [转帖]一口气看完45个寄存器,CPU核心技术大揭秘

    https://www.cnblogs.com/xuanyuan/p/13850548.html 序言 前段时间,我连续写了十来篇CPU底层系列技术故事文章,有不少读者私信我让我写一下CPU的寄存器. ...

  6. Linux部分参数的学习

    Linux部分参数的学习 简介 之前总结过很多Nginx或者是部署软件时的一些注意事项. 但是感觉对linux系统参数部分掌握的不是很好. 今天周末想着整理一下,作为备忘. limits.conf i ...

  7. CDP技术系列(三):百万级QPS的人群命中服务接口性能优化指南

    一.背景介绍 CDP系统提供了强大的标签和群体的构建能力,面对海量数据的标签和群体,我们采用了Bitmap+ClickHouse的存储与计算方案.详细内容可以参考之前文章. 有了群体之后,它们被广泛的 ...

  8. 【DP】DMOPC '21 Contest 8 P5 - Tree Building

    Problem Link 给定 \(n,m\) 和一个长为 \(m\) 的代价序列,对于一棵 \(n\) 个节点,每个节点度数不超过 \(m\) 的树,定义它的代价为 \(\sum\limits_{i ...

  9. vue中jsx

    //item.vue 文件如下 <template> <div> <h1 v-if="id===1"> <slot></slo ...

  10. 开源IM项目OpenIM每周迭代版本发布-群管理 阅后即焚等-v2.0.6

    新特性介绍 OpenIM每周五发布新版,包括新特性发布,bug修复,同时合并PR,解决issue等 一个完善的IM系统,非常复杂,功能繁多,需求不一,比如对象存储有云端oss,cos,s3,私有化存储 ...