0
点赞
收藏
分享

微信扫一扫

docker部署gitlab

花明 2024-05-04 阅读 34
一、基础环境简述,麒麟v10系统,arm-kunpeng920
1、官网下载二进制包

https://download.docker.com/linux/static/stable/aarch64/

docker部署gitlab_docker

2、安装脚本

把docker安装包和脚本放到/opt目录下,执行脚本vim /opt/install_docker.sh

#!/bin/sh

# 设置变量

#要安装的docker版本

DOCKER_INSTALL_VERSION=26.0.0

#本地仓库的域名或者hosts指向的地址,避免无法访问仓库

REGISTRY_URL="pub.weihu.com"

# 卸载docker

yum remove -y docker \

docker-client \

docker-client-latest \

docker-common \

docker-latest \

docker-latest-logrotate \

docker-logrotate \

docker-engine

# 使用 二进制 方式安装 docker

systemctl start docker && systemctl status docker | grep "running" > /dev/null && DOCKER_VERSION=`docker info | grep "Server Version" | awk '{print $3}'`  

if [ "$DOCKER_VERSION" == "$DOCKER_INSTALL_VERSION" ] ; then

 echo "Docker has been installed , Version is $DOCKER_VERSION , Exit the script."

 exit 0

 else

 echo "Docker is not $DOCKER_INSTALL_VERSION , Now install version $DOCKER_INSTALL_VERSION."

 cd /opt

   tar zxvf docker-${DOCKER_INSTALL_VERSION}.tgz

   chown -R root.root docker/*

   \cp docker/* /usr/bin/

   rm -fr docker/ docker-${DOCKER_INSTALL_VERSION}.tgz

fi

# 配置系统级用于启动的文件

cat > /usr/lib/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

ExecStart=/usr/bin/dockerd

ExecReload=/bin/kill -s HUP $MAINPID

LimitNOFILE=infinity

LimitNPROC=infinity

TimeoutStartSec=0

Delegate=yes

KillMode=process

Restart=on-failure

StartLimitBurst=3

StartLimitInterval=60s


[Install]

WantedBy=multi-user.target

EOF

# 重新加载 daemon 用于启动 docker

systemctl daemon-reload

# 重新启动 docker 刷新出 /etc/docker 目录

systemctl restart docker

# 修改 docker 配置文件

#修改 docker 配置文件 /etc/docker/daemon.json --注意修改本地仓库地址,或者沿用这个地址的话,配置下hosts,使用网络dockerhup去掉insecure-registries这一行

cat > /etc/docker/daemon.json << EOF

{

  "insecure-registries": ["http://${REGISTRY_URL}:5000"],

  "max-concurrent-downloads": 10,

  "log-driver": "json-file",

  "log-level": "warn",

  "log-opts": {

    "max-size": "10m",

    "max-file": "3"

    },

  "data-root": "/data/docker",

  "exec-opts": ["native.cgroupdriver=cgroupfs"],

  "storage-driver": "overlay2",

  "storage-opts": [

    "overlay2.override_kernel_check=true"

  ]

}

EOF

# 重载配置文件启动docker,并设置为开机自启

systemctl daemon-reload

systemctl restart docker

systemctl enable docker

sh /opt/install_docker.sh 执行一键安装脚本

3、下载docker极狐镜像,国产系统使用官方镜像一直在重启,国产还是对国内本身支持好点

①、docker pull registry.gitlab.cn/omnibus/gitlab-jh:latest 下载基础镜像

②、docker tar  gitlab.tar 镜像id 打包镜像为tar包,将打好的tar包导入到现有容器

③、docker load -i gitlab.tar 导入

④、提前创建挂载目录mkdir -p /data/gitlab/{config,logs,data} 

⑤、启动容器

docker run --detach   --hostname 192.168.1.133   --publish 443:443 --publish 80:80 --publish 30022:22   --name gitlab   --restart always   --volume /data/gitlab/config:/etc/gitlab   --volume /data/gitlab/logs:/var/log/gitlab   --volume /data/gitlab/data:/var/opt/gitlab   --shm-size 256m   registry.gitlab.cn/omnibus/gitlab-jh:latest

启动完成即可输入ip+端口访问gitlab

补充内容,如需容器打成镜像docker commit gitlab gitlab:v1


举报

相关推荐

0 条评论