杂记 | 记录一次使用Docker安装gitlab-ce的过程(含配置交换内存)

这篇具有很好参考价值的文章主要介绍了杂记 | 记录一次使用Docker安装gitlab-ce的过程(含配置交换内存)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


01 准备工作

最近想自建一个gitlab服务来保存自己的项目,于是找到gitlab-ce的方式。
开工前先梳理一下状况:

  • 具备一台云服务器(我用的腾讯云)
  • CentOS7的系统,已安装好了docekr和docker-compose(如果没装先自行装一下)
  • 服务器内存为4G(这个内存有点吃紧,先凑合用)
  • 服务不直接对外暴露,而是使用nginx做反向代理(实际使用nginx proxy manager来做,主打一个:省心)
  • 有一个自己的域名,方便访问,没有的话用ip也能访问(推荐还是用域名,配合HTTPS更舒心)

我的云服务器配置如下,建议不要低于我的配置:
杂记 | 记录一次使用Docker安装gitlab-ce的过程(含配置交换内存),杂记,docker,gitlab

02 (可选)配置交换内存

由于我的服务器内存只有4G,而腾讯云的服务器居然没有给我分配交换内存,于是我决定自己配置交换内存,相当于虚拟内存。
如果已经有交换内存,也可以通过配置来叠加扩大。
以下是Linux命令

# 先查看内存状况
free -h

# 在根目录创建swap文件夹
mkdir /swap

# 进入到swap目录
cd /swap

# 创建一个4096M的交换内存(根据自己情况修改结尾的count属性)
dd if=/dev/zero of=swapfile bs=1MB count=4096

# 设置并建立交换文件
mkswap ./swapfile

# 赋予交换文件600权限(安全起见)
chmod 600 ./swapfile

# 启用交换分区
swapon ./swapfile

# 设置开机自动挂载
echo '/swap/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

# 重启服务器
reboot

# 查看交换内存是否设置成功
free -h

03 编辑docker-compose.yml

接下来,在root目录下新建一个gitlab文件夹,在其中创建docker-compose.yml文件并编辑内容。

version: '3'
services:
  gitlab:
    image: 'gitlab/gitlab-ce:latest'
    restart: always
    hostname: '10.0.12.13'  # 因为我打算用nginx反向代理,这里填的宿主机的内网ip
    environment:  # 配置外部访问链接,这里不建议使用https,否则启动和访问都可能变慢,https在nginx那里去配置
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'http://10.0.12.13'
    ports:
      - '83:80'
      # - '443:443'  # 因为docker中没使用https,这里注释了
      # - '22:22'  # 暂时用不到,也注释了,注意端口冲突的问题
    volumes:
      - './config:/etc/gitlab'
      - './logs:/var/log/gitlab'
      - './data:/var/opt/gitlab'

04 启动并修改配置

启动前先拉取镜像

# 在上一步创建的docker-compose.yml所在的目录执行
docker-compose pull

# 拉取完成后使用命令启动容器
docker-compose up -d

启动需要花一些时间,我花了5分钟,先暂时不要访问。

05 nginx反向代理

为了安全起见,我做了nginx反向代理,实际是用的nginx proxy manager来完成的,nginx也可自行配置。
杂记 | 记录一次使用Docker安装gitlab-ce的过程(含配置交换内存),杂记,docker,gitlab

如果是使用nginx.conf配置如下:
(没有真实试过,仅供参考)

http {
	...
    server {
        listen 443 ssl http2;  # 使用443 开启https
        server_name www.xxx.com;  # 改成访问的域名或ip
        location / {
            proxy_pass http://127.0.0.1:83;  # 内网ip或127.0.0.1加容器外部端口
        }
        # 配置证书
        ssl_certificate /etc/ssl/certificates/www.xxx.com.pem;
        ssl_certificate_key /etc/ssl/certificates/www.xxx.com.key;
    }
	...
}

06 (可选)修改配置文件

我的gitlab启动后,内存占用维持在90%+,可以考虑修改配置文件,牺牲一部分功能来保证运转。
实测内存占用从93%下降到了83%,还算给力。

# 找到外部卷上对应的配置文件
cd ~/gitlab  # 这个文件夹是我存放docker-compose.yml的文件夹

# 使用编辑器编辑配置文件
vim ./config/gitlab.rb

# 将下面两项置为false 因为是个人使用 用不到这些功能
prometheus['enable'] = false  # Prometheus 监控
mattermost['enable'] = false  # Mattermost 聊天

# tips 可能会用到的vim命令
/world  # 斜杠后跟要查找的词
n  # 跳转到下一个
N  # 跳转到上一个
yy  # 复制这一行
p  # 粘贴复制的内容
u  # 撤销一步操作
:noh  # 取消高亮显示
:wq  # 保存并退出

# 接下来进入容器内部
docker exec -it <gitlab容器名或id> /bin/bash

# 重载配置
gitlab-ctl reconfigure

# 退出容器
exit

07 访问并登录

然后就是输入刚才配置的域名或ip进行访问。
首次访问可以注册账号,也可使用root账户登录。

# 获取root用户初始密码:
docker exec -it <gitlab容器名或id> grep 'Password:' /etc/gitlab/initial_root_password

# 结果如下
Password: xxxxxxxxxxxxxxxxx

(页面下方可以设置成中文)
杂记 | 记录一次使用Docker安装gitlab-ce的过程(含配置交换内存),杂记,docker,gitlab


08 补充

以下内容更新时间2023.08.17

部署成功后,使用过程中,出现一些地方的请求链接不是域名,而是内网ip,造成请求失败。
更新docker-compose.yml后解决

version: '3'
services:
...
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'https://www.xxx.com'  # 这里改成了https+域名
    ports:
      - '83:443'  # 这里从80改成了443
...

此外,使用npm做反向代理时,代理的http也修改为了https。

(完)文章来源地址https://www.toymoban.com/news/detail-636977.html

到了这里,关于杂记 | 记录一次使用Docker安装gitlab-ce的过程(含配置交换内存)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用Docker部署Gitlab的记录

    使用 docker -v 查看 映射本机的9980端口为Docker内部的80端口 映射本机的9922端口为Docker内部的22端口 使用root用户启动 映射本机目录/mnt/sda/gitlab/log为Docker内部的/var/log/gitlab 映射本机目录/mnt/sda/gitlab/opt为Docker内部的/var/opt/gitlab 映射本机目录/mnt/sda/gitlab/etc为Docker内部的/etc/gitlab 使

    2024年02月09日
    浏览(29)
  • Linux CentOS8安装gitlab_ce步骤

    2024年02月07日
    浏览(33)
  • 记录使用gitlab实现Docker自动化部署

    目录 前言 一、gitlab-runner docker安装 二、gitlab-runner的注册与使用 1.注册 2. .gitlab-ci.yml 脚本编写 总结 前面搭建了gitlab与harbor ,现在就使用它们来实现自动化docker部署。所谓自动化部署,就是提交代码到指定分支时自动触发预先写好的脚本,来实现打包,推送镜像。想要实现这

    2023年04月11日
    浏览(35)
  • centos7更新yum安装docker-ce使用阿里源

    centos7更新yum安装docker-ce使用阿里源 centos7更新yum安装docker-ce使用阿里源240209版 Centos7的yum使用国内源阿里源163源等提高下载速度

    2024年02月20日
    浏览(43)
  • 记录一次gitlab错误合并分支的撤回操作

    因为不小心把团队其他人正在开发的分支合并到了自己需要发布的分支上,因此需要将合并分支撤回. 1、在原本地项目打开Git Bash 查询操作记录,获取需要回退的节点ID 2、在当前分支,打开终端,执行命令回退到节点6471289 git reset --hard 6471289 注:执行完以后,本地已经回退到

    2024年02月12日
    浏览(26)
  • 记录一次在centos 8 下docker 安装reids 一直报错无法启动问题

    目录 1.首先翻看了网上大部分启动失败原因总结如下  可以使用docker logs reids查看启动失败原因 1.1启动挂载目录失败  通常是没有创建目录 1.2启动闪退  通常为配置文件 daemonize yes 没有改成 no 导致 1.3启动之后直接报错 Fatal: Can\\\'t initialize Background Jobs 然后无限重启  请不要

    2024年01月20日
    浏览(33)
  • 记录一次云服务器使用docker搭建kafka的过程

    创建网络 一定要将zookeeper注册中心与kafka建在一个network中,不然在springboot 集成 kakfa的demo测试代码中进行消息发送时会超时,报错: E x c e p t i o n t h r o w n w h e n s e n d i n g a m e s s a g e w i t h k e y = ‘ n u l l ‘ Exception thrown when sending a message with key=‘null‘ E x ce pt i o n t h ro w

    2024年02月04日
    浏览(34)
  • Failed to download metadata for repo ‘mirrors.aliyun.com docker-ce linuxcentos docker-ce.rep‘解决记录

     之前设置了阿里云镜像地址后yum makecache一直报如下错: 最终解决参考这个博主的文章:  Centos8安装yum源时候出现的异常问题及解决方案(保好使)_centos8 yum重新安装-CSDN博客 文章浏览阅读467次,点赞19次,收藏15次。作者在使用centos8的时候,想安装tree命令,输入了如下的

    2024年02月03日
    浏览(44)
  • 记录一次Windows11安装并使用OpenSSL

    操作系统:Windows11 MinGW-64版本:gcc version 8.1.0 (x86_64-posix-sjlj-rev0, Built by MinGW-W64 project) OpenSSL版本:OpenSSL 3.2.0 23 Nov 2023 (Library: OpenSSL 3.2.0 23 Nov 2023) MinGC安装教程:https://zhuanlan.zhihu.com/p/76613134 OpenSSL安装教程:https://www.cnblogs.com/dingshaohua/p/12271280.html 新建一个aes_encrypt.c文件,源码

    2024年04月26日
    浏览(29)
  • 记录一次docker的搭建以及搭配可视化工具portainer.io的使用

    明镜止水 举重若轻 最近在自学一些中间件的搭建 例如rocketmq redis xxljob等,发现自己在linux频繁的使用yum命令下载包然后配置,觉得好麻烦。经过朋友推荐可以使用docker 通过镜像的方式直接引入。启动镜像配置端口就可以直接访问一系列的中间件插件,方便快捷。本次介绍在

    2024年02月10日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包