gitlab jenkins +docker搭建镜像仓库

首先确保gitlab服务和jenkins的可用性

在jenkins主机上安装docker并导入相应的镜像

将仓库镜像以及nginx镜像导入

创建出来一个本地仓库

添加其相应的挂载点

docker run -d --name registry -v /opt/registry:/var/lib/registry -p 5000:5000 registr

更改/var/run/docker.sock权限将其他人可以对其进行操作

在gitlab的demo下创建Dockfile 和 index.html

Dockerfile的写法

FROM nginx:1.16 as base

# https://en.wikipedia.org/wiki/List_of_tz_database_time_zones

ARG TIME_ZONE

RUN mkdir -p /opt/var/cache/nginx && \

    cp -a --parents /usr/lib/nginx /opt && \

    cp -a --parents /usr/share/nginx /opt && \

    cp -a --parents /var/log/nginx /opt && \

    cp -aL --parents /var/run /opt && \

    cp -a --parents /etc/nginx /opt && \

    cp -a --parents /etc/passwd /opt && \

    cp -a --parents /etc/group /opt && \

    cp -a --parents /usr/sbin/nginx /opt && \

    cp -a --parents /usr/sbin/nginx-debug /opt && \

    cp -a --parents /lib/x86_64-linux-gnu/libpcre.so.* /opt && \

    cp -a --parents /lib/x86_64-linux-gnu/libz.so.* /opt && \

    cp -a --parents /lib/x86_64-linux-gnu/libc.so.* /opt && \

    cp -a --parents /lib/x86_64-linux-gnu/libdl.so.* /opt && \

    cp -a --parents /lib/x86_64-linux-gnu/libpthread.so.* /opt && \

    cp -a --parents /lib/x86_64-linux-gnu/libcrypt.so.* /opt && \

    cp -a --parents /usr/lib/x86_64-linux-gnu/libssl.so.* /opt && \

    cp -a --parents /usr/lib/x86_64-linux-gnu/libcrypto.so.* /opt && \

    cp /usr/share/zoneinfo/${TIME_ZONE:-ROC} /opt/etc/localtime

FROM gcr.io/distroless/base

COPY --from=base /opt /

COPY index.html /usr/share/nginx/html/index.html

EXPOSE 80 443

ENTRYPOINT ["nginx", "-g", "daemon off;"]

将jenkins主机中的jenkins用户添加到docker组里使其对docker有操作的权限

uesrmod -G docker jenkins

在浏览器的jenkins修改创建的gitlab

添加对于镜像的创建

添加如下

导入镜像

docker load -i distroless.tar

将gitlab的demo下的Dockcerfile和index.html推送

gitlab-ctl add Dokerfile
gitlab-ctl add index.tml
git commit -m "add dockerfile"
git push -u origin master

在浏览器上将gitlab推送

推送成功

在jenkins主机查看

还需要启动容器

在jenkins浏览器界面上

新创一个工程

配置如下

将jenkins添加到/etc/sudoers

推送在浏览器访问测试

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值