1.linux装好容器环境。

CentOS:yum -y install docker Ubuntu:apt install docker.io

记得创建下软连接:加速地址去阿里云登录进行配置。

cd /usr/libexec/docker/
ln -s docker-runc-current docker-runc 

2.使用容器界面管理工具portainer,注意主机端口是否已被使用,已经挂载目录是否创建。

docker run -d -p 8000:8000 -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v /data/docker/portainer:/data portainer/portainer

3.访问部署portainer。http://ip:9000,首次登录需要设置密码,选择local。然后选择App Template,选择Registry。

看我的配置图:

部署成功之后,访问http://ip:5000/v2/_catalog,因为你还没push,所以啥都没有。

接下来,可以去你装好docker环境的linux里面去官方随便拉一个镜像,或者你本地已经有镜像都可以。我这里以nginx为例

docker pull nginx:latest

docker tag nginx:latest ip:5000/nginx:v1

push之前需要配置/etc/docker/daemon.json

加上 "insecure-registries": ["192.168.168.225:5000"] 属性。

然后刷新重启docker:systemctl daemon-reload & systemctl restart docker

docker push ip:5000/nginx:v1

再尝试访问http://ip:5000/v2/_catalog

能看到东西,说明成功了。

接着尝试删除本地nginx镜像:docker rmi nginx:latest

然后再拉取本地私服镜像:docker pull ip:5000/nginx:v1

好了,介绍这么多我也不想多说了。直接来说下cicd配置文件吧。

其实玩过dockerfile的童鞋都知道怎么弄,我就直接说关键点了。或者你看看这篇文章

image: 192.168.168.225:5000/maven:3.6.1-jdk-8
variables:
  MAVEN_OPTS: "-Dmaven.repo.local=.m2/repository -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=WARN -Dorg.slf4j.simpleLogger.showDateTime=true -Djava.awt.headless=true"
  MAVEN_CLI_OPTS: "--batch-mode --errors --fail-at-end --show-version -DinstallAtEnd=true"
cache:
  paths:
    - .m2/repository
stages:
  - compile
compile:
  stage: compile
  script:
    - pwd
    - ls
    - mvn -f ./ $MAVEN_CLI_OPTS compile
  tags:
    - runner
  only:
    - master

 

 

 

Logo

更多推荐