docker+docker-compose+gitlab

Docker 安装

下载

下载docker二级制文件docker-20.10.9.tgz

https://download.docker.com/linux/static/stable/x86_64/docker-20.10.9.tgz

上传到/data目录

解压文件

cd /data

tar -zxf docker-20.10.9.tgz

移动解压出来的文件到/usr/bin目录

mv docker/* /usr/bin/

创建docker服务

cat > /etc/systemd/system/docker.service <<EOF

Unit

Description=Docker Application Container Engine

Documentation=https://docs.docker.com

After=network-online.target firewalld.service

Wants=network-online.target

Service

Type=notify

the default is not to use systemd for cgroups because the delegate issues still

exists and systemd currently does not support the cgroup feature set required

for containers run by docker

ExecStart=/usr/bin/dockerd --graph /data/docker -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

ExecReload=/bin/kill -s HUP $MAINPID

Having non-zero Limit*s causes performance problems due to accounting overhead

in the kernel. We recommend using cgroups to do container-local accounting.

LimitNOFILE=infinity

LimitNPROC=infinity

LimitCORE=infinity

Uncomment TasksMax if your systemd version supports it.

Only systemd 226 and above support this version.

#TasksMax=infinity

TimeoutStartSec=0

set delegate yes so that systemd does not reset the cgroups of docker containers

Delegate=yes

kill only the docker process, not all processes in the cgroup

KillMode=process

restart the docker process if it exits prematurely

Restart=on-failure

StartLimitBurst=3

StartLimitInterval=60s

Install

WantedBy=multi-user.target

EOF

设置执行权限 并启动docker服务

chmod +x /etc/systemd/system/docker.service

启动服务,并设置开机启动

systemctl daemon-reload && systemctl start docker && systemctl enable docker.service

验证服务器启动

systemctl status docker

安装docker-compose

上传docker-compose-linux-x86_64

配置执行权限

chmod +x docker-compose-linux-x86_64

重命名为docker-compose并移动到/usr/local/bin/目录

mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose

验证

docker-compose -v

部署Gitlab

上传镜像

进入镜像目录,加载docker镜像

cd /data/gitlab/docker-compose/

docker load -I gitlab16.2.0.tar

修改配置文件

使用docker-compose通过yml配置文件启动容器

gitlab.yml文件内容

version: '3.8'

services:

web:

image: 'gitlab/gitlab-ce:16.2.0-ce.0' # 使用GitLab社区版镜像,也可使用gitlab/gitlab-ee:latest(企业版)

restart: always

user: 'root' # 设置容器中运行的用户为root用户

#hostname: 'gitlab' # 替换成你的GitLab主机名

container_name: 'gitlab'

environment:

GITLAB_OMNIBUS_CONFIG: |

external_url 'http://192.168.200.160' # 替换成你的GitLab访问URL

ports:

  • '80:80'

  • '443:443'

  • '2222:22' # 用于SSH访问

volumes:

  • '/data/gitlab/gitlab_home/config:/etc/gitlab'

  • '/data/gitlab/gitlab_home/logs:/var/log/gitlab'

  • '/data/gitlab/gitlab_home/data:/var/opt/gitlab'

privileged: true

启动容器

docker-compose -f gitlab.yml up -d

获取初始密码登录

等待Web界面启动

获取初始化密码

cat /data/gitlab/gitlab_home/config/initial_root_password

登录后的页面

相关推荐
hstar95274 分钟前
三十五、面向对象底层逻辑-Spring MVC中AbstractXlsxStreamingView的设计
java·后端·spring·设计模式·架构·mvc
pengyu30 分钟前
【Java设计原则与模式之系统化精讲:壹】 | 编程世界的道与术(实战指导篇)
java·后端·设计模式
日月星辰Ace33 分钟前
JVM 垃圾回收简介
java
掉头发的王富贵36 分钟前
Arthas神器入门:动态调试Java应用,轻松搞定生产环境Bug!
java·后端·debug
Java陈序员41 分钟前
再见 Navicat!一款开源的 Web 数据库管理工具!
java·react.js·docker
知其然亦知其所以然1 小时前
RAG 结果太水?用 RRF + Reranker 重排,效果翻倍提升!
java·后端·llm
SimonKing1 小时前
吊打面试官系列:Spring为什么不推荐使用字段依赖注入?
java·后端·架构
魔镜魔镜_谁是世界上最漂亮的小仙女1 小时前
java-集合
java·后端·程序员
真实的菜1 小时前
消息队列高级特性与原理:解锁分布式系统的底层逻辑
java
若水不如远方1 小时前
java范型
java